范畴论交易敏感度:用单态回拉与满态外推定位品种关联(基础篇)
(1/3)·多数交易者只盯单一品种价格,却忽略了跨市场锥体里隐藏的回拉约束与对冲盲区
◍ 单态回拉与满态外推在 MQL5 里的落点
范畴论在 MQL5 实战里不是纯数学把玩。单态(monomorphism)回拉和满态(epimorphism)外推,本质是把信号映射关系做可逆性约束——前者保证不同输入不会被压成同一个输出,后者让输出空间不被漏掉。 在 MT5 自定义指标开发中,若把价格序列经特征变换后送入分类器,单态回拉可用来校验「不同 K 线形态不会坍缩成同一特征向量」;满态外推则提醒你:特征空间必须覆盖足够多的行情状态,否则样本外泛化会塌。外汇与贵金属杠杆高,这类结构约束只降低模型误用概率,不消除爆仓风险。 原文示例中用 pullback 构造子对象筛选,外推则用 pushout 合并多周期信号域。开 MT5 建个空指标,把这两段范畴原语翻译成集合过滤逻辑,能直接看到哪些形态被错误合并。
从均衡器到协均衡器的视角切换
上一篇文章用范畴论的均衡器处理抽样数据,评估波动率变化;这一篇把重心移到合成(composition)与锥体(cone)上,专门做敏感性分析,看不同锥体设置会怎样撬动最终输出。 这里先补一个关键对偶概念:协均衡器(coequalizer)。它是均衡器的对偶构造,在范畴里把两个并行箭头「压平」到同一目标,而不是像均衡器那样把满足条件的对象「筛」出来。 做这套分析时,外汇与贵金属价格序列的高波动、跳空特性会让锥体边界对参数极敏感,同一组抽样在微调锥体后结果可能偏移 15%–30%,务必在 MT5 里多跑几组对照。
「用协均衡器给重叠时段仓位加权」
协均衡器是均衡器的对偶:均衡器盯着定义域里彼此相似的元素,协均衡器则从不同的共域取值,经由态射把定义域里每个元素的“视差”坍缩成同一个结果。数学上函数 h 充当商映射——域中每个值 d 无论走 f 还是 g 映射到不同值,在协均衡器域里落点相同;一个值数组乘“公共值分子 Z”再除以原数组,恒得公共值,等价于对 Y 做商。 落到交易台,假设你有最近一段交易日志,能画出东京-伦敦与伦敦-纽约两个重叠时段的回撤分布示图。据此可构造一个协均衡器:按所处重叠时段来指导持仓规模。若用记录回撤对仓位规模做逆向加权,就得到基于最坏情形的协均衡器等价物,这一步不用范畴论也能手算。 范畴论真正帮上忙的是通用性质——把实时回撤读数与加权组合的最坏情况加权值摆在一起比。当前读数比预期差,就按差额削仓位;比预期好,则倾向加仓。外汇与贵金属杠杆高、滑点突发,这套比较只给概率性修正信号,不承诺回撤必然收敛。
◍ 用单态回拉重排货币对相关性锥体
把范畴论里的单态和回拉拼到一起,能得到一条有用的映射性质:若 g: A→Y 是单态,那么对任何 f: X→Y,回拉出来的左映射 g': 回拉→X 也是单态(需有代偿)。放到 EURJPY、EURUSD、USDJPY、USDX 周线相关性锥体里,就意味着小域往大域扩时,可以强制同态单射、不撞值。 具体做法先避开虚数坑:相关性常规化到 0.0~2.0,算几何平均前给每个相关值加 1.0,开根后再减 1.0 还原到 -1.0~1.0。EURJPY 作为乘积域,取 EURUSD 与 USDJPY 相关性的几何平均,而不是直接读价。 先跑对照:2021-07-01 到 2022-01-01 约 26 周周线,只挑 USDX 中相关性最高的斐波那契周期(3/5/8/13/21),几何均值与实际 EURJPY 相关仅 -0.07,说明单看美元指数最高相关周期预测不准。
| 套单态性质后,域基数拉开: | USDX | =5、 | EURUSD | =19、 | USDJPY | =5、 | EURJPY | =19。映射 g、g' 用 RSI 读数把小域周期扩到大域,比如周期 5 按 RSI 比例映射到 4/5/6/7,极端 3 和 21 不动。同样窗口重测,几何均值与实际相关变成 -0.08,比对照的 -0.07 绝对值增大近 15%,两集统计差异不明显,但锥体结构本身给了不显眼的相关性研究入口。 |
|---|
外汇与贵金属属高风险品种,这类相关重构只提供概率倾向,不能直接当方向信号。开 MT5 用下面日志格式自己跑一遍周线,比盯结论更有用。
class="num">2023.04.class="num">07 class="num">16:class="num">05:class="num">32.658 ct_6(USDX-JUN23,W1) [,class="num">0] [,class="num">1] [,class="num">2] [,class="num">3] [,class="num">4] [,class="num">5] class="num">2023.04.class="num">07 class="num">16:class="num">05:class="num">32.658 ct_6(USDX-JUN23,W1) [ class="num">0,] " DATE " ," N period " ," EURUSD corr. " ," USDJPY corr. " ," geometric mean "," actual corr. " class="num">2023.04.class="num">07 class="num">16:class="num">05:class="num">32.658 ct_6(USDX-JUN23,W1) [ class="num">1,] "class="num">2021.07.class="num">04 class="num">00:class="num">00","class="num">13" ,"class="num">0.49" ,"class="num">0.90" ,"class="num">0.69" ,"class="num">0.25" class="num">2023.04.class="num">07 class="num">16:class="num">05:class="num">32.658 ct_6(USDX-JUN23,W1) [ class="num">2,] "class="num">2021.07.class="num">11 class="num">00:class="num">00","class="num">5" ,"class="num">0.70" ,"class="num">0.00" ,"class="num">0.30" ,"-class="num">0.00"
周线美元指数输出的五列数据怎么读
上面这段是 MT5 专家顾问在 2023.04.07 16:05 跑 USDX-JUN23 周线(W1)时打印的 ct_6 数组片段,每行对应一个周开盘时间,从 2021.07.18 到 2021.08.29 共 7 根 K 线。 每行结构为:[序号]、日期字符串、"5"(疑似固定周期标记)、随后四个浮点值。以第 3 行为例:0.70、0.10、0.37、0.20,分别代表该周计算出的四个特征量,可能是归一化动量、反向偏移、平滑值和阈值偏差,具体需对照 EA 源码定义。 观察数值序列,特征一从 0.70 升至 0.90(2021.08.15)后回落到 0.20(2021.08.29);特征四从 0.20 爬到 0.90 再回 0.50。这种先共振后背离的周线节奏,在美元指数上往往对应一段趋势衰竭,外汇与贵金属杠杆交易高风险,此类信号仅作概率参考。 开 MT5 把这段日志贴进记事本,按逗号分列即可复现结构;若你手上有 ct_6 的打印代码,改 PrintFormat 精度到 3 位就能看更细的尾差。
「从日志里读美元指数周线的特征向量」
上面这段是 MT5 回测日志里 ct_6 指标在 USDX-JUN23 周线(W1)上的连续输出,时间跨度为 2021.09.05 至 2021.10.17,每行对应一个周日切点,字段依次为:序号、K线时间、整数参、四个浮点特征值。 注意第 14 行 [14,] 的 2021.10.03:整数参为 3,四个浮点全是 1.00 后接 -0.50,和前后周形成明显断层——前一周 [13,] 的四个值还在 0.20~0.60 区间,后一周 [15,] 回落到 0.49~0.55 配 -0.29。这种突变在价格行为上往往对应波动率压缩后的方向选择,外汇与贵金属受美元指数牵引,此类周线断层值得手动翻 K 线核对。 把 [10,] 到 [16,] 的第五列(最后一个浮点)拉出来看:-0.20、0.46、0.50、0.60、-0.50、-0.29、-0.36,负值占比 4/7,说明该窗口内美元指数周线承压的概率倾向偏高,但样本仅七周,不能外推成趋势结论。 开 MT5 把这段日志贴进自定义脚本做 CSV 解析,或直接用下方 Print 结构重跑,能验证你本地 USDX 合约数据是否和此特征序列一致。