JaysonAlbert / zipline

python tdx zipline bundles, 支持A股的zipline量化框架
Apache License 2.0
150 stars 49 forks source link

实盘 #1

Closed JaysonAlbert closed 6 years ago

JaysonAlbert commented 6 years ago

实盘的讨论issues

欢迎大家踊跃发言,提供意见

1. 接口


目前实盘采用trade.dll接口,本项目不提供dll,请自行百度/谷歌,如需技术支持,请联系434588628

2. 具体实现


  1. zipline-live: zipline-live 项目扩展了zipline,使用国外的ib broker接口来进行实盘对接,所以cn_zipline修改zipline-live,通过trade.dll来实现实盘对接。

  2. dll的局限: 由于trade.dll只有win32版本,并且dll本身只支持c/c++语言,由于我之前已经写了一个python混编的接口调用trade.dll,所以目前打算直接使用这个混编接口,这也就限定了python的环境必须是win32。

    由于cn_zipline的初衷是一个如zipline一样的跨平台回测以及实盘框架,而trade.dll的win32版本要求python只能是win32版本。为脱离win32的束缚,采用python的zerorpc进行解耦。

    使用时,先运行一个win32版本的rpc服务器端,然后在任意环境下运行cn_zipline,通过rpc请求进行交易。

3.总结:


三种方案:

  1. windows python2.7 32 bit 环境,直接使用cn_zipline
  2. windows pyhton2.7 32 bit 的trade.dll rpc服务器端, cn_zipline可以使用任意python环境。
  3. python rpc的替代解决方案:TdxTradeServer项目提供了一个交易服务器,使用的也是trade.dll,是直接用c++开发的,相对于python混编之后的rpc来讲,性能应该会好一点,因为配置起来有点麻烦,所以我并没有采用这个。