RSI回升后,价格未必会反转。“失败摆动”(failure swing)要求更完整的过程:振荡指标离开极端区域,回落时没有重新进入该区域,随后突破自身的反弹高点。本教学模型还要求价格在收盘时确认突破,并为形态设置较短的有效期限。这是一项需要检验的假设,不代表已经证明存在交易优势。
1. 先固定规则,再寻找形态
使用EURUSD、H1、Bid蜡烛图,以及以收盘价计算、周期为5的RSI。只读取已收盘K线。水平30与70、较短的等待窗口及下述执行限制,都是明确的教学设定,并非推荐设置或优化后的参数。基准版本不加入背离、支撑区域、趋势、交易时段或新闻过滤条件。
失败摆动关注振荡指标自身的变化顺序,不要求价格与RSI形成方向相反的枢轴点组合。另一种比较方式见动量背离指南。两种方法都可能在持续趋势中失效;把名称组合在一起,并不能证明它们提供了相互独立的证据。
每个品种只能有一个正在进行的观察轮次,BUY与SELL轮次不能重叠。持有仓位时,忽略新形态。轮次被取消、到期或触发事件已处理后,不能用同一根K线启动新轮次。应在空仓时等待后续新出现的极端阈值穿越。若缺少必要的K线或指标数据,取消当前轮次,绝不能用零填补缺失值。
2. 启动BUY观察,然后等待回升
只有出现新的下穿时,才在已收盘K线A上启动BUY观察:前一RSI为≥ 30,当前RSI为< 30。固定A的身份。后续继续处于超卖区域的K线,不会重置倒计时,也不会移动A。在接下来的4根已收盘K线中,接受首次严格高于30且低于70的RSI读数,将对应K线记为回升K线B。
第四根K线仍在有效范围内。若到其收盘仍未回升,该轮次到期。在回升之前出现≥ 70的读数,则取消轮次。在最初等待阶段,RSI可以保持在30或以下;但一旦确认B,这项允许就结束。A与B必须是不同的K线。
3. 反弹高点只能在可确认时固定
B之后,最多检查接下来的3根已收盘K线。RSI首次低于紧邻的前一个读数时,确认前一根K线为反弹高点P。在确认K线D收盘时,RSI仍须严格位于30与70之间。固定RSI(P)及P的Bid最高价。不能在P自身收盘时,就把P标为已经确认。
连续相等的RSI读数不能确认转折;后续读数首次低于前值时,可以把平顶的最后一根K线固定为P。B之后,RSI只要触及或越过任一边界,就取消轮次。若等待窗口内未出现合格回落,则让轮次到期。D是对回落的观察,不是入场信号。
4. 只接受首次突破反弹水平的事件
检查D之后的3根已收盘K线,包括第三根。RSI必须始终严格位于30与70之间。首次满足RSI(T) > RSI(P)的收盘,是唯一的触发候选T。同一根K线还须满足Close(T) > High(P)。两项比较都不能以相等代替突破。
如果RSI突破固定水平,但价格条件未通过,立即取消该轮次。后续价格再突破,也不能让它恢复有效。触及边界同样取消;若最后一根合格K线结束仍无触发,则到期。接受触发之前,先检查是否因边界失效。回升、确认与触发是不同的观察事件,不能用未收盘K线内的变化来猜测。
5. 在触发K线收盘时固定退出价位
对于BUY,计划SL由Bid触发,设在A至T之间所有Bid最低价中的最低值下方1pip处,范围包含A和T。TP固定为触发收盘价加上该收盘价到SL距离的两倍:TP = Close(T) + 2 × (Close(T) − SL)。查看入场报价之前就固定这两个价位;为了让迟到的入场合格而移动目标,会改变模型。
SL或TP先成交时,平掉全部仓位。若两者都未成交,则在触发之后的8根H1 K线收盘后,按首个可用报价请求市价平仓。不使用移动止损、分批退出、亏损加仓或RSI退出条件。跳空或市场不可交易,可能让实际执行超出计划的价位或时间。
目标只是教学用的几何规则,并非预测,也不表示价格必定到达。附近的反向价位或不适合的市场环境,可以成为另行定义版本的理由;但不能在测试过程中,临时给基准规则加入主观例外。
6. 完整规定SELL,不能只凭想象反向套用
- 当前一RSI为
≤ 70、当前RSI为> 70时,启动A。在随后的4根K线内,首次严格位于30与70之间的读数对应B。B之前若出现≤ 30,则取消。 - 在B之后的
3根K线内,RSI首次高于前值时,确认前一根K线为低谷P;D是确认K线。固定RSI(P)和Bid最低价Low(P)。B之后触及边界即取消。 - 在D之后的
3根K线内,只使用首次RSI(T) < RSI(P),且同一根K线须满足Close(T) < Low(P)。价格条件失败就拒绝整个轮次,相等也不合格。到期与禁止重复使用K线的规则相同。
SELL退出由Ask触发。SL设在A至T的Bid最高价中的最高值上方3pips:其中1pip是结构缓冲,另有2pips的点差预留。设置TP = Close(T) − 2 × (SL − Close(T)),同样将其作为Ask价位。预留量并不等于还原Ask最高价;后续点差扩大,可能更早触发止损。全部平仓与时间退出规则不变。
7. 评估首个可成交报价,而不是K线收盘价
T收盘且下一根H1 K线开始后,使用必要数据就绪时出现的首个新报价,最晚不得超过T收盘后60秒。BUY按Ask评估,SELL按Bid评估。首个报价只要未通过任一条件,该轮次就结束,不能等待更有利的报价。若期限内没有数据就绪的报价,则放弃交易。已收盘信号K线的位移为1;位移0的K线仍在形成。
要求点差≤ 2pips、SL与TP位于报价的正确两侧,且预计净收益空间与预计止损损失之比≥ 1.5。通过实际Bid/Ask价格纳入点差,并在两项估算中计入往返佣金、入场1pip和退出1pip的不利成交预留。不要再次加算点差。预留量只是建模假设,不是成交保证。
新交易的计划风险最多占当前账户净值的0.5%,整个投资组合的计划止损风险合计不超过净值的1%。核查经纪商的止损距离、跳动价值、交易量步长、保证金及交易权限。交易量向下取整;若最低允许交易量也超出预算,则不交易。相关仓位共用总预算。实际损失可能超过计划风险。
若品种的合约条件或账户货币不同,应根据有效的最小价格变动及其在账户货币中的价值,计算包含成本的每手损失。下文EURUSD的每pip价值是本例假设。完整的仓位计算流程见风险管理指南。
8. 重现EURUSD的合成序列
以下虚构Bid K线采用同一假定服务器时钟,并按收盘时间标注。首根开盘价等于首根收盘价,此后的开盘价等于前一收盘价。每根最高价取开盘与收盘的较大值再加0.00020;最低价取较小值再减0.00020。这条路径专为讲解规则而设计,并非历史数据、回测或盈利证据。
| H1收盘时间 | Bid收盘价 | RSI(5) |
|---|---|---|
00:00 | 1.10000 | — |
01:00 | 1.10100 | — |
02:00 | 1.10060 | — |
03:00 | 1.10140 | — |
04:00 | 1.10100 | — |
05:00 | 1.10160 | 75.000000 |
06:00 | 1.10060 | 53.932584 |
07:00 | 1.09960 | 39.916840 |
08:00 | 1.09860 | 30.129463 |
09:00 | 1.09780 | 24.196597 |
10:00 | 1.09880 | 42.031954 |
11:00 | 1.09920 | 48.133627 |
12:00 | 1.09890 | 43.810393 |
13:00 | 1.09870 | 40.759626 |
14:00 | 1.09960 | 57.433111 |
在05:00,用最初5次收盘变动初始化Wilder平均上涨幅度与平均下跌幅度:G = 0.0024 / 5、L = 0.0008 / 5,RSI为75。之后分别按A(k) = (4 × A(k−1) + x(k)) / 5更新平均值,其中x是该根K线的上涨或下跌幅度,再用RSI = 100 × G / (G + L)计算RSI。上涨和下跌幅度均为非负数。若两者之和为零,按本模型的缺失值约定跳过该观察。不同初值或更早历史可能使终端读数不同,比较前须先对齐这两项。
A是RSI下穿30的09:00,B是10:00。在D,即12:00,RSI首次下降,才把11:00固定为P;其RSI为48.133627,Bid最高价为1.09940。T在14:00,RSI为57.433111,Bid收盘价为1.09960,超过两个固定水平。比较使用未四舍五入的值,表格显示6位小数。
A至T的最低Bid低点为1.09760,因此SL为1.09750,TP为1.10380。只有13:00–14:00的K线收盘且数据就绪后,才能依据T采取行动。首个报价在新K线中评估,绝不回到先前高点追溯入场。若入场成交,时间退出应在结束于22:00的K线收盘后执行;本文没有提供其后的价格路径或退出结果。
9. 先核算,再决定交易量
假设账户以USD计价,净值$10,000,每手合约为100,000EUR,1pip等于0.0001,每手每pip价值为$10,交易量步长为0.01手。数据就绪后的首个报价出现在14:00:10,Bid为1.09960、Ask为1.09972,点差为1.2pips。假设每手往返佣金$7,本示例计算不收取融资费用,并采用前述不利成交预留。
| 检查项 | 计算 | 结果 |
|---|---|---|
| 风险预算 | 10,000 × 0.005 | $50 |
| 计入预留与佣金后的每手损失 | (22.2 + 1 + 1) × 10 + 7 | $249 |
| 扣除成本后的每手潜在收益 | (40.8 − 1 − 1) × 10 − 7 | $381 |
| 净收益空间 / 计划损失 | 381 / 249 | 1.530120 |
| 按交易量步长向下取整 | floor((50 / 249) / 0.01) × 0.01 | 0.20 |
| 该交易量的计划止损损失 | 0.20 × 249 | $49.80 |
该报价通过比率条件。相反,若假设Ask为1.09990,则每手计划损失为$267、潜在收益为$363:363 / 267 = 1.359551,低于1.5。即使仍能看到振荡指标形态,也应拒绝这个报价。目标计算与成本预留,都不能证明入场会成交或退出会盈利。
10. 将失败案例保留在测试记录中
- 只有阈值回升:继续等待剩余阶段。
- 在确认K线之前标记转折:当时信息尚不可用,因此不能构成当时的有效决策。
- RSI新突破自身水平,但价格没有在同一根K线突破:永久拒绝该轮次。
- 触及边界、阶段到期或缺少必要观察:按规则取消或到期。
- 报价迟到、点差过大、净比率不足、止损不符合经纪商要求或预算不足:放弃交易,不修改信号。
选定周期反应较快,可能连续失败。在持续下跌或上涨中,振荡指标形态可以完成,但更大级别的价格运动并不反转。应专门测试这些市场状态。基准没有日历过滤:风险分析须纳入预定公告、突发新闻、展期与跳空。任何时段或新闻排除条件,都必须作为另一个测试版本明确定义并记录。
11. EA与测试都要保留时序状态
将品种、H1、规则版本与A的开盘时间戳保存为轮次标识。持久保存阶段、截止时间、固定P、退出条件与已处理标记。每根已收盘K线只处理一次。区分分析触发、订单请求与确认成交;重启或收到不明确响应后,先核对未结订单和历史,再考虑发送任何请求。超时不代表订单不存在。
若订单状态明确且请求被拒绝,本基准不再重试同一轮次。请求结果不确定时,应核对状态,而非发出第二个请求。实际滑点若超过预留,记录超限并核实实际敞口,不能通过加大交易量或放宽SL来掩盖。本文是一份规则说明,并不是经过运行测试的EA源代码。
先用按时间排列的日志核对RSI初始化、严格比较、各阶段截止时间、首次突破拒绝、SELL逻辑与K线位移,再用适合经纪商的Bid/Ask数据、佣金、融资、不利成交和错过的入场,评估完整交易假设。如果两个退出价位都落在同一根OHLC K线内,能取得逐笔数据时应按实际先后顺序处理;否则标注顺序不明,并报告保守的SL先到假设。
分开开发期与后续评估期,保留所有尝试过的变体,同时比较净收益、回撤、敞口、交易次数和不确定性。前向验证使用持续到来的新数据,但不保证实盘结果。完整流程见MT4回测指南;动量指标组合指南则区分持续条件与新事件。本文不声称任何胜率或收益率。
12. RSI失败摆动常见问题
失败摆动与RSI背离相同吗?
不同。本模型检验RSI的变化序列与固定价格参考,不比较两个价格枢轴点与两个对应振荡指标枢轴点。增加背离需要另行定义,并明确其信息何时可用。
RSI一离开超卖区就能入场吗?
那只能确认B。仍须等待已确认的反弹高点、合格回落、之后首次RSI突破,以及同一根K线上的价格确认。可成交报价也必须通过成本与风险条件。
如果价格比RSI晚一根K线突破呢?
若首次RSI突破K线上的价格条件失败,就拒绝该轮次。本基准在该事件之后没有额外等待期,因此后续价格突破不能重新激活它。
这些RSI设置适合直接用于实盘吗?
本文不作这样的推荐。这些设置用于重现教学规则和合成数据计算。其他周期、阈值或等待窗口都是需要记录和验证的不同版本,并不会自动改进结果。
计划风险上限能限制实际损失吗?
不能。跳空、点差变化、缺乏流动性与执行失败都可能让损失超过估计。仓位大小、组合敞口,以及结果不明订单的处理仍须分别管理。
这个例子证明了一笔盈利交易吗?
没有。给出的路径止于触发时刻,只说明形态何时可知、如何固定价位,以及报价是否合格。没有展示后续成交或退出结果,也没有历史测试或实盘表现。
13. 技术参考与适用范围
官方MetaTrader 4 RSI参考资料介绍振荡指标及其摆动解释。本文的周期、有限阶段规则、价格条件、止损、目标和成本门槛,是我们明确制定的教学规格,并非厂商认可的交易参数。
外汇与杠杆交易涉及重大风险。本策略仅供学习,不构成投资建议。过去或模拟结果不保证未来表现。