半自动化交易系统(五)
本文作为交易系统系列的第五篇,主要介绍近期在期权策略和系统功能上的优化和改进。在券商平台开通QMT权限后,我实现了使用Python进行期权交易的自动化操作。本文将详细介绍系统架构、功能实现以及策略改进的相关内容。
券商集成
在期权自动化交易方面,我的主要账户在国金, 正好满足了要求, 所以就用国金的QMT接口作为底层交易通道。之前使用MiniQMT进行股票交易,但期权交易需要完整版QMT权限。
集成过程中使用的核心函数包括:
- get_trade_detail_data 用于获取账户资金信息、委托记录等:
- get_comb_option 取期权组合持仓
- make_option_combination 用于创建期权组合, 我主要用来做价差
- release_option_combination 用于释放期权组合
- passorder 所有的下单操作, 包括开仓, 平仓
- get_full_tick 获取期权逐笔数据
关于API的详细使用方法,券商提供的技术文档已经有较为完整的说明,这里不再赘述。如需要技术咨询服务,可通过私信联系讨论具体需求和费用。
需要注意的是,QMT启动后会独占交易通道,佣金宝和国金的其他客户端无法同时进行交易。如需在移动端进行操作,可以使用国金提供的汇点期权App作为替代方案。
页面功能设计
为了更有效地管理期权持仓,我开发了一个专门的持仓管理页面。该页面不仅展示持仓信息,还集成了调仓功能,可以便捷地进行期权组合的构建和调整。
如前文《期权策略-变种比例价差》所述,我目前专注于科创50ETF期权的价差策略。单一标的的策略使得页面设计可以更加专注和高效。
持仓概览

上图展示了持仓页面的整体布局。图中标注部分显示了当前标的物及其实时价格,这是监控持仓状态的核心指标。
分月持仓管理
考虑到不同到期月份的期权合约具有不同的时间价值特性,系统按照到期日对持仓进行分类展示,便于分析和管理。

页面从左到右依次显示:牛市价差组合数量、备兑组合数量、义务仓数量以及权利仓数量。这种布局方式能够快速呈现整体仓位结构。
此外,系统对不同行权价的时间价值进行了颜色编码,通过视觉化的方式突出显示各合约的时间价值水平,提高了信息的可读性。
调仓操作界面

调仓页面提供了简洁的操作界面。用户可以直接修改目标持仓数量,系统会自动计算需要执行的交易操作。
页面集成了实时行情数据,能够实时显示当前的买卖报价。科创50ETF期权具有较好的流动性,买卖价差相对较小。当前版本实现了对手价下单功能,限价单功能计划在后续版本中添加。
页面底部以JSON格式展示完整的持仓信息,包括各合约的数量和价格,便于在下单前进行最终确认。
组合策略管理

期权组合是策略实施的核心部分。页面提供了组合调整界面,支持便捷地构建和修改各类价差组合。
策略优化与实现
《期权策略-变种比例价差》一文中详细阐述了策略的理论框架。在实际落地过程中,为了更好地实现程序化交易,对策略进行了一些适配性调整和优化。
策略参数优化
在仓位管理方面,将之前的零散操作调整为标准化配置:在每个价位段,统一采用10张权利仓+12-15张义务仓的标准比例来构建组合,同时配合少量平值期权义务仓的裸卖操作。
这种标准化配置的优势在于:仓位控制更加精确,避免了为凑整数而产生的困扰,使得整体仓位管理更加规范和可控。
风控机制设计
衍生品交易中,风险控制是系统稳定运行的基础。系统实现了完整的风控和调仓逻辑。从我的角度来看, 风控长什么样不重要, 重要的是一定要有一个. 它能够提醒你当前的风险暴露情况, 并且在必要时刻给出调仓建议. 我就想了一套最简单的让AI来生成.
围绕获取时间价值这一核心目标,针对义务仓设计了三层风控机制:
- 高风险调仓机制:当持仓的风险评分超过预设阈值时,系统会自动识别并建议更保守的调仓方案,降低持仓风险暴露
- 虚值平行移仓机制:当虚值合约时间价值快速衰减,且下月合约的时间价值达到当月的2倍以上时,系统会建议平行移仓,在获取更高时间价值的同时,可以适当降低持仓数量
- 低价值清仓机制:对于时间价值低于50元的期权合约,系统会建议平仓,以提高保证金使用效率
系统还实现了风险评分机制记录,根据持仓情况和标的价格实时计算风险分数,并以图表形式记录风险变化趋势。

通过这套风控体系,能够及时识别和控制潜在风险。
总结与展望
本文介绍了期权自动化交易系统的主要功能模块和策略实现。从券商接口集成、页面功能设计,到策略优化和风控机制,系统已经具备了基本的自动化交易能力。
当前系统仍有较大的改进空间。限价单功能、更多样化的策略组合、更精细的风控算法等功能都在规划之中。系统的持续优化和完善将是后续工作的重点。
欢迎对期权交易自动化感兴趣的读者交流讨论。