转贴自 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.
原文作者低估了AMIBROKER 的灵活性。 交易员只要把一种软件用好用透就够了。时间多,不如开发多一些分散化的交易策略。 我在 ET BBS 给此文作者的回帖。 http://www.elitetrader.com/vb/showthread.php?s=&postid=2254022#post2254022
一种交易软件比方说AmiBroker真的钻研透了,我认为是可以满足绝大部分的需要,但需要真的精通才可以。 到处寻找能够完全满足自己需求的软件是很难找到的,或者说根本上就没有。 对于软件的选择,如果能够知其长短再扬长避短,个人觉得也未尝不可以。 打一个或许不太适合的比喻:Excel用来做电子表格,Word用来做文字排版。但有些人也可以用Excel来做文字排版,用Word做表格。我想,道理非常相似。