- 共形强化学习交易:给 RL 动作一个可验证的覆盖保证
RL 输出一个 Q 值就下单,但点估计不带可靠性凭证——分布一漂移就「自信地犯错」。共形预测包裹任意预测器输出预测区间,有限样本+分布无关保证以 ≥1−α 覆盖真实收益,唯一假设是可交换性。据此设计带可验证下限的交易规则:仅当共形收益下界>0 才出手。纯 numpy 分裂共形+局部自适应,异方差+协变量偏移合成 bandit 上实测:同分布目标覆盖 90% 实测 91.1%(保证兑现);门控把开仓即盈利命中率从 76.9% 抬到 97.4%,代价出手率降到 17.1%。诚实翻车:可交换性破坏→偏移 3.0 时覆盖从 90% 崩到 53.8%;边际覆盖达标≠处处达标——普通等宽区间高波动区只覆盖 49%、低波动区 98%,需局部自适应共形拉回 87%~92%。拆穿保证=永真/边际=条件/区间=预测准/无分布=无假设/覆盖达标即可交易五类陷阱(中阶)。
16 min Chinese - 孤立森林异常检测:用随机孤立路径给极端行情打分
传统异常检测先给『正常』建模——估个分布、算个距离,再看谁离得远。孤立森林反着来:异常点本来就少、本来就偏,随机切几刀就能把它单独隔出来,正常点则要切很多刀。于是『被孤立所需的平均路径长度』直接变成异常分数,不需要距离度量、不需要分布假设。合成实验:1000 个交易日、4 维特征(绝对收益、5 日已实现波动、成交量 z、相关性尖峰 z),注入 25 个崩盘日。孤立森林 AUC 0.984,只看收益 z-score 的单变量基线 AUC 0.782——差距来自多维联动:单独看每一维都不算极端、但『量价相关性同时抬升』的日子,只有多维方法抓得住。top-25 命中精度 60% vs 基线 44%。森林规模敏感性:5 棵树 AUC 0.964,50 棵 0.986,100 棵之后彻底平台化——路径长度平均的收敛速度快得惊人。纯 numpy 实现(随机特征+随机分割点递归建树、c(n) 修正项、2^(-h/c) 分数归一化),拆穿分数有绝对阈值/无监督=不用验证/维度越多越好/能检测=能预测/训练集必须干净五类陷阱(中阶)。
12 min Chinese - One-Class SVM 异常检测:用高维边界圈出『不正常』的交易日
高斯类方法(马氏距离)默认『正常』只有一个中心,偏离中心越远越异常。但真实市场的正常状态往往是多峰的——平静区制和承压区制是两团各自正常的云。麻烦就藏在两团之间的『山谷』:那些既不像平静、也不像承压的交易日,恰恰是最危险的,而马氏距离会把山谷判成中心(AUC 仅 0.080,方向都反了)。One-Class SVM 用 RBF 核学一条非凸的支撑边界,把两团正常各自圈住、山谷留在外面:合成实验 1000 个正常日(两区制)+ 30 个山谷异常日,OC-SVM AUC 0.961、top-30 命中 33%,而马氏距离几乎为零。纯 numpy 实现带盒约束单纯形投影的对偶求解器,附 ν / γ 双参数敏感性曲线与五类真实陷阱(中阶)。
14 min Chinese - 分位数 RNN 风险预测:用分位损失给出收益区间
点预测答不出「明天最坏跌多少」。分位数 RNN(QRNN)把 RNN 的隐状态接 5 个输出头,用 pinball 损失同时学 τ=0.05/0.25/0.5/0.75/0.95 五条条件分位数——隐状态自动记住波动聚集,区间随市场松紧收放。纯 numpy 从零实现 Elman RNN + 截断 BPTT + 分位损失(手推 pinball 次梯度),在 GARCH(1,1)+t(5) 合成收益上样本外 1000 步实测:QRNN pinball=0.2720 逼近 Oracle(真实 σ+t 分位)的 0.2694,90% 区间覆盖 88.5%,区间宽度与真实波动相关 0.861——碾压滚动历史分位的 0.137;但诚实告败:EWMA-高斯(RiskMetrics,2 个参数)pinball=0.2717 与 QRNN 打平,因为数据生成过程恰好是它的主场。真实翻车实测:独立训练 5 个分位数模型 → 1.9% 时间步分位数交叉(q̂₀.₀₅ > q̂₀.₂₅),联合训练+单调重排才干净;高波动 regime 覆盖率掉到 86.8%。拆穿区间=分布/覆盖率达标=校准/深度必胜EWMA/交叉不重要/合成赢=实盘赢五类陷阱(中阶)。
14 min Chinese - 稳健协方差 MCD 估计:用最小协方差行列式抗住极端值污染
协方差矩阵是组合优化、风险模型、配对交易的地基,但样本协方差有个致命弱点——单点崩溃:只要几个极端值,整个相关结构就被拖歪。合成实验(真实相关 0.7,10% 样本被反向污染):经典相关系数直接崩到 −0.068(连符号都错了),MCD 稳健估计还原到 0.611。距离-距离图上 MCD 把 40 个污染点里的 27 个甩到右上方(FP 仅 1),经典马氏距离只抓到 11 个。最扎心的是组合权重:真实最小方差权重是 (1.04, −0.04),经典协方差给出 (0.62, 0.38)——把该做空的资产配成了 38% 多头,MCD 给出 (0.95, 0.05) 基本还原。核心机制:在所有样本子集里找行列式最小(最紧致)的那 h 个点估协方差,极端值天然行列式大、被排除在外。附一致性校正因子、C-step 迭代、以及『稳健≠无脑抗噪,h 选太大照样被污染拉偏』的反面教材(中高阶)。
17 min Chinese - 分位数回归森林:给出收益分布而非单点预测
传统模型只给「明天涨 3%」一个点预测,却答不出「这个数我有多不确定、最坏会跌多少」。分位数回归森林(QRF, Meinshausen 2006)把随机森林的每个叶节点存成样本集合,预测时直接对落点叶的样本求经验分位——于是一次预测吐出整条条件收益分布,而非一个点。本文用纯 numpy 从零实现回归树 + 随机森林 + QRF,在「异方差 + 左偏」的合成收益上实测:90% 区间经验覆盖 QRF=0.874、OLS-正态=0.902、CRPS QRF=0.531 优于 OLS 正态的 0.563 与线性 QR 的 5.326,并诚实拆穿「森林=平滑均值 / 分位单调 / 样本量免费 / OOB 替代 / 分布外可信」五类真实陷阱(中阶)。
12 min Chinese - Vine Copula 依赖建模:用层级藤把高维尾部联动拆成条件二元对
多元高斯 copula 有一个致命盲点:它假设所有依赖都对称、且上下尾一致。但金融市场最关心的是「危机时大家一起跳水」的下尾联动——这正是高斯 copula 2008 年失灵的根源。Vine Copula 把 D 维依赖拆成一层层二元 copula 的「藤」,每层只处理一对变量(可带条件),于是能用 Clayton 这种擅长下尾的族去刻画危机共跌,又能在不同层用不同族。本文用纯 numpy 从零实现 C-Vine 的 Clayton 采样与 h-函数,在 4 维合成数据上把下尾依赖织到 0.71(理论值 0.707),而同样 Kendall's tau 的高斯 copula 只有 0.40,并用核密度、散点危机区、柱状对比三类真实图说清这件事,最后诚实拆穿「藤结构选择 = 维度爆炸」「参数估计靠成对拟合」「条件采样偏倚」三条最易被忽视的边界(中阶)。
14 min Chinese - 桥水全天候风险平价:把「四种经济天气」都装进一个组合里
传统 60/40 表面分散,其实风险几乎全压在股票上——股票贡献了 ~97% 的组合波动,一旦股票崩,债券那 40% 根本兜不住。桥水全天候(All Weather, Dalio 1996)换了个思路:先按「对风险的贡献」而非资金额分配(风险平价),再让资产覆盖「增长↑/↓ × 通胀↑/↓」四种环境,任一种天气都有资产赚钱。本文用合成宇宙算实:60/40 股票风险贡献 97.3%,全天候压到均衡(股票 39.8% / 长债 37.4% / 中债 6.2% / 黄金 9.0% / 商品 7.6%);四种环境里 60/40 在衰退年亏 -3.4%,全天候几乎不亏;16 年混合轮动下全天候 Sharpe 0.26、最大回撤 -16.2%,远好于 60/40 的 0.12 / -45.2%。附完整 Python 与五类真实陷阱(中阶)。
10 min Chinese
返回