您现在的位置:程序化交易>> 程序化交易>> 程序化老手>>正文内容

原创程序化交易整合方案作法—「文字档下单机」与「整合式下单系统」的比较[程序化老手]

程式交易分析阶段包括交易策略设计、策略绩效测试、策略最佳调整、策略实测模拟等不同阶段;
至于程式交易执行阶段,除了使用券商提供的下单机执行交易外,亦可客製下单环境(此即所谓下单机)。
 
透过券商或期货商的看盘软体,取得报价、人工判断策略触发,手动下单,取得委託回报、成交回报的每一阶段的耗时大约都是以秒计,因此完成整个成交週期再快也要几秒钟的时间。但若藉由客製下单系统(俗称下单机)来执行交易流程,可以把交易时间大幅降低,甚至降到毫秒(0.001秒)的数量级。客製下单系统依据执行效率与技术应用层次,可以分为两种,以下分别介绍并比较之--
 
1. 文字档下单机(可读取文字档的交易系统)--
最早期的下单机称为「文字档下单机」,其作法为藉由如TradeStation(或HTS, Home Trade System)
的软体,读入市场即时资料,测试交易策略是否触发买卖行动;若是,则将买卖行动的交易讯息,
包括商品类别、下单方式(市价或限价交易)、价格(如果是限价交易)、买买单位数等讯息,写出到外部文字档中(使用文字档作为讯息传递媒介,係因为任何应用程式都可方便读写文字档),再由下单程式定频读取文字档中的交易讯息,解析后,送入文字档交易系统内含的下单元件(可能为应用程式介面(API)或软体元(如OCX)的函数呼叫)执行交易,藉此达成「读取即时讯息、触发策略、立即下单」的即时交易功能。有些下单元件可以回传委託回报与成交回报,有些不可,但下单功能是一定需要的。(在目前法规限制下,不能直接丢单,因此在读取到文字讯息后,合法的作法为Pop出建议下单讯息再由投资人驱动下单)。文字档下单机可能的限制包括:( 来源:www.cxh99.com )
 
(1)利用TS或HTS驱动策略在读取讯号时可能造成延迟,以TS为例必须透过MetaServer读取券商提供的DDE资料,但券商的DDE资料本身的报价品质就不够好;
 
(2)由于TS系统本身佔用系统资源大,以之驱动策略可能会造成时间延迟;
 
(3)由于TS系统係以K线驱动(而非逐笔交易资料)驱动交易策略,必须在该K线(不管是5分或1分线)结束后,才能驱动策略,因此造成延迟,此缺点,可透过读取TS系统中内部资料库的方式稍微舒缓,但技术要求较高,由于接下来我们会提及另外的两全其美的解决方式,因此就不介绍解法,有兴趣的读者可以参考程式交易论坛上的文章;{ www.cxh99.com }
 
(4)在策略触发后再透过TS写出文字档也会延迟;
 
(5)最后,下单系统读取文字档,不管在取样时间或读档时间上也会造成延迟。
 
综合以上所论,文字档下单机虽然是一
种方便的解法,但并非是有效率的解法,若投资人可以忍受上述延迟,那麽使用在Excel导入券商DDE资料进行交易的作法,甚至更直接、延迟更低。基于文字档下单机的以上限制,有资讯厂商提出改进解法并提供下单机产品,其作法虽然仍然使用TS作为交易策略的触发平台,但改进了报价频率(使用真正的Tick报价工具连接到TS中),而由TS驱动交易行动后,直接把交易讯号送到下单机中的券商下单元件下单,换言之,不再丢出文字档,也不需再由下单机捞取下单资讯。此作法,解决了以上传统文字档下单机第(1)、(4)、(5)的限制,但仍未解决(2)、(3)的限制,且此作法绕过文字档的媒介在适法性上也有疑虑。
 
2. 整合式下单系统--
以上文字档下单机的缺点,可以藉由整合式下单机来解决。整合式下单机的作法希望把读取即时报价资讯、交易策略触发、交易行动执行,甚至于委託回报取得、成交回报取得等全部一气呵成的在系统中完成,因此可以把延迟降至最低。系统开发者可以选取任何一般性程式环境开发完成,例如Excel上的VBA(Visual BASIC for Application)、Visual BASIC 6.0、Visual Studio中的Visual BASIC、Visual C++、Visual C#等。选取一般式程式语言开发的目的是可以不需忍受TradeStation或HTS的限制,也可以把系统规模控制到最适中,当然也因此必须学会另一种语言的编码。在即时讯息输入时,整合式下单机可以读取免费的DDE即时资料(但必须忍受大约1秒的延迟,对于非Tick交易的交易者而言,或许已经足够),或者购买能读取逐笔交易资料的软体元件,至于下单、委託回报与成交回报等与逐笔交易资料源的软体元件同样都是使用直接嵌入(Embedded)在整合式下单机中的元件,如此一来,交易者可以追求毫秒等级速度的交易快感,此整合式下单系统对于进行价差、套利与逐笔交易的交易者而言是必要的配备;此作法最大的好处是,交易者可以在程式码间自订交易策略。甚至个人认为,与其要学习诸如TradeStation中的EasyLanguage语言,还不如把精力放在无所不能的一般程式语言的学习,如果不想要学太难的C语言,那麽VB家族语言的简易性可以考虑,假若不想另外花钱购买VB语言的开发环境,那麽内附在Office Excel中的VBA语言是一种简单又廉价的选择。( 来源:www.cxh99.com )

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 511411198   点击这里给我发消息或微信:cxhjy888 进行 有偿 编写!不贵!点击查看价格!


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容