此前我们介绍了通过CTP API兼容接口进行Python穿透测试的方法。为提升使用便捷性,我们正式发布了专门适配CTP股票期权柜台的Python工具版本,无需额外修改DLL即可直接使用。
以下为工具连接与初始化成功的示例输出:
python ctpoptcommand.py tcp://114.94.59.94:46666 8200 xxxxxx 888888 openctp_ticktrader_1.0.0 V2B1CUV2C9RGF1SE
OnFrontConnected
Authenticate succeed.
Login succeed. TradingDay: 20251212, MaxOrderRef: 1, SystemName: TradingHosting
Commands:
1: query instrument
2: query exchange
3: query product
4: query price
...
q: quit
please enter a command number.
2
OnRspQryExchange:ExchangeID=SSE ExchangeName=上海证券交易所
OnRspQryExchange:ExchangeID=SZSE ExchangeName=深圳证券交易所
Completed.
please enter a command number.
该工具的使用方式与CTP API版本完全一致。其核心代码基于原有柜台实现拷贝,并在业务层针对股票期权的特性进行了适配调整。从本质上说,这相当于在交易系统中增加了期权品种的支持,基本的委托、查询、对账等金融交易核心功能并无差异。
源码与安装
工具源码地址:
https://github.com/openctp/openctp/tree/master/tools/ctpoptcommand
生产环境包安装:
通过以下pip命令可以安装用于生产的Python包:
pip install openctp-ctpopt==3.7.0.* -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host=pypi.tuna.tsinghua.edu.cn
评测环境包安装:
若需连接评测柜台,请安装以下版本:
pip install openctp-ctpopt-cp==3.7.0.* -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host=pypi.tuna.tsinghua.edu.cn
基本使用方法
工具通过命令行启动,基本语法如下:
python ctpoptcommand.py <host> <broker> <user> <password> <appid> <authcode>
示例:
python ctpoptcommand.py tcp://114.94.59.94:46666 8200 xxxxxx 888888 openctp_ticktrader_1.0.0 V2B1CUV2C9RGF1SE
启动后,将进入交互式命令行界面。其中,命令号19对应下单操作,命令号20对应撤单操作,按照提示输入合约代码、买卖方向、开平标志、数量、价格等参数即可执行。
对于偏好图形化界面的用户,可以使用TickTrader进行操作,该客户端也已内置了对CTP股票期权接口的完整支持。

该开源工具为量化开发者、运维人员提供了快速验证接口连通性、执行批量查询和进行自动化测试流程的便捷途径。
|