ForexBestRobots.com比较 EA →
ZH

动量与反转 · 策略3

RSI背离外汇反转策略:确认拐点后等待价格突破

一套可检验的RSI背离模型:明确拐点确认、固定价格触发位、有效期限与成本后仓位计算,并提供可复算的EURUSD示例。

阅读约22分钟由 ForexBestRobots 编辑团队审查
价格低点下移、同一根K线上的RSI读数上升,只建立反转假设;随后还需要收盘价突破固定水平。
先确认第二个拐点,再评估价格突破与可成交报价。

背离仍然存在时,价格也可能继续朝不利于该判断的方向运行。因此,这套教学用反转模型将价格与RSI的比较、拐点得到确认的时刻,以及之后的价格突破分开定义。每一阶段都有固定规则,但任何一个阶段本身都不能证明策略具有盈利优势。

与RSI失败摆动策略不同,本模型比较的是价格拐点所在K线上的RSI读数,而不是RSI自身的一串波峰波谷。它检验的假设也不同于ROC动量延续策略。这里的“反转”是方向性假设的名称,并不表示更大级别的趋势已经转向。

1. 先固定规则,再选择示例

使用EURUSD H1 Bid K线,以及基于收盘价、采用Wilder平滑的RSI(5)。短周期、两侧各2根K线的严格拐点规则、3–12根K线的拐点间隔和4根K线的触发窗口,都是明确的教学设定,并非优化结果或实盘推荐参数。

每个交易品种最多维持一个有效监测周期,且只能在空仓时启动。按时间顺序记录所有已确认的高点和低点,包括在监测周期内或持仓期间观察到的拐点。这些新记录此时不能替换固定水平,也不能启动另一个监测周期。

发生取消、到期、触发信号用尽或平仓后,不得在同一根已收盘K线上重新启动。之后新确认的拐点,可以与同类的前一个拐点组成新配对。若模型空闲时两个方向同时满足条件,则两个方向都跳过,但保留拐点记录。

2. 先确认价格拐点,再读取RSI

低点P的Bid最低价必须严格低于此前2根和此后2根K线的最低价。五根K线必须全部收盘。高点则须严格高于另外四根K线的最高价。只要比较的极值出现相等,该拐点就不成立。这是本模型的严格约定,并非对所有Fractals实现方式的描述。

在价格拐点本身所在的K线上读取RSI,不要另找附近的RSI低点或高点。这些读数不必同时构成RSI自身的独立拐点。BUY使用连续确认的价格低点,SELL使用连续确认的价格高点;不得为了图形更漂亮而跳过中间拐点。

只有在P+2那根K线收盘后,P才可确认。下一根K线开始且数据就绪时,P位于MT4偏移3,最新已收盘K线位于偏移1,正在形成的K线位于偏移0。MT4时间戳标识开盘时间;下文示例标注的是收盘时间。

所需OHLC或RSI缺失时,取消有效监测周期,并排除受影响的比较。不要将缺失值替换为零,也不要跨过缺失K线拼接数据。使用正价格,并比较未经四舍五入的数值。动量背离指南解释了拐点发生时间与确认时间为何不同。

BUY比较连续确认的价格低点P1和P2,并读取这两根K线上的RSI。价格更低、RSI更高构成背离,但不代表可以入场。
BUY比较连续确认的价格低点P1和P2,并读取这两根K线上的RSI。价格更低、RSI更高构成背离,但不代表可以入场。窄屏可横向滚动查看图表。

3. 建立BUY配对并固定价格水平

设P1和P2为连续确认的价格低点,P2在后,索引间隔为3–12根K线,包含两端边界。要求Low(P2) < Low(P1)且RSI(P2) > RSI(P1)。价格或RSI相等都不合格。本基础模型不设置超卖阈值、RSI再次穿越或更高时间周期过滤。

在确认P2的收盘时刻C,固定B = max High(j), P1 < j < P2,即两根拐点K线之间、排除两端后所有Bid最高价的最大值。同时固定F = Low(P2) − 1 pip。监测周期内不得移动这两个水平。

启动监测前,检查P2之后至C的每根已收盘K线,包含C。若已有任何Bid收盘价> B,则按本规则将该配对判为过晚并拒绝。影线上穿B或收盘价恰好等于B不会导致拒绝。C本身不能成为触发K线。

4. 等待之后的首次价格突破

只检查C之后接下来的4根已收盘H1 K线,包含第四根。每根先检查Bid最低价是否≤ F;若满足则取消,即便该K线最终收在B上方也一样。首次出现收盘价> B的K线为T;相等则继续等待。到第四根收盘仍无触发,监测周期到期。

新拐点或更明显的背离,不会重置期限,也不会改变B或F。模型不在B处挂单,不在K线内部入场。它要求之后出现收盘价突破,而不是第二个RSI信号。配对建立后,RSI上升或下降本身都不会取消配对。

无论报价被接受还是拒绝,T只能使用一次。之后的突破不能恢复该监测周期。确认与入场是不同事件:下一根H1 K线开始时,T位于偏移1,可成交报价在此后才被评估。

P2在15:00收盘,到17:00收盘后才得到确认。之后的价格触发K线T在18:00收盘。示例中第一笔数据就绪的新报价出现在18:00:10,不能回到拐点当时成交。
P2在15:00收盘,到17:00收盘后才得到确认。之后的价格触发K线T在18:00收盘。示例中第一笔数据就绪的新报价出现在18:00:10,不能回到拐点当时成交。窄屏可横向滚动查看图表。

5. 查看报价前固定BUY离场规则

BUY的SL为固定Bid下限F。在T收盘时设置TP = Close(T) + 2 × (Close(T) − F)。评估报价前固定这两个价格。为了使更差的入场看起来合格而把目标移远,会改变模型。

SL或TP首次执行时全仓离场。否则,在T之后的8根H1 K线全部收盘后,于第一笔可用报价请求市价平仓。不采用移动止损、部分平仓、摊平仓位或后续RSI离场。

目标价是几何规则,不是预期必达位置。跳空、滑点和报价缺失都可能造成大于计划的损失。若其他阻力或支撑使空间不足,应跳过交易,或另行定义过滤条件再验证;不能悄悄更改离场规则。

6. 对称定义SELL,并区分Bid与Ask

使用连续确认的高点P1和P2,间隔同样为3–12根K线。要求High(P2) > High(P1)且RSI(P2) < RSI(P1)。固定B = min Low(j), P1 < j < P2以及Bid上限U = High(P2) + 1 pip。

若P2之后至C、包含C的任何已收盘Bid收盘价已经< B,则拒绝配对。此后的4根K线中,若Bid最高价≥ U,先取消。首个收盘价< B的K线是T;相等则继续等。到期、仅使用一次、同一根K线不得复用等规则保持一致。

SELL离场按Ask执行。设置SL = High(P2) + 3 pips,由1pip的结构缓冲与2pips的点差预留组成。T收盘时固定TP = Close(T) − 2 × (SL − Close(T))。全仓离场和时间离场规则相同。

Bid上限用于取消等待中的形态,Ask止损用于保护已开的SELL仓位,两者作用阶段不同。预留点差不能重建历史Ask最高价,未来点差扩大也可能使止损更早触发。验证时应分别处理报价两侧。

7. 筛选首笔报价并检查风险预算

在T收盘后60秒内,评估数据就绪后的第一笔新报价。BUY按Ask,SELL按Bid。要求价格为正、Ask ≥ Bid且点差≤ 2pips。BUY要求SL < Bid和Ask < TP;SELL要求TP < Bid和Ask < SL。未能及时获得报价则不交易。

要求估算净盈利空间/计划止损亏损≥ 1.5。两项估算均应计入往返佣金,以及入场1pip、离场1pip的不利成交预留。实际Bid/Ask价格已经体现点差,不得重复扣除。首笔报价不合格后,该配对即已用尽。

新增计划风险不超过当前账户净值的0.5%,组合计划止损风险总额不超过1%。将每手亏损换算成账户币种,按经纪商手数步长向下取整,并检查最小手数、保证金、交易权限及止损距离。相关仓位共同占用组合预算。

这些限制不能保证所有实际亏损都被封顶。应核对合约规模、跳动价值与最小跳动单位,不要假定每点价值固定通用。EURUSD报价为小数点后5位时,1pip等于经纪商的10points。风险管理指南说明了完整的仓位计算流程。

8. 复算虚构的确认序列

表格使用背离指南中最初17根虚构K线,并明确添加另一种情境的第十八根K线。原指南下跌的第十八根属于独立的失败情境。本例用上涨的另一种情境演示触发规则;两个分支都不是真实市场证据。时间表示同一假定服务器时钟上的H1收盘。

H1收盘时间Bid开盘价Bid最高价Bid最低价Bid收盘价RSI(5)
01:001.105001.105301.104701.10500—
02:001.105001.106301.104701.10600—
03:001.106001.106301.105201.10550—
04:001.105501.106301.105201.10600—
05:001.106001.106301.104201.10450—
06:001.104501.104801.103701.1040037.500000
07:001.104001.104301.102701.1030028.571429
08:001.103001.103301.101501.1020022.018349
09:001.102001.103301.101801.1030039.393939
10:001.103001.104301.102701.1040052.596724
11:001.104001.104801.103701.1045058.277409
12:001.104501.104801.103701.1040050.684966
13:001.104001.104301.103201.1035043.586797
14:001.103501.103801.102201.1025032.283835
15:001.102501.102801.101301.1018026.313217
16:001.101801.103101.101601.1028044.606922
17:001.102801.103801.102501.1035054.492519
18:001.103501.105201.103201.1049068.532123

以最初5次收盘价变化初始化平均上涨幅度G和平均下跌幅度L:在06:00,G = 0.0003、L = 0.0005,得到RSI 37.5。之后对每个均值应用A(t) = (4 × A(t−1) + x(t)) / 5,x(t)为当期上涨幅度或下跌幅度;RSI = 100 × G / (G + L)。若G + L为零,本模型将RSI标为不可用;仅G为零时为0,仅L为零时为100。

P1在08:00收盘,最低价1.10150,RSI 22.018349,到10:00收盘后确认。P2在15:00收盘,最低价更低,为1.10130,对应RSI更高,为26.313217,在C即17:00确认。间隔为7根K线,其间没有符合规则的其他低点。

在C固定B = 1.10480和F = 1.10120。右侧两根确认K线均未收在B上方。在T即18:00,最低价1.10320仍高于F,收盘价1.10490超过B。T是第一根符合时间窗口的K线。RSI显示到小数点后6位,判断使用完整精度。

虚构的EURUSD H1 Bid K线与RSI(5)。P2在C,即17:00得到确认。T在18:00以1.10490收盘,高于B 1.10480。F和BUY止损SL均为1.10120。示例不提供后续交易结果。
虚构的EURUSD H1 Bid K线与RSI(5)。P2在C,即17:00得到确认。T在18:00以1.10490收盘,高于B 1.10480。F和BUY止损SL均为1.10120。示例不提供后续交易结果。窄屏可横向滚动查看图表。

BUY的SL为1.10120,TP为1.11230。若入场成交且价格离场均未发生,时间离场将在次日02:00到期。所给路径止于T,不包含已确认成交、后续价格或实际收益。终端若采用不同的预热历史,RSI读数可能不同;比较前应统一初始化条件。

9. 计算计入成本后的报价资格

假设USD账户净值为$10,000,每手100,000EUR,1pip等于0.0001,每手每pip价值$10,手数步长0.01。18:00:10的首笔可用报价为Bid 1.10490/Ask 1.10502,点差1.2pips。假设每手往返佣金$7,本例无持仓融资费用,并使用前述不利成交预留。

检查项计算结果
风险预算10000 × 0.005$50
含成本的每手估算亏损((1.10502 − 1.10120) / 0.0001 + 2) × 10 + 7$409
扣除成本后的每手盈利空间((1.11230 − 1.10502) / 0.0001 − 2) × 10 − 7$701
净盈利空间/计划亏损701 / 4091.713936
按步长向下取整的手数floor((50 / 409) / 0.01) × 0.010.12
该手数下的计划止损亏损0.12 × 409$49.08

这一报价满足比率门槛。若首笔报价换成Bid 1.10550/Ask 1.10562,点差仍为1.2pips,但每手亏损变为$469,盈利空间为$641:641 / 469 = 1.366738,低于1.5。此时应拒绝该监测周期,而不是移动目标价。

0.12手的示例假设组合剩余预算充足且经纪商条件有效。计划亏损为$49.08,这是估计值,并非保证的最大值。不同合约、账户币种或融资计费安排都需要重新计算。

10. 保留失败记录,不重画配对

  • 拐点极值相等、读数缺失,或选择的配对并不连续:比较无效。
  • 价格在确认C之前或当时已突破:拒绝配对,不得倒填入场。
  • 触及失效下限或上限、必要观察值缺失、窗口到期:不入场。
  • 报价过晚、成本过高或风险敞口条件不满足:用尽触发信号并记录跳过原因。

趋势可能在多次背离后继续,随后的价格突破也可能失败。等待确认排除了当时无法获得的提前入场,但可能使之后的收益风险比变差。增加价格条件并不证明信息独立,也不证明期望收益提高。

基础模型不排除新闻或特定交易时段。新闻、展期、跳空和点差扩大仍是需要记录的风险。任何新增排除条件都应作为另一个明确版本验证,并计入错过的交易。动量指标组合指南解释了相关价格变换为何可能重复同一信息。

11. 验证时保留时间顺序与订单状态

记录两根拐点K线的开盘时间、确认收盘时间、RSI读数、B、F或U、截止时间和使用状态。每根已收盘K线只处理一次,即便不允许新监测周期也要更新拐点记录。重启必须恢复相同状态,不能在完整图表上重选更好看的配对。

区分分析触发、订单请求和已确认持仓。已知拒单后,不在该监测周期重试。响应不确定时,必须先核对未平订单和历史,再发出新请求。记录实际成交与敞口,不通过放宽SL或加大仓位掩盖违规。这是规则规格,不是已测试的EA源代码。

逐根回放相等值、拐点间隔、右侧确认、过早突破、边界触及优先和到期情况。用Ask离场单独验证对称的SELL。若一根OHLC K线内同时覆盖两种离场,应使用tick先后顺序,或标明歧义并报告保守的SL先发生假设。

计入点差、佣金、融资费用和不利成交后评估完整模型。将开发与之后的评估分开,保留每个试过的变体,再用不断到来的新数据前向验证。报告交易数量、回撤、敞口和不确定性。MT4回测指南介绍整体流程;本例没有确立胜率或收益率。

12. RSI背离策略常见问题

第二个价格拐点是否就允许入场?

不允许。P2右侧先要有两根已收盘K线。在C评估配对后,模型还要等待接下来4根K线中的严格价格突破。只有触发K线收盘后才评估实际报价。

RSI自身必须形成两个拐点吗?

不需要。本约定读取所选两根价格拐点K线上的RSI。独立匹配RSI拐点将是另一个模型,需要不同的对齐和确认规则。

能否改用更清晰、但更早的价格拐点?

不能。应使用同类连续确认的拐点,并保持规定的3–12根K线间隔。不能因为更远的比较看起来更强,就丢掉中间拐点。

如果P2仍在等待确认时价格已突破怎么办?

P2之后至C、包含C,只要收盘价严格越过B,就拒绝配对。不能在P2倒填更早入场,也不能把C当作T。仅有影线越过B,不是本规则要求的收盘事件。

背离加价格突破能证明反转吗?

不能。两者都来自市场价格,也都可能在趋势延续时失败。它们定义的是可观察假设,其交易价值必须在独立数据上计入成本后评估。

虚构示例是否展示了盈利交易?

没有。示例止于触发信号及报价计算,不提供已确认成交或离场结果。另一情境的第十八根K线已明确说明为虚构,并非挑选出来的市场业绩证据。

13. 技术参考与适用范围

官方MetaTrader 4 RSI参考资料介绍RSI和背离。本文的严格拐点、价格对齐读数、初始种子、触发顺序和风险限制均为自定教学约定,并非软件供应商认可的交易参数。

外汇及杠杆交易涉及重大风险。本策略用于教学,不构成投资建议。过去或模拟的结果不保证未来表现。