Have the skills, but lost and all alone.

Discussion in 'Automated Trading' started by JMowery1987, Aug 19, 2005.

  1. 65Matt

    65Matt

    I'll put in my two cents. I started programming with IB with their excel sheet. It works great and costs almost nothing, but you cant backtest strategies and IB's reliability has been crapping out lately.

    It seems like the most logical place to start is Tradestation. They give you the historical data, speedy backtesting, and it's easy to write strategies. If you dont like the speed and reliabilitiy of TS, you could take the script and use it somewhere else. For example, Tradebullet can do this.
     
    #31     Aug 21, 2005
  2. If you have strategies programmed in esignal or one of the other popular programs, you can test those strategies by sending your orders to the broker simulator in Ninjatrader or tradebolt.

    If you're then happy with the results you can switch to the real trading relatively easy. You don't even need to be a programmer to do this.

    Read the documentation at the relevant sites and also read the user guides. It's all pretty self explanatory.
     
    #32     Aug 21, 2005
  3. Not sure why you keep saying MBT doesnt have level 2 quotes, of course they do, look up LEVEL2RECORD in the help file. You dont need experience in network programming to develop an ATS, if you have experience programming DIRECTX then I suspect you are fine. I saw elsewhere you were asking about text files to submit orders, that sounds like an ugly hack and no you dont have to do that. The MBT programming samples show you how its done, not sure why you cant just read those sample programming and understand how they work but as an example I wrote an ATS for futures trading using MBT's API that:

    (1) Receives quotes from MBT
    (2) Performs analysis
    (3) Submits orders and handles the results of the orders

    This is all in C++ using Visual Studio (2003?). If you've never dealt with a asychronous programming them the model may take some getting used to, e.g. you dont call a funciton to buy xyz and when the function returns you now own xyz. Instead a message is sent to your program when the trade completes. That means you have to keep track of a lot of things and deal with the unexpected.

    My app doesnt have much of an interface, just a few dialogs that I threw together to show me the current trade state and quotes. Most of the meat is logged to a text window which is also saved to a file. If you want to develop a fancy app that looks slick you are going to spending a lot of time that would be be better spent working on developing a profitable edge IMHO.

    Another alternative to the straight MBT API is TradeMagic which is a broker-independent interface to developing a trading app. I've had only limited experience with that.

    So to answer your question, the only thing you really need is something like a broker interface (MBT's API for example). This will give your application streaming quotes and the ability to place orders. If you want to have graphs then you either need to code that yourself or use another application to provide graphs.

    To backtest strategies you can either use something off the shelf or just roll your own. Once you have quote data in files (which you will need to get from somewhere, either a historical quote service or someone like eSignal) its not that big a deal to just code up a simulator and have it - its definitely more work than using someone elses backtesting code but you have the advantage of having complete control over it.

    I saw you mentioned AI in a previous post - be careful, it sounds sexy and would seem to be logical but just consider that if it were easy to make money that way every AI researcher in the country would be wealthy. Neural nets are popular now but for most folks I think they are a big waste of time, I know I wasted time dinking with them.

    Hope that answers some of your questions
     
    #33     Aug 21, 2005
  4. I like that idea.

    Question is... can I do all this for free?

    I downloaded IB's trader sim, and it seems fully functional and with the API as well. Does MBT offer the same kind of demo service and allow me to do this without signing up?
    EDIT: Just saw the link for the demo application, but can I develop for it as well?

    My experience with programming is almost exclusive to DirectX, no networking, no working with windows, just game design actually. So I know I'm going to have a lot of learning to do, and I'm okay with that, just wanted to know what my options were right now to get me on the right track.

    Thanks for the help, I'm still open to all suggestions, it really has been great help.
     
    #34     Aug 21, 2005
  5. MBT offers a demo account, I dont know if you can sign up for one without a paid account. I've been editing my above post that you quoted too (sorry about that) if you dont care about having a fancy interface you can write a straight text (console window) app that can still do everything you want and then you dont have to bother learning Windows GUI programming. If later you want to throw some dialogs up to show status its easy to do.

    (edit) http://www.mbtrading.com/demo.asp It does not appear to me that you need to have an real account to get a demo account. You can do everything with the demo account that you can with the real one so that should be sufficient for you to get your feet wet without paying any $$$$
     
    #35     Aug 21, 2005
  6. Thanks for the help. I just saw that too, downloading it right now.

    I shall see what I can find out and just jump into the pool without the lifeguard
    =P

    Thanks for the help everyone... still open for ideas, but, I got a lot of great help already.

    Thanks for everything!
     
    #36     Aug 21, 2005
  7. System designing is an art form. If it were an exact, ever reproducible science, you would not see this disclaimer with every system's ad: "Past performance does not guarantee future results." While you might have computer and mathematical skills, there is a key ingredient in becoming a successful professional systems designer which surpasses these two skills. That key ingredient is intuition. When a systems designer starts designing a system, he has absolutely no proof of whether or not he is going in the direction of a positive outcome. He may believe he is, but, in fact, no one really knows if a system is going to be a good system until it has been exhaustively tested. So, while it is absolutely necessary to have the mathematical, logical, left-brain skills to design a system, it is also imperative that you have the vision, the creativity and the intuitive, spontaneous knowing of a right brain thinker to point yourself in the right direction.

    With this much talent required to produce a working system, it is not difficult to understand how easily a trader can create a poorly functioning system which can create significant risk in a trader's business. At a certain point that risk can exceed the parameters of a trader's advantage so that the trader is gambling by using his system.

    The best system can still be overly risky to use if the trader does not consistently follow it. Even the most profitable systems will produce a level of acceptable losses when followed to the letter. These losses, however, will reach unacceptable levels when the system is not followed exactly.

    Following a system is like baking. As an avid cook who is noted for her creative dishes, I am still unable to bake a cake that is light, delicate and edible. The reason is that I am too creative to just follow the recipe. I want to add a touch of this and a touch of that and use all of my creativity in baking the same way that I do in the rest of my cooking. Unfortunately, the smallest deviation from a baking recipe will often bring the entire project to ruin. A significant proportion of traders are gambling with the outcome of their trades in the same way.

    http://www.appliederivatives.com/co...7&IssueID=D6985E74-DF8A-11D4-B99A00D0B73E4707
     
    #37     Aug 21, 2005
  8. That is good information.

    I guess my past with game design really shows that I want to be creative. So I have a lot of learning to do.

    I'm not looking to gamble, I'm looking to do this full time. I will continue regular trading, but while I'm not busy with that, I want to keep learning more about automated trading. Maybe not useful for me now, but 5 years from now... who knows?

    It makes you wonder if it will be possible for regular users to even trade in the stock markets 25 years from now when technology is so advanced and their are thousands upon thousands of automated trading systems. Maybe that is true now, and it will be even more complex.

    I just want to be ready for that.

    Just trying to be ready for as much as I can.
     
    #38     Aug 21, 2005
  9. http://www.appliederivatives.com/co...7&IssueID=3BBA0D34-E4F9-11D4-B99B00D0B73E4707
     
    #39     Aug 21, 2005
  10. A number of people have suggested Tradestation. That would be my suggestion also.
    I think a number of the gripes about TS have been regarding data delays. I trade futures through TS and have never witnessed a significant data delay. However, I swing trade, I do not trade mutliple times intraday.
    From a beginning point, TS will allow you to write, backtest, and execute all within the same platform. A pretty simple intro into the world of automated trading and strategy development. Decent commissions also.
    As far as people saying there are limitations to TS language, there are....but develop a strategy first and worry about the work-arounds later. Chances are 1 out of every 10 SUCCESSFUL strats has some work-around issues with TS language...good odds for a comprehensive platform. Add to the fact that you have programming background, you'll shouldn't have much difficulty with the language.
    Good luck in your journey!
     
    #40     Aug 22, 2005