OpenQuant vs Amibroker (转贴)

Discussion in 'OpenQuant' started by jiandte, Apr 29, 2008.

  1. 转贴自 http://www.elitetrader.com/vb/showth...hreadid=125961


    vdareminator Registered: May 2007 Posts: 3 04-29-08 11:05 AM


    --------------------------------------------------------------------------------
    Quote from mangudai:

    I just read on the Amibroker website that they have an automated trading interface. Is there any reason your not using that(Amibroker) instead of OpenQuant? --------------------------------------------------------------------------------


    I do still use the AmiBroker auto trader interface for a weekly strategy, where I generate trade signals and submit orders for 10 symbols once per week. It saves me from typing 30 orders (10 entry + 20 bracket order prices).

    However, while I ran a 1-minute live system with AmiBroker for about a month last summer, I had to terminate it as I couldn't build a robust stateful (code that remembers what it did, what is next, etc) auto-trading system with the AmiBroker interface.
    Here were my issues:
    - The AmiBroker auto trader interface works in fire-and-forget mode. You don't receive events when an order executes, is rejected/cancelled, connection is dropped, etc. You need to periodically poll the interface for status.

    - You set your AmiBroker code to execute every n seconds. It runs from scratch each time it executes -- you need to rely on static variables to keep your state (entry price, target price, etc).

    - When I set the code to execute more than once every 15 seconds, the results from polling occasionally returned false information (it would return "null" for order status when an order was in fact still working).

    - When I wanted to trade more than one instrument (say both GBP and EUR futures), polling order info on both of them consecutively would always return erronous information on the second one polled.

    At the end I couldn't make even a single strategy-single instrument work reliably enough with the AmiBroker auto trader interface. Multiple strategies, multiple instruments, in 1-minute bars (which can't be considered fast for autotrading) was just not gonna happen.

    OpenQuant runs in an event driven way: a bar / quote / trade is received, which triggers my event handlers. An order is filled / partially filled / rejected / etc, which again triggers the event handlers. The logic becomes very simple to implement and a robust end-to-end system can be built.




    04-29-08 07:29 AM

    I find OpenQuant to be an excellent Automated Trading System (ATS) development and execution platform. Very clean, comprehensive, and well thought out class and event architecture. The online help file is somewhat weak; however there is a good Getting Started guide and lots of sample code to get you going. Reasonable support forum assistance.

    However, OpenQuant does not lend itself well to rapid interactive exploration and experimentation. For that I use Amibroker. I use Amibroker as my discovery tool, kind of like Excel, to test tens of ideas, and to run thousands of backtests (AmiBroker backtest is roughly 150 times faster than OpenQuant, and 1 to 2 orders of magnitude faster than any other tool I have tested). Good documentation, large user base, and fanatical customer loyalty (== good support forum assistance).

    After I create and refine a trading strategy with AmiBroker, I use OpenQuant as my development platform, for easily and rapidly developing and deploying robust unattended automated trading code.

    After many years of trying out almost every platform and tool out there, and writing my own custom Automated Trading Systems applications (first in C++, then C#), I settled on this combination. It works well for me. My copy of OpenQuant currently trades 11 automated & unattended (except for a morning restart) strategies in live mode with real money. So far I am generating a decent return (which makes me happy).

    I am posting this message as an extremely satisfied customer of both OpenQuant and Amibroker. I have no relationship with either company (other than having paid for their software). I hope this might save people who are building Automated Trading Systems some time in their search for software tools.
     
  2. 一种交易软件比方说AmiBroker真的钻研透了,我认为是可以满足绝大部分的需要,但需要真的精通才可以。

    到处寻找能够完全满足自己需求的软件是很难找到的,或者说根本上就没有。

    对于软件的选择,如果能够知其长短再扬长避短,个人觉得也未尝不可以。

    打一个或许不太适合的比喻:Excel用来做电子表格,Word用来做文字排版。但有些人也可以用Excel来做文字排版,用Word做表格。我想,道理非常相似。
     
  3. 又过了一年,两者应该都有些改进,不知道现在对比如何?
     
  4. 恩。这种事情我干过,每个excel的单元格其实就和word差不多,而word里面的域作用也和excel里的公式差不多。不过这样做是不是有变态的嫌疑?哈哈哈哈哈:D