- 强化学习最优执行:用策略梯度把大单拆成低冲击序列
要卖掉 100 万股,一次性砸下去会把价格砸穿;TWAP 均分又扛着最大的库存风险。经典 Almgren-Chriss(AC) 用闭式解给出「前重后轻」的最优拆单,但它假设连续时间、平滑冲击。本文用 REINFORCE 策略梯度直接在离散环境里学拆单:30 步、临时冲击 ε=0.01、波动 σ=0.05、风险厌恶 λ=9。结果——REINFORCE 期望总成本 0.00367(3.67bps),远低于 TWAP 的 0.01082(10.82bps, 降 66%),也比 naive 离散化的 AC 闭式(0.00583)更低;实现短fall 标准差从 TWAP 的 0.032 压到 0.005(约 1/6)。图表显示它学到与 AC 一致的「前重后轻」,且因为端到端优化真实离散成本,落在 AC 公式之下。附完整 numpy 实现与四张真实计算图。
9 min Chinese - TWAP/VWAP 最优执行:把大单拆细在时间轴上隐身
散户下单只关心买不买、卖不卖;机构下单还要多问一句:这单怎么下才不会自己把价格打飞?一笔 10 万股的市价单一次性砸进去,滑点可能高达 98bp——本文用 4000 条蒙特卡洛路径实测,同样的量拆成 TWAP(均匀切)滑点降到 43bp、VWAP(跟着成交量切)再降到 40bp,一次性冲击是它的 2.3 倍。文章从零推导市场冲击的凸性为什么让『拆单+跟量』能省钱(Cauchy-Schwarz),复现日内 U 型成交量曲线、Almgren-Chriss 有效前沿(执行成本 vs 时序风险的取舍),并诚实拆穿 VWAP 的死穴:它跟踪的是一个你下单时还不知道的未来基准,预测成交量偏 35% 就会变成跑输基准的跟踪误差。附完整 Python 与四类真实陷阱(中高阶)。
20 min Chinese - 最优执行 Almgren-Chriss:把大单拆成最优执行流
上一篇讲了 Almgren-Chriss(AC)怎么把冲击成本和波动风险写进同一个目标,解出一条由 γ 决定的轨迹。本篇换个角度把这套框架用透:①执行期限 T 怎么定——拖久冲击成本低但波动风险高,存在权衡;②最优『交易速率 v*(t)』长什么样,为什么越怕波动越前置;③VWAP 这种成交量加权基准和 AC 最优差在哪;④调度偏一点要多付多少。附完整 Python、连续时间闭式解与六类真实陷阱(高阶)。
13 min Chinese - Almgren-Chriss 最优执行:把交易成本写进下单算法
卖出 100 万股这种大单,怎么拆、多快卖,本身就是一道优化题。Almgren-Chriss 把永久冲击、临时冲击和持仓的波动风险写进同一个目标:快卖=冲击成本高但风险低,慢卖=风险高但冲击低。解出来是一条「前置还是后置」的最优轨迹。附完整 Python 与六类真实陷阱(高阶)。
14 min Chinese
返回