- 命名实体识别金融事件:从新闻里自动抽出公司-事件-时间
关键词正则抽事件有个死穴:它认得『回购』这个词,却认不出『拟以自有资金实施股份回购』里被拆开的实体,更分不清『茅台回购、格力增持』同一句里两家公司各自的动作。命名实体识别(NER)用 BIO 序列标注 + CRF 转移约束,把一条新闻切成『公司-事件-时间』三元组。本文从零讲清 BIO 标注、CRF 为什么能压掉非法标签路径,用合成金融语料对比正则法与序列标注的分类型 F1(公司 0.61 vs 0.90、事件 0.42 vs 0.83),并诚实指出中文分词、嵌套实体、事件归属三大真实陷阱,附完整 Python(中阶)。
17 min Chinese - Omega 比率优化:用整条收益分布替代均值方差
Sharpe 比率把整条收益分布压缩成两个数:均值和标准差——第三阶矩以上的信息全被扔掉。本文构造了两个均值、波动率几乎完全相同的策略:一个偏度 -0.05 的正态型,一个偏度 -3.37 的卖期权型,Sharpe 说它们一样好,但后者藏着单日 -5% 级别的崩盘尾巴。Omega 比率的修复思路是不做任何压缩:给定阈值 θ,把分布切成两半,上半部分的概率加权面积除以下半部分——Omega(θ) 曲线本身就携带全部分布信息,两个矩相同的策略在曲线上一眼分开。用 SLSQP 做 Omega 最优组合权重扫描,揭示一个教科书很少讲的相变:θ=0 时优化器抱紧高 Sharpe 但偏度 -9.3 的卖波动策略,θ 抬到 3.5bp/日后权重瞬间 100% 切换到低 Sharpe 但正偏 +2.7 的趋势策略——阈值就是你对『什么算亏』的定义,定义变了最优组合跟着突变。打穿 Omega 优化的三个死穴:非凸性带来的局部最优陷阱、θ 选择的隐蔽自由度(本质是另一个可过拟合参数)、样本内 Omega 对尾部事件计数的极端敏感(进阶)。
14 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 - 隔夜与日内收益拆分:同一只股票的两副面孔
把一天的收益按『收盘到次日开盘』和『开盘到收盘』切成两段,会发现同一只股票戴着两副面孔:隔夜段延续、日内段反转,两股力量方向完全相反却都能赚钱。这不是站内那篇讲权益溢价集中在隔夜的时间序列拆解,而是 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 - 溃疡指数与痛苦指数:把回撤的深度和时长一起计入风险
最大回撤只记录你摔得最深的那一米,不记录你在水下憋了多久。本文构造两条 MDD 几乎相同(-30.4% vs -30.2%)的净值曲线:一条 V 型急跌 90 天修复,一条绵长阴跌在水下泡 500 天——MDD 说它们一样烂,但持有人的体感天差地别。溃疡指数(Ulcer Index)的修复方案是对整条水下曲线求均方根:回撤的每一天都计入,且平方项让深回撤被超线性惩罚;痛苦指数(Pain Index)则取水下曲线的算术平均,线性计重。实测两条曲线的 UI 分别为 10.5 和 16.6、PI 为 8.1 和 14.0——时长终于进入了风险度量。用 40 个随机策略的散点实验展示 Martin 比率(年化收益/UI)与 Sharpe 的排名分歧:Sharpe 相近的策略 Martin 可以差数倍,因为波动率对上涨和下跌的抖动一视同仁,而 UI 只惩罚水下的部分。打穿三个实务陷阱:UI 对数据频率的依赖(月频 UI 系统性低估日频 UI)、新高稀疏策略的峰值锚定问题、以及用 UI 做优化目标时的路径依赖非凸性(中阶)。
12 min Chinese - 局部依赖图 PDP:把单个因子与收益的边际关系画成曲线
机器学习因子模型跑出了收益,你却说不清『动量到底怎么影响预测』——因为模型是黑箱,特征重要性只给排名不给形状。PDP(Partial Dependence Plot)把某个因子在其取值范围上扫一遍、其余特征原样保留后对全样本预测求平均,画出这个因子与预测收益的边际曲线:是单调、倒U 还是阶梯,一眼看穿。本文用合成因子数据训练梯度提升树,画动量的倒 U 型甜区、四因子 PDP 面板、动量×规模的二维交互热图,并诚实拆穿 PDP 最致命的陷阱——相关因子下它会强行外推到根本不存在的样本组合、把借来的效应算成自己的(附完整 Python,中阶)。
15 min Chinese - 路径签名粗糙路径:用迭代积分把价格轨迹写成可学习的特征
传统特征工程把一段价格轨迹压成几个统计量——均值、波动、动量——路径怎么走的信息全部丢掉。路径签名换思路:用粗糙路径理论中的迭代积分,把整条轨迹按阶数展开成一列数,level-1 是净位移、level-2 是 Lévy 面积(转了多少圈)、level-3 编码更精细的时序几何,理论上无限阶签名唯一决定路径形状。本文用纯 numpy 通过 Chen 恒等式递推实现 2 维时间增广路径的 level-3 截断签名,在三类合成路径(趋势/均值回复往返/噪声)上做特征对决:签名 level-1~3 样本外 IC 0.737,碾压 6 维手工统计特征(0.597);消融揭示关键信息藏在三阶项——level-1~2 只有 0.434,加入 level-3 一步跳到 0.737,因为『先冲高后回落』的往返形状是三阶几何量。诚实拆穿维度爆炸陷阱:d 维路径 level-L 签名共 Σdᵏ 项,d=5 到 level-5 已是 3905 维,必须靠时间增广+低阶截断+正则化续命。拆穿签名=万能特征/平移不变性丢失绝对价位/采样频率敏感/树内核近似取舍四类陷阱(中高阶)。
14 min Chinese - PPO 强化学习交易:用近端策略优化学会在连续动作空间下单
监督学习只能回答『下一期涨还是跌』,回答不了『该持多少仓』——仓位是个连续决策,且换手有成本、决策有惯性,这天然是强化学习问题。PPO 是策略梯度的工程化版本:用概率比 r(θ) 度量新旧策略偏移,clip 目标把更新钉死在信任域 [1-ε,1+ε] 内,防止一次大步毁掉整个策略。本文纯 numpy 实现线性高斯策略 PPO(tanh 均值头 + 可学习 σ + GAE 优势估计),在 OU 均值回复合成市场上训练 200 轮:episode 奖励从 -8.9 爬到 +7.0,agent 自己学会『涨多了做空、跌多了做多』的平滑连续仓位函数。样本外对比揭示连续动作的真正价值:PPO Sharpe 1.57 与硬规则 ±1 满仓反转的 1.75 接近,但最大回撤只有其 1/5(-3.5% vs -17.2%)、换手只有其 1/5——它学到的不是更强的信号,而是更聪明的仓位。拆穿 reward=收益率就够了/训练曲线涨=真学会了/RL 免疫过拟合/σ 收敛=策略成熟四类陷阱(中阶)。
15 min Chinese
返回