Full setup automated trading system

Discussion in 'Automated Trading' started by joedole, Jun 29, 2014.

  1. joedole


    Hello guys,

    I want to have your opinion on some questions about setup and market-data/access.

    I am looking for a reasonably priced hosted trading solution with low latency data feed and superior market access where I could run and execute my automated trading strategies.

    For the server side:
    Some dedicated server solution close to Chicago and/or New York. Not colocated inside the exchange but nearby should suffice. I would like very good support and uptime stats, reliable and fast data connections to the exchanges.

    For the trading strategies programming part, which software do you recommend? Ninja trader? From what I understand you can program in it in C#, are you aware of any solution that runs on Python?

    For the data feed: I would like to receive real time quotes for futures (E-mini, commodity futures) but also options on indices and futures (options on E-mini, options on SPX, options on VIX, commodities) so basically CBOE and CME market data. I want reliable, low latency data feed with the capacity to monitor real time quotes for several futures and potentially a few hundreds of options. Data feed should be accessible through an API, ideally on an open platform. Accuracy, latency and consistency are important criteria for the data feed. I heard good things about Nx Core.

    For the market access, low commission fast execution broker. From what I understand IB is probably the best choice. Does any one know how long it takes them, once you send an order on futures through their API, to handle the order and route it to the exchange? How long does it take for you to receive confirmations or trades feeds from their API? What about Lime Brokerage and Lightspeed trading? Do you know if they work with individuals and their minimum account size?

    I am looking for lowest latency and highest reliability possible, but I am not chasing the millisecond and am taking also costs in consideration. Feed delays of less than 50ms (on options and futures) seems reasonable. 50ms or under seems reasonable also to receive confirmation from sent orders or trade executions.

    As per size of the account, we're looking at 100-200k to start with. In terms of monthly cost for the setup, I don't have a clear picture of what's out there. Let me know what you think and feel are the best providers for this. Feel free to list different options based on account size, monthly cost etc. Also, integrated solutions are a plus (for example a trading server provider that has already set-up data feed and IB access)

    Thanks a lot in advance for your valuable insight.

  2. IB has a RESTful API, it's pretty easy to implement a Python script to talk to it.
  3. vicirek


    Since when they offer REST? IB API is not based on HTTP calls unless they introduced something new in addition to their socket based API
  4. You are right, I thought they had one. My mistake.
  5. xandman


    REST can do low latency?

    I think this guy needs a FIX solution.
  6. Rest can't do low latency, but neither can Python...

    For low latency, he would need to look at a faster, compiled language like java, C/C++, Fortran... a FIX port with Python inside, would be a pretty slow FIX port...
    if C++ is an option, then Rithmic's C++ API would be a good idea...
  7. joedole


    well, I am looking at 50ms latency, so not extremely low latency either, I don't think Python would be an issue for that.
    are there any good tutorial out there about setting up the IB Fix API?
    Any knowledge of a good options market data feed vendor ?(that would charge ideally depending on the number of underlyings I subscribe to, I will probably limit myself to a few major indices). what kind of delay can you expect for 'real time' data?

  8. In that kind of time window Pyrhon will work well few instruments at a time.
    Python can choke pretty quickly as the number of data points grows exponentially from the additional instruments.

    For FIX what you need is the protocol specification from your provider, and a FIX handler (fix8 is a good open source handler written in C++, you just need your program to interface with it, and the right configuration)
  9. the number of data points on average grows linearly not exponentially...

    #10     Jul 7, 2014