实在多年之前还在做衍生品定价计量事情时,就做过程序化交易的一些考试测验,但当时以为自己的交易策略实在蛮低频的,人工完备搪塞得过来也就没有坚持下来。现在重新捡起来啦,对程序化交易有兴趣的老铁可以一起来学习进步。
用过盈透证券TWS(Trade workstation,老虎证券或雪盈证券APP也类似)该当会创造,很难直接用原有程序导出想要的历史数据,但是做回溯测试时历史数据是必须要积累的。当然如果不差钱的话,你可以向第三方直接购买,但实在较好的一个办法便是每天积累保存想要的数据,虽然麻烦但有助于理解数据本身并做好market data validation,最关键一点是,免费!
历史数据抓取可以用TWS API来实现,并且从版本9.73开始,盈透正式支持RTD(Real Time Data),也便是说可以实现数据的实时抓取,大略起见我们可以用微软Excel软件来实现,虽然性能上要比用Python差一点,不过对编程哀求更低,更适宜做prototype用。实在Excel功能真的是很强,并且便于解释阐明用,这点非常主要。
条件须要有个盈透证券(老虎证券或雪盈证券该当也行)账户。如果没有的话,请先上官网开个吧。条件条件:
・Microsoft Windows
・Microsoft Excel(须要是32bit,64bit要编译,如果已有64bit的可同时安装个32bit版Excel)
・TWS或IB Gateway(须要是32bit, 64bit反正我试下来问题很多)
・TWS API(须要安装在C盘)
TWS API可以在此下载:http://interactivebrokers.github.io/#
TWS(/IB Gateway)可以在此下载:https://www.ibkr.com.cn/cn/index.php?f=16352
然后,进入TWS界面(牢记先选择paper account测试)点击界面菜单的配置-API-设置,不才图的三个黄色选项上打钩,确认端口为7496,然后运用并关闭。
( API read-only的话,不能下单。以是如果为了防止误操作,可以先勾上须要时候再去掉)
然后在Excel里,建议把TWS API的安装路径设为受信赖位置,免得每次启动都要选择信赖宏文件。
我是把TWS API安装在C:\TWS API,以是可以在C:\TWS API\samples\Excel下面创造盈透证券供应的一些例子。
选择TwdDde.xls打开,到Historical Data这一sheet,例如我填的是ES(标普500期货)的截止2019/03/20的一周历史数据,记得把Cell D5用户名改为你自己的paper account登录ID,然后点击request Historical Data按钮。
顺利的话右边就会天生一个新的sheet,里面便是要抽取的历史数据啦。
结合DDE、ActiveX、Python等API,用Excel的公式、图表等进行数字统计和剖析,是程序化交易的第一步(吧)。不管怎么说,尽早抓取数据建立自己的数据库还是很有必要的。
盈透官方也供应了一个手册,可以结合着看。
http://interactivebrokers.github.io/tws-api/dde_realtime_tutorial.html#dde_rt_requisites
本篇到此,下篇连续。
如果您以为有帮助的话,请长按二维码关注,同时右下角点击“在看”。