组合趋势指标,首先要为每种工具分配职责。方向过滤、强度检查和入场触发回答的是不同问题。只有当新增显示能以可解释、可检验的理由改变决策时,它才有价值。
本指南构建这一决策流程,包括信号冲突、确认缺失和可按时间复现的示例。趋势识别请参阅趋势解读指南,计算方法和平台差异请参阅趋势指标比较指南。本文重点是如何将观测值转化为规则。
1. 先分配职责,再组合参数
某个指标可能说明方向,却无法回答行情是否有序、回调是否结束,或入场成本是否可接受。应将这些问题分开。价格结构和附近价位提供背景,但指标的认同不会使这些价位变成可靠屏障。
| 决策层次 | 观测示例 | 仍需规定的规则 |
|---|---|---|
| 背景与方向 | 价格位于上行均线上方;事先识别的支撑位和阻力位。 | 允许哪个交易方向、采用哪个周期,以及背景何时失效。 |
| 强度或动量 | ADX及其DI关系,或MACD相对信号线的位置。 | 明确的阈值或比较条件,而不是图形看起来很强。 |
| 入场与失效 | 已收盘价格越过固定基准。 | 时点、有效期、未满足的条件,以及下一个可执行报价。 |
| 风险敞口与离场 | 预先规定的止损基准、交易量上限和离场事件。 | 仓位大小、成本、经纪商限制及现有订单管理。 |
在窄屏上可横向滚动查看表格。
2. 区分有效确认与重复信息
均线交叉与MACD高于零,可能描述的是非常接近的均线关系。同时使用两者,可能只是对类似价格信息重复计数。ADX关注方向性运动的另一面,但同样来自价格数据,并非统计上独立的证据。
为每个新增条件写明理由。然后在相同数据、成本和风险假设下,对比包含与不包含该条件的完整方法。记录符合条件的事件、被拒绝的事件、延迟、回撤和净结果。交易次数减少或历史图形更平滑,本身不能证明改进。
选择强制条件,或明确规定的评分法。不要看到结果后才在两者之间切换。多数票不能推翻强制风险上限,相关信号的数量也不能被当作成功概率。
3. 让均线与ADX回答不同问题
示例性的做多过滤条件可以要求:已收盘价高于上行MA、ADX高于选定阈值,且+DI高于−DI。MA描述相对于平滑基准的方向,ADX描述方向性强度,DI比较提供方向关系。入场触发仍须单独定义。
例如,假设ADX(14) = 27, +DI = 24, −DI = 16,候选阈值为25。这些读数通过上述强度和DI检查。如果改为+DI = 14, −DI = 26,而ADX仍为27,做多过滤器便无法通过DI条件。这些是假定的独立快照,不是由后文示例计算得出的数值。
本文并未证明14或25是最优参数。高ADX可能在行情转换期持续存在,低ADX也可能出现在行情启动之前。过滤条件可能同时排除亏损和盈利事件,或增加延迟。可结合ADX策略的独立规则框架和自己的受控测试评估其贡献。
4. 组合均线与MACD,而不是累计票数
一种分工是用较慢的过滤器判断背景,用较快的动量事件触发。应明确MACD需要高于零、高于信号线,还是在最新已收盘K线上穿越信号线。持续状态和新发生的交叉是不同规则。信号一致时,价格可能已经走完相当一段行情。
标准MT4将MACD主序列画成柱状,这些柱并不自动等于主线减信号线。规则中应明确两条序列。下例明确采用SMA信号线和较短的教学周期,不会暗中套用另一平台的显示方式或默认参数。
5. 对齐不同周期的已完成观测
先选定决策时钟。每根H1收盘时,只使用在该时刻已经收盘且可用的高周期观测值。包含该H1的H4 K线可能仍在形成。不能因为当前历史图已显示最终收盘价,就提前使用当时尚未完成的数据。
合成示例统一使用同一经纪商服务器时间,H4起始时刻为00:00, 04:00, 08:00, 12:00,并假设没有缺口。在11:00,最新已收盘H4覆盖04:00–08:00。08:00–12:00的K线尚不能作为完整观测。真实数据必须检查自身的交易时段边界、缺失K线和数据就绪情况。
在MT4时间序列中,下一根K线开始且数据可用后,索引0表示形成中的K线,1表示最新已收盘K线。历史多周期回放应映射实际K线时间,并逐次核对决策时是否已经收盘。包含某个时间戳的K线不一定已经完成。不要将今天的位移索引用于过去的决策。
6. 一个可核验的MA与MACD决策示例
这是基于合成EURUSD Bid收盘价的计算,不是回测、价格预测或交易建议。示例不模拟成交或收益。短周期使初始化过程清晰可见:H4与H1采用SMA(3),H1 MACD采用EMA(3) − EMA(5),信号为3个主线值的SMA。图表位移为零,参数和价格基准仅用于说明。
确定当时可用的背景
前一天20:00,以及随后00:00, 04:00, 08:00结束的四个H4收盘价为1.20200, 1.20400, 1.20300, 1.20500。前一个SMA为1.20300,最新SMA为1.20400。因此最新H4收盘价高于上行均线。在下一根H4完成之前,保持这一背景不变。
复现低周期输入数据
以下H1 K线按收盘时间标记。EMA 3在06:00用最初三个收盘价的均值初始化;EMA 5在08:00用最初五个收盘价的均值初始化。之后使用EMA = α × close + (1 − α) × previous EMA,其中α = 2 / (period + 1)。该初始值规定属于示例的一部分,并不保证与拥有更长历史的终端一致。
| H1收盘时间 | Bid收盘价 | 可用性说明 |
|---|---|---|
04:00 | 1.20300 | 首个输入值。 |
05:00 | 1.20350 | 继续初始化。 |
06:00 | 1.20400 | 快速EMA初始值:1.20350。 |
07:00 | 1.20450 | 快速EMA更新,慢速EMA初始值尚不可用。 |
08:00 | 1.20500 | 慢速EMA初始值:1.20400;得到首个MACD主线值。 |
09:00 | 1.20460 | 只有两个主线值,SMA信号尚不可用。 |
10:00 | 1.20520 | 首个完整SMA信号;主线低于信号线。 |
11:00 | 1.20600 | 主线在已收盘K线上穿信号线。 |
使用未舍入的中间值,H1 SMA在10:00为1.20493333,在11:00为1.20526667,此处仅展示值作舍入。MACD主线与信号在10:00分别为0.00034167和0.00039722,在11:00分别为0.00041528和0.00036898。主线两次都为正,但只有后一次高于信号线。
应用事件发生前写好的规则
为便于教学,在评估最后两根K线前,将突破基准固定为1.20550,失效基准固定为1.20400。这些是明确声明的输入,并非从仅含收盘价的数据中事后发现的摆动价位。真实结构价位需要另外记录识别方法。
- 背景:最新已收盘H4价格高于其上行SMA。两个决策时点均满足。
- 价格位置:已收盘H1价格高于其上行SMA,且严格高于固定突破基准。突破比较在
10:00未通过,在11:00通过。 - 新的动量事件:主线必须为正;前一根已收盘H1满足
main − signal ≤ 0,最新一根满足main − signal > 0。在11:00可观察到该交叉。此前缺失的信号值不能当作零。 - 判断结果:所有必要观测在
11:00一致。这只产生潜在做多的候选资格,并不表示在该历史Bid收盘价成交。
7. 处理一致、冲突与确认缺失
示例呈现三个有用状态。09:00时信号初始化未完成,无法取得确认。10:00时H4过滤器为正面,但MACD低于信号且价格未越过基准,候选被拒绝。11:00时定义的必要条件一致,才进入执行与风险检查。
“拒绝”不等于“卖出”。仅做多规则失效,并不会创造做空规则。必要观测发生冲突或不可用时,应记录原因,等待新的合格事件。不要为了挽救当前设想而放宽阈值、更换周期,或添加一个令人安心的指标。
在区间行情中,价格可能反复穿越均线和固定价位,动量信号也交替出现。如需排除区间,应在测试前定义排除规则。跳过这些阶段同样有机会成本。支撑、阻力和已确认结构必须基于当时可用的信息识别;相关独立流程见市场结构指南。
8. 分开规定资格、执行、失效与离场
若将教学示例变为测试规格,只允许在满足条件后下一根H1的首个可交易报价入场。若该报价下必要数据、点差、交易量、保证金或经纪商止损规则未通过,应记录跳过。不要无限延长候选资格。买入使用Ask,未必等于上一根Bid收盘价。
只有当声明的1.20400低于实际买入价,且符合经纪商规则时,才能将其作为拟定的初始保护止损。应依据实际入场至止损距离、合约规格、预设的金额风险预算和成本预留确定仓位。没有合规交易量可满足预算时,应跳过。仓位计算和相关风险敞口见风险管理指南。
入场前,若新完成的H4不再满足背景规则,或已收盘H1价格处于失效基准或更低,应取消候选。入场后,本示例在保护止损触发,或H1收盘价等于或低于SMA后请求平仓,以先发生的事件为准。不设置止盈目标。基于收盘价的平仓请求在可用报价执行,止损可能受到滑点或跳空影响。
同一事件不得叠加仓位或重复下单。离场后要求新的合格交叉。对于EA,指标值、资格规则、订单请求和经纪商确认的持仓是不同状态。应核对现有订单并记录拒单;重复到来的tick不能复制同一笔计划交易。
9. 将SAR作为可选的持仓管理工具
Parabolic SAR可以作为入场后的另一种移动止损参考来研究,而不是额外的一张入场票。应明确何时读取已完成值、如何验证止损修改,以及多头止损是否只能收紧。图上的点并不等于经纪商已接受的订单。
不要事后只给亏损案例加上SAR。应将其作为独立固定的离场变体,与原始离场方法比较,并保持相同入场和风险假设。区间可能导致频繁翻转;每次翻转都反向持仓会引入另一套策略,而不只是更换止损。
10. 检验每个条件的贡献
比较变体之前,固定数据源、初始化、观测时刻、入场、到期、离场和成本。从简单基准开始,每次只改变一个条件。保留所有尝试过的变体记录,而不只保留最终胜出者。反复搜索周期、阈值、货币对和排除条件,会增加拟合历史偶然性的风险。
将开发历史与预留的较晚评估期分开。一旦评估结果影响修改,该时期就不再是未接触过的证据。应检查邻近参数和不同市场状态,包括区间。更完整的验证流程见优化与过拟合指南。
即使入场使用已收盘K线,只要止损或其他规则可在K线内部生效,仅用开盘价测试就不充分。数据与建模必须覆盖实际事件。应计入点差、佣金、掉期和执行假设;标准MT4测试器的建模tick并非录制的实时tick流。请遵循有记录的回测流程。
历史保留期或软件的“forward”区间仍属于历史评估。模拟账户的前向观察检验新到达的数据和运行行为,但无法重现所有实盘执行条件。若进入实盘观察阶段,仍须遵守预设的敞口与停止限制。任何阶段都不保证未来盈利。
11. 接受信号前的实用检查清单
- 能否说清每个指标的独特职责,以及采用的价格结构?
- 是否记录了品种、数据源、周期、应用价格、平滑方法和初始化?
- 在实际决策时点,每个值是否已在自身周期上完成并可用?
- 比较、交叉条件、缺失数据处理和有效期是否明确?
- 入场、取消、保护止损和离场是否是独立且可执行的规则?
- 发单前,成本、仓位、总敞口和经纪商限制是否均已通过检查?
- 新增条件是否通过受控比较、保留评估期和前向观察证明了保留理由?
12. 组合趋势指标的常见问题
应该组合多少个趋势指标?
没有通用数量。从能回答既定问题的最小组合开始。只有能解释并评估新增条件的贡献,包括它延迟或移除的事件,才应保留。
MA与MACD是独立确认吗?
不是。两者都转换价格,而MACD本身就比较均线。它们可以承担不同操作职责,但一致不代表独立证据,也不代表成功概率。
多数指标一致时就该交易吗?
只有在完整定义的方法采用该评分规则,且通过全部强制条件时才可考虑。多数票不能替代缺失的必要数据、有效止损、可接受成本或敞口上限。
能用当前H4值作为H1信号吗?
可以设计使用变化中H4值的规则,但那是需要K线内重建与测试的另一种方法。本文的收盘示例只使用H1决策时已经完成的H4观测。
缺少确认是否意味着反向交易成立?
不是。做多条件缺失或失败,只表示按该规则不能做多。做空需要独立的条件、执行逻辑和风险检查。
EA能自动执行这一流程吗?
它能自动执行明确规则,却不能提供规则有效的证据。数据对齐、初始化、同一事件去重、订单归属、经纪商限制和前向监控仍需实现与验证。
13. 保持简洁且可审计的决策流程
有用的组合应具备可识别职责、共同决策时钟和预设的冲突处理方式。算例仅演示可用性、计算和候选资格。核对平台索引时,请参阅官方MQL4时间序列文档,再独立验证完整交易规格。
外汇及杠杆交易具有重大风险。教学示例不构成投资建议。模拟或历史结果不保证未来表现。