Let rate the following API

Discussion in 'Automated Trading' started by ProgrammerGuy, Apr 22, 2008.

  1. RedRat

    RedRat

    1) IB TWS 7
    It has good community, for example above posted TWSAPI group. It works great for me.

    But there can be bugs when switching into new versions and using new functionality. For example I had serious bugs with new "real time 5 sec bar" feature. I had major bugs with "volatility orders" - they forget to initialize all members in constructor.

    Still I give it 7. It has a good data feed, paper trading account, demo account which helps a lot!


    2) Genesis Laser GTAPI, about 5.
    It has bugs. My sell market orders were not executed, at least with paper trading account. I had to simulate them with sell limit orders.

    I read on ET board that there are bugs with stop orders, did not test myself.

    I think that shows a level of API if I experience bugs with simple functionality who knows about other hidden bugs?

    There is no public paper trading account, no demo account.

    You do not have terminal - it has pro/contras. For example you can not see your open positions to manually manage them.

    BTW the API on their web site is tremendously outdated. You have to contact Genesis to ask for 2005 year API.

    There is no community - AFAIK.


    3) StrategyRunner API 6.
    It was a good API but AFAIK it is not available for public usage. They require a source code to allow you to run strategy on their servers.

    I did not program it for 2 years. It contains high level indicators/oscillators with source code which can help you. They charge you extra commissions for each trade :(.


    4) OpenQuant 7 or may be even 8.
    It is high level wrapper for majority of brokerages APIs.
    What I dislike. You have to run it manually each day. You have to pay monthly fee.
    What I like. It is C# based. It contains majority of indicators/oscillators with source code. It has community.

    I think NinjaTrader is almost the same in functionality but I do not have much experience with Ninja.


    5) FIX API, may be 8.
    It is standard. You have free library quickfix. But it is very complex and there is a lack of support. Right now I am using it.
     
    #11     Apr 23, 2008
  2. QuickFIX - 10.

    I'm too lazy to learn each individual Broker APIs.
     
    #12     Apr 24, 2008

  3. Here is something that I have always wondered... can you do everything with QuickFIX than you can do with the brokers API? For example, many of the brokers have a wide variety of order types. Does QuickFix support ALL order types, or do you have some limitations on what you are able to do?
     
    #13     Apr 24, 2008
  4. Yes, you can send any kind of order types you want using FIX. It's more on the broker side supporting them (like Algo. orders). If a broker has an API, that means they support that type of order type, you want.

    I personally use multiple brokers under one execution engine. Needless to say, I use C#, so FIX is a necessity. Another benefit is, you can program using your favorite prog. language. You are not limited with the type of prog. lang. the broker API supports. Even if you use minor prog. lang. like Python or Ruby, you can get an C++ (.NET) wrapper to use QuickFIX to get your job done.
     
    #14     Apr 24, 2008
  5. FIX is terrible.....it is too abstract....never really written SPECIFICALLY for trading.
    Remember, it means Financial Information Exchange....which only remotely applies to trading.
    Complex AND no support ? Wow, you are asking for major trouble and pain !
     
    #15     Apr 24, 2008
  6. Nothing is perfect, but at least you don't have to support a dozen different OMS APIs in your ATS. Not mentioning that some API's are simple FIX adapters (either on client or on the brokers side). So why should you go through an additional source of bugs?

    BTW, personally, I didn't find quickfix so terrible. It has nice layer of abstraction, and message handling is piece of cake.
    I'd strongly recommend to spend your time and effort just once to make a solid connectivity option to pretty much any broker.
     
    #16     Apr 24, 2008
  7. I don't understand how "NewOrderSingle" is not SPECIFICALLY for trading...

    Seems like you are complaining due to lack of programming skills... Give me one example a FIX msg cannot support SPECIFICALLY for trading.
     
    #17     Apr 24, 2008
  8. jhucti

    jhucti

    Which brokers support QuickFix? Which one do you recommend?
     
    #18     Apr 24, 2008
  9. jhucti

    jhucti

    BTW, is redsky still available?
     
    #19     Apr 24, 2008
  10. The question is not quite correct. Quickfix is very flexible when it comes to composing messages, so it can be tailored to any broker.
    What you should be looking at is what FIX version your broker supports. Almost everybody on the street is still on FIX 4.2
     
    #20     Apr 24, 2008