So no matter how complex the objective is (not only in trading), both languages can be used to get to the goal... There isn´t something that one can do with one that cannot be done with the other... Maybe one needs more extensive coding or some other differences.. but in the end, if someone knows well enough the chosen language, the final results would depend much more of the capabilities of the programmer than what language is being used. Right?
JAVA is better in terms of portability. In C++, you have to take care of garbage collections manually while JAVA will automatically do the garbage collections. You have to deal with a few low level stuff, like arrays, pointers, memory allocations, etc. C# (NinjaTrader) syntax is closer to JAVA than C++. I have heard that JAVA is slower compared to C++. Unless you are a HFT, you don't really have to care if you are mili/micro seconds slower executing a trade.
Not really....it's all about the reliability of the API or trading platform upon which you have built your systems and strategies. Now if you are foolish enough to develop an entire trading platform from scratch, then you've got to be an uber programmer.....and a little nuts as well.
Without taking anything else in account, that's right. Unless you are doing High Frequency Trading, then maybe C++ is at an advantage.
Learning to think using the same logic structure machines use will strengthen your edge. There's also a considerable advantage that can be gained via understanding the abstractions machines use to store and classify data. But imo traders interested in research and development should avoid c, c++, c# and java because of their complexity. The abstractions they require exceed what's helpful to a trader interested in developing strategies. If all you're interested in is speed and you're not doing any development then the cost of thinking in assembly language doesn't matter. Many of those telling you the advantages and disadvantages of various languages are professional programmers. That's their primary focus. Trading is their secondary focus. Trading is my primary and only focus. I use TS's Easy Language. I know quite a bit about programming and imo the only reason anyone should consider the languages you mentioned would be the non-traders looking for a career in programming. In that case you will need to learn nearly everything about every language.
HFT isn't the only reason to use C++. (In fact HFT doesn't gain its speed from fast processing but by having a strategic location within the network between traders and market servers.) For trading systems that involve traditional indicators then Easy Language is fine. But if you have a system using machine learning such as neural networks or regression models that evaluates on every bar, then you need horsepower. Compiled languages like C++ have a speed advantage over interpreted languages such as Java and Python.
Java is a little slower than C++ but ~10x faster than Python in typical benchmarks. A nice overview -- http://forums.xkcd.com/viewtopic.php?f=11&t=108685
I'm trying make my mind looking info to compare features between IB API between C# and C++, regarding aspects important to me, such as: stability, velocity, time implementation of strategies...etc I must say that I'm not an advanced programmer but with good experience in C#. I'd appreciate highly any suggestion or comment