运行更多EA不会自动分散风险。不同品种可能表达相同的货币方向,平均相关性低的策略也可能同时亏损。真正有用的问题是:整个账户在同一时刻承担了哪些敞口?
请结合检查货币方向、同时持有的仓位、时间对齐的净值变化及共同压力情景。下文的仓位案例和另一个相关性案例都是虚构的教学示例,既不能证明组合盈利,也不规定资金分配。
1. 衡量之前,先界定完整组合
先按照EA评估指南核查证据,再列出评估范围内的每个EA、手动仓位和挂单。纳入共享资金或风险限额的账户及终端;即使账户彼此独立,也需要统一报告货币并对齐估值时点,才能合并结果。
- 仓位:账户、EA版本、品种、方向、交易量、合约规模及当前估值价格。
- 未来敞口:挂单、网格、摊平规则及允许的最大同时持仓数。
- 数据:统一时钟、账户货币、出入金、浮动损益、成本及缺失区间。
- 依赖因素:共有货币、信号、交易时段、经纪商、流动性报价源、VPS及执行限制。
用部署记录和核查过的Magic Number归属范围识别交易,但不能仅凭编号认定归属。未知敞口应保留为未知。缺少持仓导出不等于账户空仓;尚未成交的挂单不是当前敞口,但以后可能转为敞口。
2. 把每个货币对拆成货币方向
在这里采用的线性外汇模型中,买入货币对会对基础货币形成正敞口、对报价货币形成负敞口;卖出则相反。BUY EURUSD和SELL USDJPY都包含做空USD的成分。因此,订单标签相反,并不一定抵消同一种风险。
阅读经纪商实际的合约规格,包括基础货币、利润货币、合约规模和账户货币换算方式。不要假定所有品种或美分账户使用相同单位。下图描述的是仓位对价格变化的敞口,不是实物交割或现金借款。账户抵押资产和所需保证金应另行处理。
3. 计算固定时点的货币敞口快照
假设有三个虚构的线性外汇仓位,每个为0.10手,每手合约规模为100,000基础货币单位。采用下表参考价格,首轮梳理不计成本,并固定仓位规模。正负号表示各币种以自身单位计量的方向性成分。
| 系统 | 仓位 | 手数 | 参考价格 | 方向性货币成分 |
|---|---|---|---|---|
| EA-A | BUY EURUSD | 0.10 | 1.1000 | +10,000 EUR / −11,000 USD |
| EA-B | BUY GBPUSD | 0.10 | 1.2500 | +10,000 GBP / −12,500 USD |
| EA-C | SELL USDJPY | 0.10 | 150.00 | −10,000 USD / +1,500,000 JPY |
USD成分相加为−11,000 − 12,500 − 10,000 = −33,500 USD。其他净敞口为+10,000 EUR、+10,000 GBP和+1,500,000 JPY。不要把不同币种的单位直接相加成一个总数。该快照揭示共同的USD敞口,不代表入金、已用保证金或特定百分比变动下的保证亏损金额。
4. 施加一致的共同冲击
保持仓位不变,使用下表虚构价格重新估值。EURUSD和GBPUSD各较参考价格下跌1%,USDJPY则上涨1%。仅为算术演示使用无点差的单一估值价格,不模拟真实Bid/Ask成交、费用、保证金约束或EA反应。
| 品种 | 参考价格 | 冲击后价格 | 情景损益 · USD |
|---|---|---|---|
| EURUSD | 1.1000 | 1.0890 | −$110.00 |
| GBPUSD | 1.2500 | 1.2375 | −$125.00 |
| USDJPY | 150.00 | 151.50 | ≈ −$99.01 |
尽管品种和BUY/SELL标签不同,三个仓位都亏损。成本前合计亏损约$334.01,相当于示例净值$10,000的3.34%。这些比例描述选定情景,不代表建议风险水平。实际点差、跳空、汇率换算和仓位变化可能造成不同或更大的亏损;扩展模型时可参考交易成本指南。
可选:复算报价货币换算
EURUSD:10,000 × (1.0890 − 1.1000) = −$110。GBPUSD:10,000 × (1.2375 − 1.2500) = −$125。USDJPY空仓亏损10,000 × (150.00 − 151.50) = −15,000 JPY;按冲击后的价格换算得−15,000 / 151.50 ≈ −$99.01。将未四舍五入的USD结果相加:−110 − 125 − 15,000 / 151.50 ≈ −$334.01。小数点和千位逗号采用英语数字格式。
5. 先对齐数据,再计算相关性
实际评估应采用相同区间和有记录的数据序列,包含浮动损益变化、已实现结果及已归属成本。核对出入金和未分配的账户费用。按平仓日期汇总已平仓交易的利润,可能掩盖同时存在的浮亏。明确分析的是以指定资本为分母的收益率,还是固定基准的损益贡献;仓位大小变化会扭曲比较。
使用统一时间戳和重叠样本日期。经核实确实没有持仓的区间可以贡献零;缺失价格或更新不能悄悄按零处理。记录采样频率、观测数量和仓位规模变更。货币对价格相关性不自动等于EA结果相关性,因为入场、方向、持有时间和执行方式不同。
6. 理解零相关为何仍允许共同亏损
这个另行构造的案例采用系统X和Y在四个对齐区间的净值损益变化贡献,仓位规模固定,没有出入金或未分配成本。它与上述三个仓位快照无关。数值包含已实现及浮动损益变化,不是分别配置资金的账户收益率。
| 区间 | X · USD | Y · USD | X + Y · USD |
|---|---|---|---|
| I1 | +$100 | +$100 | +$200 |
| I2 | +$100 | −$100 | $0 |
| I3 | −$100 | +$100 | $0 |
| I4 | −$100 | −$100 | −$200 |
两个样本均值都是零。交叉乘积抵消,因此皮尔逊相关系数r = 0.00;但在I4,两者各亏损$100,账户亏损$200。零线性相关不等于独立,也不排除同时亏损。四个特意构造的观测值足以展示这个逻辑,却不足以估计持久关系或为组合提供依据。
7. 重建组合净值,而不是相加回撤
在X/Y案例中,共享账户初始资金为$10,000,没有出入金。I1–I4之后,净值依次为$10,200、$10,200、$10,200和$10,000。观测到的账户最大下降为从$10,200峰值回落$200,约1.96%。这里只使用提供的估值时点,区间内部是否出现更深亏损仍未知。
在相同估值时点,X的累计贡献自其峰值下降$200,Y下降$100。两者相加是$300,而不是账户的$200回撤。各组成部分的峰值和下跌未必同时发生。不要对公布的回撤百分比求平均或直接相加。应在统一货币下重建时间同步、出入金处理一致的净值;分别注资的账户还需要真实的资本及换算历史。
9. 在固定假设下比较新增EA
采用相同日期、资本基准、敞口政策和成本模型,比较现有组合与拟新增EA后的组合。保留全部候选,并使用时间上更晚的验证期,而不是挑选历史曲线最好看的组合。除新增EA的独立利润外,还要检查它对货币敞口、同时亏损、净值回撤和保证金占用的边际影响。
如果共享保证金、入场限制或执行条件改变交易,简单相加独立回测可能无效。按时间顺序重放组合规则,执行回测检查,然后进行受控的前瞻观察。说明哪些内容无法重建。资金配比以及账户级暂停、恢复规则需要单独定义;本指南诊断敞口,不选择权重。
10. 保留组合评审表
增加敞口之前,一份有用的评审应能回答以下问题。事先确定评审标准,并保留数据缺失标记和被否决的候选。
- 是否纳入全部当前仓位及挂单、网格的潜在敞口?
- 是否核实合约单位、货币成分和换算方法?
- 净值变化、成本及出入金是否使用相同时间基准?
- 共同货币冲击或执行冲击同时影响仓位时会怎样?
- 共同亏损历史是否支持对相关系数的解读?
- 能否按真实共享规则重现组合净值和保证金路径?
记录快照日期、配置版本、样本期间、归属方法、情景及未解决的限制。不完整的敞口图不能证明分散化。即使评审记录充分,也不能确定未来亏损上限或保证新增EA能改善组合。
11. EA组合风险常见问题
不同外汇货币对能保证分散风险吗?
不能。它们的货币成分可能重叠,策略也可能对同一事件作出反应。先同时梳理方向和规模,再检查组合净值与共同冲击。
零相关意味着EA不会同时亏损吗?
不是。人为构造的X/Y样本皮尔逊相关为零,却存在同时亏损区间。线性相关本身既不能证明独立,也不能描述所有极端结果。
能否相加各EA的最大回撤?
不能借此得到真实的组合回撤。峰值、时点、出入金和仓位约束的差异都重要。应重建共同净值路径;相加结果可以作为单独标明的压力假设,而非实际观测的组合统计量。
货币敞口图等同于所需保证金吗?
不是。方向性名义金额描述仓位的价格敏感性。保证金由经纪商的合约和账户规则决定,且可能变化。保证金或止损订单都不能保证实际亏损上限。
12. 来源及适用范围
官方MQL4品种属性参考说明合约和货币字段;NIST统计术语表定义线性相关;Investor.gov分散投资指南说明分散化不能保证避免亏损。它们不会验证这些虚构组合,也不选择资金权重。来源核查日期:2026-10-18。
这里的全部仓位、估值和区间结果都是虚构的教学输入。共同冲击计算与另行构造的X/Y数据是不同案例,不是回测或已验证业绩。本文不声称未来收益、亏损概率或适合的组合配比。