You're probably right. It works well with IB. If they could figure out how to implement intrabar order generation into their portfolio trader, it would be golden.
To connect to IB and do the simple calculations as OP suggests Java should be enough. No need to learn the complex data structures of python.
You implied using Java is somewhat simpler and I'd say it's definitely not after looking at examples.
The Java platform is now huge and monolithic. It's very similar to C#/DotNet. It could take years for you to get a handle on all of the packages and classes. With a platform like Multicharts, their scripting language allows you to focus on your strategies and signals....and not the innards of the actual trade placement or real-time data acquisition.
MC is probably a good choice but for me it has 2 problems. It's not a free open source platform, that means when you need to do something MC can't accommodate, you're out of luck. Secondly, MC talks to their servers a lot and call me paranoid but I don't like them possibly peeking at what I do. If you don't care about those 2 things then sure, MC is great.
Depends who you are. If you are new and clueless, using a platform is good I think. When you've got experience, you may want to expand into Do It Yourself more and more, since all platforms have a structure that may not agree with your perspectives and processes for the markets. So no matter who you are, it'll take a long time because there's a process of learning and if you skip ABC, you're missing out of something essential. It's more complex than that though, since everybody disagrees what those ABCs are.. Discretionary trading can be learnt quicker, but is more taxing on psychology, hard to grasp, easy to deceive oneself and not for everyone. Also, the less you depend on an external vendor, the more you can deal with risks and stuff yourself instead of relying on functionality to be given to you by someone else. This gets important now that we have snooping and unreliable support by big vendors.
MC has a DLL interface, so that allows it to be expanded in terms of functionality. Granted, the interface requires C++ or Power Basic or other native compiler skills.
Since money is not an issue, but aftersales is - I would hire someone to develop something in Python for me, and learn Python at the same time. Python is simple and clear enough that with a bit of effort, one can easily understand what's going on if not develop from scratch. Then if you need new functionality / changes you can either do it yourself or hire someone else and be able to check what they're doing closely. Re IBPy being a third party tool - it's definitely a concern, but there seems to be a wide user base happy with it.