python开发实例,python代码基础例子
CTP接口的Python包
您可以在生产环境中使用这个包,它支持透明监管。自封装的主要原因是其他作者经常扔洞。虽然更打包了,但不会很快更新。
考虑到APP应用层一般封装在ctp之上,不需要太讲究。尽量和C版保持一致就行了,这样才能跟上新版本。
请先仔细阅读文档。我不对使用此库的结果负责。
安装步骤
本地克隆代码
github.com git:keli/CTP-python . git
cd ctp-python
固定
python setup.py安装
目前默认使用6.3.15版本。如果需要链接使用6.3.13版,需要添加一个小步骤:
将setup.py中的API_VER值更改为“6.3.13”
在swig中重新生成源代码
cd ctp-python
swig-python-py3-c-threads-I ./API/6 . 3 . 13-octp _ wrap。CPP CTP。我
python setup.py安装
做个测试。
py test-stests/test _ trader . py-front=TCP://180 . 168 . 146-broker=-user-paser-paser
任何其他业务
在这个项目中,CTP返回的所有GBK编码字符串都被自动转换为UTF-8格式。
市场数据中的最大值表示没有数据。为了便于阅读,在打印整个结构时不会显示任何内容。
目前只支持Python 3和Linux。
Simnow已启用6.3.15版。
常见问题
为什么要举报UTF-8和GBK的转码错误?
这不是转码问题,而是内存管理问题。ctp库释放它传递给你的回调函数的内容。当sdgk打印时,报告转码失败,因为内存已被释放。最理想的方式是改变swig的定义,自动将相应结构的内容复制到python中,但不清楚swig将如何做到这一点。我的代码中只有几个地方需要缓存ctp结构,所以我在用户代码中直接把它们转换成自己定义的python数据类型。
有用的参考链接
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。