在当前资本市场波动加剧、交易时效性要求提升的背景下,基金经理日常面临大规模资金调仓、多标的批量下单等高频操作需求。传统人工下单模式存在订单执行延迟、仓位控制精度不足、市场冲击成本难预估等问题,尤其在应对市场突发行情时,易因人为操作偏差影响投资组合收益目标达成。同时,监管对交易合规性、数据可追溯性的要求日益严格,人工记录与复核流程不仅耗时,还存在数据遗漏或误差风险。为帮助基金经理提升下单效率、优化交易成本、保障操作合规,特启动下单算法开发项目,通过系统化、智能化的算法模型,实现订单自动拆分、最优执行路径选择、实时风险监控等功能,助力基金经理更专注于投资策略制定与市场研判。
模块旨在通过精准捕捉价差波动、实现合约组合的协同下单与平仓,提升这两种套利模式的执行效率与收益稳定性。本人作为核心开发者,全程参与模块从需求分析到上线优化的全流程,深度结合牛熊套利的价差特性与操作逻辑,确保模块适配两类策略的差异化需求。
策略逻辑设计:
基于主力与次主力合约的价差模型,定义牛市套利(买主力卖次主力)与熊市套利(卖主力买次主力)的触发条件。
在 OnTick 行情回调中实时计算价差,并结合滑点、手续费、交易成本判断下单信号。
下单算法实现:
设计高性能下单助手,支持市价单与对手价挂单策略。
引入 撤单-重挂机制:挂单超时(如 3~5 秒未成交)则自动撤单,并根据最新盘口价格重挂,提升成交概率。
支持保护价机制(跌停/涨停价保护),防止极端行情下订单被拒绝。
模块化封装:
封装 cwAutoReorder、cwCloser、cwTimerManager 等子模块,实现挂单重试、定时器管理等功能。
提供统一接口(OnPriceUpdate、OnCancelConfirmed、OnFilled)与策略核心解耦,便于多策略共用。
风险与风控控制:
多层次风控:集成交易时段过滤(开收盘避让)、涨跌停保护、仓位上限控制,确保交易在合规风险区间内运行。
撤单频率控制:统计合约撤单次数,防止触发交易所频繁撤单限制。
动态挂单管理:实时监测挂单与盘口价差,价格偏离则自动撤单并按最新盘口重挂,提高成交概率并降低被动成交风险。
技术栈:
语言:C++20
接口:CTP API (MdApi/TraderApi)
数据结构:std::map、std::unordered_map、std::vector
多线程:行情与交易分线程处理,原子变量同步状态
设计模式:观察者模式(行情驱动策略)、策略模式(下单算法选择)、单例模式(交易通道管理)