Happy New Year everyone! Thank you all so much for the wonderful inputs while I was away.
Cosine, you are awesome! Thanks for the really helpful technical details.
A couple of questions (for everyone): how do you deal with the "hard real-time" computing issues in your trading algo, in that you need the intercommunication and computing all be done within short time frame so that you can respond to the market in a timely manner. Of course this is only important if one's strategy is very high frequency or the market very volatile. Also if you can't really predict the possibility of fill and have to change your orders on the fly. ('Hard real-time' as in aviation as opposed to the 'soft real-time' as in video games)
Second, I can see that writing algo to track positions and risk management can get pretty complicated---if you were to estimate, how many man-hours (how long would it take a decent C++ programmer )to programm that part, asuuming a strategy not complicated? ( I am very familiar with scientific programming but have never doen this kind of keeping track of positions kind of programming).
Also, brokerage houses often offer order management and risk management software for free, would it be feasible to integrate that with an automated trading algo?
Another question:
Is Java just as good, or better language, for trading algo, since I am starting fresh without any legacy concerns? Do you run into memory leak problems with C++, does Java have an advantage in handling real time issues? (My experience is more in Fortran, both C++ and Java are new beginnings for me)
The DMA brokerage seems mostly support C++ and Java, and everybody seems only use Unix or Linex, so I am not sure there is any reason to consider .Net or Python.
Thanks a lot, every body!