CTP For Python

GitHub地址:https://github.com/shizhuolin/PyCTP

这是程序化期货交易上期ctp接口版本.将其包装为python版本. 支持python3 编译需求:vs2010/gcc 编译方法 python setup.py build

PyCTP 编译方法

开发环境:windows 10 64bit, python 3.4.3 32bit, Visual Studio 2013

切记,作者编写的代码应该必须是32位的Python环境,我尝试了各种情况,python3.6-64位,Python2.7-64位,python2.7-32位,都会报各种问题,最好是使用Python3版本32位

  • 下载源码 
    我们下载源码到本地进行解压,如下图所示:

  • 进行编译 
    通过开始菜单,找到Visual Studio 2010的Visual Studio Tools,本机python版本为python 3.4 32bit,故采用x86命令行。其实有些根本不用进入Visual编译环境,直接编译即可python setup.py build

编译命令为

python setup.py build

问题1:

这个时候我使用的是Python2.7-32位的环境。安装有visual studio 2008,编译之后会自动寻找Microsoft Visual Studio 9.0 

解决:真的需要按照作者意愿来,我又使用Python3版本,安装2010版的visual studio

问题2:

编译中错误处理 
如果遇到如下错误:

error C2447: “{”: 缺少函数标题(是否是老式的形式表?) error: command 'D:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\BIN\\cl.exe' failed with exit status 2

或者

warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失

如图所示:

那么,此时,一定要处理掉这种情况,否则编译出来的动态链接库无法正常使用,因为乱码会导致程序编译链接出错。

解决办法 
将所有报错文件通过Visual Studio打开,文件菜单高级保存,选择GB2312编码进行保存。

然后重新编译即可,正常情况应该如下图所示:

 

 

成功编译后,我们会在build目录下生成三个文件夹,将lib目录中生成的pyd拷贝至scripts目录,将所依赖的CTP Dll拷贝至scripts目录,如下图所示:

然后修改test_PyCTP.py文件中main方法的期货账号,密码,然后运行即可开始开发测试。

为了方便起见,可以将PYCTP直接放置python3.4的第三方库文件夹中,这样可以直接调用

以后使用起来非常方便,如:

  • 6
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值