SuperAPI AI 工具集

execution-model

测试与质量

查看项目

更新于 10-15 22:13

技能介绍

用途:为回测提供更真实的成交假设,包括滑点模型、市场冲击估算与执行算法原理。仅用于回测模拟,不涉及实盘下单。

主要能力:

  1. 滑点模型。四种模型已在 src/quantlib/impact.py 实现并测试,应直接导入而非重写:from src.quantlib.impact import fixed_slippage, linear_impact, sqrt_impact, delayed_execution。固定滑点 fixed_slippage(price, direction, bps),direction 只能为 1(买)或 -1(卖),bps 默认 5.0。线性冲击 impact = impact_coeff × volume_traded / adv,impact_coeff 默认 0.1。平方根冲击 impact = η × σ × sqrt(volume_traded / adv),volatility 为日收益波动率小数,eta 默认 0.5,常用校准区间 0.3-0.8。
  2. 执行算法原理。VWAP 按预测的日内成交量分布(通常 U 形)切片执行;TWAP 在指定时间窗口内均分 N 个时间桶执行。
  3. 执行延迟。delayed_execution(raw_signal, delay_bars),A 股用 delay_bars=1(T+1),加密可用 0 或 1;负值会报错以避免前视偏差。
  4. 成本模型。总成本 = 显性成本(佣金、印花税、过户费)+ 隐性成本(买卖价差、市场冲击、机会成本)。回测中 commission 默认 0.001(0.1%)为合理的全包估计。

使用方式:在回测配置中设置 commission、engine、interval;在信号引擎中设置 execution_delay、slippage_bps、max_participation 等执行假设参数,并导入上述已测试函数。滑点模型选择可参考:资金小于 ADV 的 0.5% 用固定滑点,0.5%-5% 用线性冲击,超过 5% 用平方根冲击。

适用场景:股票、加密等策略的回测成本分析与执行假设敏感性分析。

限制:仅回测,不执行实盘交易;A 股 T+1 需延迟 1 天,涨跌停无法成交的日期应跳过;单笔订单不应超过当日成交量的 5%-10%;即使计入滑点仍可能过拟合,需样本外验证。资料未提供具体收费、价格与平台信息。