- Stoll 已实现价差分解:把买卖价差拆成信息、库存与订单处理成本
报价价差 10 个 tick,做市商真能赚到 10 个 tick 吗?Stoll (1989) 给出了否定答案和一套识别方法:价差由三种成本构成——逆向选择(信息)、库存持有、订单处理,三者在成交后的价格行为上留下完全不同的指纹。信息成分让价格一去不回,库存成分让报价先偏移再均值回复,订单处理成分产生纯粹的 bid-ask bounce。本文推导「成交价串行协方差 + 报价中点串行协方差」这对识别工具,用可复现 Python 模拟验证:θ=0.45 的市场里,报价价差 0.10 元中做市商真正落袋的已实现价差只有 0.06 元。并给出三个落地应用:横截面毒性排序、TCA 里有效价差与已实现价差的正确用法、以及为什么高换手做市策略要盯已实现价差而不是报价价差(中阶)。
11 min Chinese - Epps 效应与高频相关性:为什么采样越细相关性越假
直觉告诉你:数据越密、频率越高,估计应该越准。但相关性在高频世界里恰恰相反——同一对资产,用日线算相关是 0.6,切到 1 分钟变 0.3,切到 1 秒几乎归零。这就是 Epps 效应:不是市场关系变了,是异步成交把相关性『稀释』掉了。两只股票的 tick 从不落在同一时刻,你为了对齐用旧价前向填充,就在每个细格点里塞进了大量人造的零收益,相关性被这些零拖向 0。本文用纯 numpy 合成两条 latent 相关 0.6 的高频价格路径,泊松稀疏成交 + last-tick 填充完整复现 Epps 塌陷曲线(1 秒 ρ≈0.03、30 分钟才恢复到 0.59);量化流动性对衰减速度的影响(成交越稀疏塌陷越狠);最后给出解药 Hayashi-Yoshida 估计量——用重叠区间累加协方差,不需要同步、不丢数据,在异步稀疏数据下几乎无偏。附完整 Python 与四类真实陷阱。
16 min Chinese - 日内动量最后一小时效应:收盘前的方向延续从哪来
开盘半小时的涨跌方向,会在收盘前一小时被部分复刻——这是 Gao-Han-Li-Zhou (2018) 在 SPY 上记录的日内动量效应,来源不是玄学而是三股结构性资金:对冲 Gamma 的做市商、盯收盘价的被动基金、日内趋势跟随者都在尾盘同向交易。本文在自洽合成数据上植入传导系数 β=0.10 并完整复现检验流程:开盘-尾盘收益相关性 0.108(t=3.8)、五分组尾盘收益单调递增、策略年化 8.3%(Sharpe 0.73)显著跑赢被动持有尾盘(0.37);同时用无效应对照组证明——β=0 时同一策略被 2bp 成本磨到年化 -7.9%。β×成本 Sharpe 热力图画出这类高频率低赔率策略的生死线,附完整 Python 与四类真实陷阱(中阶)。
14 min Chinese - Hayashi-Yoshida 领先滞后估计:在异步 tick 里找谁先动
两只关联资产里,谁先动、谁跟随?大盘 ETF 涨了,成份股几秒后跟上;期货动了,现货滞后半秒——这个『谁领先谁』的时间差,是高频交易里最值钱的信息之一。但要从真实 tick 数据里量出这个 lag 极难:两条序列的成交时刻从不对齐,你一旦重采样到固定网格,就把秒级的领先滞后模糊进了分钟级的格子,lag 直接消失。本文把 Hayashi-Yoshida 估计量升级成领先滞后探测器:给一条序列的时间轴整体平移 L 秒再算 HY 交叉相关,扫描所有 L、峰值所在即领先滞后时间。用纯 numpy 造 leader/follower 结构(follower=leader 滞后 8 秒+噪声),完整复现交叉相关峰值精准锁定 8 秒;对比固定网格 last-tick 如何被粗粒度模糊掉 lag;量化样本量与信号强度对 lag 估计稳健性的影响(一天数据 vs 一周数据、ρ=0.2 的平峰 vs ρ=0.8 的尖峰)。附完整 Python 与四类真实陷阱。
15 min Chinese - 多重分形 DFA:用多重分形谱刻画不同尺度下的记忆结构
单一 Hurst 指数假设市场只有一种记忆——大波动和小波动遵循同一个标度律。但真实收益序列的大涨大跌聚集成串、小波动却近似随机游走,一个 H 根本装不下。MF-DFA(多重分形去趋势波动分析)把波动函数升级成 q 阶矩:q>0 放大大波动的标度行为、q<0 放大小波动,得到广义 Hurst 曲线 h(q),再经 Legendre 变换画出多重分形谱 f(α),谱宽 Δα 一个数度量『记忆结构的丰富度』。本文用纯 numpy 从零实现 MF-DFA(profile 累积、双向切段、多项式去趋势、q 阶波动函数、谱变换),三类合成序列对照:白噪声 h(q) 水平线且 Δα≈0.006、长记忆 fGn(H=0.7) 整体抬高但仍是单分形(Δα=0.024)、二项级联序列 h(q) 从 0.76 弯到 0.43、Δα=0.61——多重分形性一眼可辨。滚动窗口应用:谱宽在白噪声段均值 0.11,切入波动级联段跳到 0.35,可做 regime 检测的补充仪表。诚实拆穿关键陷阱:打乱检验显示级联序列打乱后 Δα 仍有 0.55——谱宽大部分来自收益分布厚尾而非时序相关,不做打乱对照就把厚尾当记忆是 MF-DFA 文献里最泛滥的错误。另拆穿谱宽=可预测性/小样本负 q 发散/去趋势阶数选择三类坑(中高阶)。
12 min Chinese - 隔夜与日内收益拆分:同一只股票的两副面孔
把一天的收益按『收盘到次日开盘』和『开盘到收盘』切成两段,会发现同一只股票戴着两副面孔:隔夜段延续、日内段反转,两股力量方向完全相反却都能赚钱。这不是站内那篇讲权益溢价集中在隔夜的时间序列拆解,而是 Lou-Polk-Skouras (2019, JFE) 的『拔河』横截面视角——散户情绪在隔夜发酵、机构资金在日内逆向承接。本文在植入动量 β=0.055、反转 β=0.042 的 200 股×5 年合成面板上完整复现 Fama-MacBeth 检验:隔夜动量斜率 0.045(t=9.9)、日内反转斜率 -0.042(t=-10.7)、五分组隔夜段单调递增而日内段单调递减;隔夜动量多空年化 12.9%(Sharpe 1.47)、日内反转多空年化 10.4%(Sharpe 1.33)、合并策略 Sharpe 1.56。用 β×成本热力图画出这类日换手策略的生死线,附完整 Python 与四类真实陷阱(中高阶)。
17 min Chinese - 传播子模型价格冲击:把每笔成交的冲击写成核函数衰减
大多数交易成本模型把市场冲击当成瞬时的一锤子买卖——你砸单、价格跳、结束。但真实市场里,一笔成交的冲击是有『余韵』的:它推高价格后会慢慢消退,而不是立刻弹回或永久留存。Bouchaud 的传播子模型(Propagator Model)把这件事写成一个衰减核 G(t),价格 = 所有历史成交冲击按 G(t) 衰减后的叠加。本文从零推导为什么这个核必须存在——订单流方向有惊人的长记忆(自相关拖到上百笔仍显著),如果冲击是永久的,长记忆会让价格产生可预测趋势、无风险套利机会遍地;传播子的幂律衰减核恰好抵消这种记忆,让价格回到接近鞅的无套利状态。用纯 numpy 复现冲击核(幂律 vs 指数 vs 永久)、价格叠加构造、订单流长记忆自相关、以及从模拟成交数据反推响应函数 R(l)。附完整 Python 与四类真实陷阱(高阶)。
17 min Chinese - 三角套利加密货币:用三个交易对的价差吃掉无风险利润
BTC/USDT、ETH/USDT、ETH/BTC 三个价格必须满足一个乘法恒等式,否则沿环路换一圈就能白赚——这是教科书里最接近『无风险利润』的东西。但教科书不告诉你的是:这条环路上蹲着三重摩擦。本文用纯 numpy 模拟 50000 秒的三交易对 tick 数据(交叉盘偏离建模为 OU 均值回复 + 偶发再定价跳跃),把三角套利从幻觉到现实完整算一遍账:无摩擦视角下 25392 个 tick 存在『机会』,套上 0.1% taker 费率×3 腿后机会数直接归零,VIP 费率 0.02%×3 下只剩 484 个;成本瀑布显示毛偏离均值 6.9bp,而普通 taker 三腿费用就要 30bp——费率不是成本,是判决书。延迟衰减实验:信号触发时平均净利 4.5bp,慢 5 秒剩 1.3bp,慢 10 秒转负(-1.0bp),30 秒 -6.5bp。VIP 费率+1 秒延迟的完整回测:83 笔、胜率 95%、单笔均值 0.43 USDT——真实但薄如刀片。另拆穿腿风险(第三腿成交前你持有裸头寸)、余额预置 vs 顺序执行、机会共灭(对手也是机器人)三类结构性坑(中高阶)。
14 min Chinese
返回