YazanPro Pattern Matcher
- 指标
-
Yazan Adnan Ramadan Ibrahim
Algorithmic trader and MQL5 developer based in Jordan. I build Expert Advisors for MetaTrader 5 focused on gold (XAUUSD) and major FX pairs: multi-module confluence systems, short-hold scalping tools and manual trade panels. Each product is tested in the Strategy Tester on real ticks with - 版本: 1.0
- 激活: 10
YazanPro Pattern Matcher 是一款用于 MetaTrader 5 的指标。它可在任何交易品种上、在图表当前显示的任何周期(从 M1 到 MN1)回答三个问题:
- 价格上一次呈现这种走势是在什么时候?之后发生了什么?
- 这里是否存在图表形态?它是否已形成、已突破、已回踩、已确认或已失败?
- 最近的支撑位和阻力位在哪里?
它仅基于已收盘的K线运行,因此不会重绘。它不会下任何订单。
历史相似情境
在每根已收盘K线上,它将最近 24 根K线与该图表自身最近 40,000 根K线中的每一个窗口进行比较。可通过“Match by”(匹配方式)输入参数选择比较方式:
- Close path(收盘路径):收盘价的走势形状。
- Candle shapes(K线形态):每根K线的实体、上影线和下影线,逐根比较。
- Close path + candles(收盘路径 + K线):两者同时比较。
- Full situation(完整情境,默认):收盘路径和K线,再加上每个窗口末端的市场情境。情境包括此前的趋势、波动率、价格在近期区间中的位置、tick 成交量以及当天的小时。
它保留 20 个互不重叠的最接近匹配,并显示:
- 相似度 %(Similarity),以大字显示,并列出其组成部分:收盘路径 %、K线 % 和情境 %。
- 当前情境(Situation now),以通俗文字描述,例如“下降趋势 · 高波动 · 处于区间底部 (6%) · 高成交量 · 21:00”。
- UP 和 DOWN 得分(上涨 / 下跌)(0 到 100),带电池条:按相似度加权的、在 12 根K线后收高或收低的匹配所占比例。
- 强度(Strength)(0 到 100):各匹配的接近程度以及它们之间的一致程度。
- 之后上涨(Went up after):在 6、12 和 24 根K线后收盘更高的匹配所占的 %,以及中位数和平均变动幅度、平均最佳点和最差点(以 ATR 为单位)。
- 5 个最接近的匹配,包括日期、相似度及其后续走势。点击其中一个即可将图表滚动到该处。
- 图示:当前K线、叠加在其上的最接近匹配,以及所有匹配之后的走势路径及其平均值。
- 图表上:当前K线周围的方框、向前投射的匹配平均路径(中间一半以虚线显示),以及 5 个最接近的历史匹配上的金色方框。
图表形态状态
结构形态检测器读取图表当前周期上的摆动点。它可以识别:
- 双重顶、双重底、三重顶和三重底
- 头肩顶及其反向形态(头肩底)
- 上升三角形、下降三角形和对称三角形
- 上升楔形和下降楔形
- 牛旗和熊旗
- 矩形、通道和杯柄形态
状态框显示形态、其方向以及阶段条:Formed ✓ › Broke out ✓ › Retested ✓ › Confirmed ✓(中文面板:已形成 ✓ › 已突破 ✓ › 已回踩 ✓ › 已确认 ✓)。失败的突破显示为“Fake breakout ✗”(假突破 ✗),过时的形态显示为“Expired”(已失效)。Pattern(形态)选项卡还会显示:
- 被突破的线及其以 ATR 计的距离
- 目标位和失效位
- 等待回踩期间的“Fake if”(假突破条件)价位
- 突破、回踩和确认所在K线的时间
在图表上,形态以编号点绘制,并带有突破、回踩和确认标记,以及目标 / 止损参考线。
支撑与阻力
显示最近的阻力和支撑,以及它们的强度(有多少个价位合并到该区域)和以 ATR 计的距离。Levels(价位)选项卡还会显示:
- 5 个最强区域
- 支撑和阻力趋势线
- 该周期的枢轴点
- 价格是否刚刚突破某一价位或从其反弹
只绘制最近和最强的区域,以保持图表清晰易读。
教科书形态匹配
最近的 24、48 和 96 根K线还会与 14 种绘制好的教科书形态轮廓进行比较。最佳的一种会连同其匹配度 % 和缩略图一起显示,其轮廓会绘制在价格上方。随后,指标会列出同一图表上过去所有与该轮廓匹配程度至少同样好的时刻,以及其后续走势。您可以看到该形态在您的交易品种上的实际表现。
在您的图表上自检
启动时,指标会在您图表的 200 根历史K线上重放同样的搜索,每一次都只使用该K线之前的K线。它显示:
- 得分较高的一方判断正确的频率
- 价格单纯上涨的频率,便于您比较两者
- 当前相似度在该图表上有多常见
这样,您就能针对自己的交易品种和周期,看到这一读数究竟有多少价值。
面板与语言
- 标题栏:语言按钮,提供 12 种面板语言:英语、阿拉伯语、俄语、中文、西班牙语、葡萄牙语、日语、德语、韩语、法语、意大利语和土耳其语。
- 周期按钮:M1 到 MN1,用于切换图表周期。
- 选项卡:Twins(相似)、Pattern(形态)、Levels(价位)、Textbook(经典形态)和 Self-check(自检)。
- 折叠按钮:将面板缩小为仅显示数据块和形态状态。
- 提醒:弹窗和推送通知,每根K线一次,在出现强匹配或教科书形态匹配度达到 90% 或以上时触发。
请先阅读本节
这是一个情境参考工具,而不是交易系统。在开发者的测试中,相似的历史情境之后出现上涨和下跌的频率大致相等。即使同时匹配了K线、趋势、波动率和成交量,情况依然如此;而且在扣除成本后,对每个强匹配进行交易并未跑赢随机入场(见第 3 部分)。自检会针对您自己的图表显示同类数据。请使用本指标查看相似情境、形态和价位过去的样子,切勿将其单独作为入场信号。
3. 测试结果
每项测试都仅使用每根K线当时可获得的数据来重放搜索。点差采用记录值。在注明之处额外加入了成本。
历史会重演吗?(8 个市场:H1 上的 EURUSD、GBPUSD、USDJPY、XAUUSD、USDCAD 和 US500,以及 M15 上的 EURUSD 和 XAUUSD)
全部四种“Match by”模式都针对 12 根K线后的方向进行了测试。最佳模式在较早的数据上选出,然后在它从未见过的 2024-2026 数据上运行了一次。
Match by | 方向判断正确 | 始终押主要方向
Close path(收盘路径) | 50.5% | 52.3%
Candle shapes(K线形态) | 50.2% | 52.2%
Close path + candles(收盘路径 + K线) | 50.6% | 52.3%
Full situation(完整情境) | 51.2% | 52.7%
- “始终押主要方向”一列使用每个时期的主要方向,这只有事后才能知道。与单纯 50% 的抛硬币相比,只有完整情境模式略好一些(+1.2 个百分点)。
- 对整个测试的独立重新实现得到了相同的匹配和相同的数字。
对每个强匹配进行交易(较高得分 75 或以上),H1,相同的 6 个市场
规则:止损 1.5 x ATR(14),止盈为 1.3 x 止损距离,移动至保本,记录的点差加上每笔往返交易的额外成本。
- 2024-2026:328 笔交易,盈利因子 0.98,每笔交易约为零。
- 在相同入场点随机选择方向,结果相同。
在 EURUSD 上对每个匹配度 90% 或以上的匹配进行交易(Close path 模式)
- H1,2017-2026:14,222 笔交易,盈利因子 0.97。
- M5,2026:14,472 笔交易,盈利因子 0.33(止损 0.8 x ATR,目标 1.2 x 止损距离,30 分钟后离场)。
输入参数(Inputs)
Search(搜索)
- Match by: Full situation (Close path only / Candle shapes only / Close path + candle shapes / Full situation)
- Pattern length, bars (10..120): 24
- Bars after a match read as its outcome (1..48): 12
- Closest matches kept (5..50): 20
- History bars searched (1000..200000): 40000。图表必须有这么多K线,否则指标使用现有的K线。如需更多,请在 Tools > Options > Charts(工具 > 选项 > 图表)中提高“Max bars in chart”(图表中的最大柱数)。
- Also match textbook chart patterns: true
- Textbook pattern: past cases need a match >= this %: 80
- Self-check: replay the search on past bars of this chart: true
- Self-check: number of past tests (50..500): 200
Display(显示)
- Tab shown first: Similar past situations
- Panel language: English(12 种语言;也可在面板上切换)
- Panel X / Y, pixels from the top-left corner: 10 / 30
- Draw on the chart (window box, expected path, pattern outline): true
- Mark the 5 closest past matches on the chart: true
Alerts(提醒)
- Alert on a strong match (once per bar): true
- ... similarity >= this %: 85
- ... and the UP or DOWN score >= this: 75
- ... and the median move >= this (x ATR): 0.3
- Alert when a textbook pattern match >= this % (0 = off): 90
- Also send a push notification: false
Chart patterns and levels(图表形态与价位)
- Chart patterns (stage, levels, drawing): true
- Support / resistance levels: true
快速入门
- 将指标加载到任意图表和任意周期。它适用于外汇、金属、指数、股票和加密货币。
- 使用右上角的按钮选择语言。
- 先查看两个大数据块和形态状态框。然后打开各选项卡:Twins(相似)、Pattern(形态)、Levels(价位)、Textbook(经典形态)、Self-check(自检)。
- 使用周期按钮在另一周期上查看同一交易品种。
- 将鼠标停留在任意一行上即可查看说明。
常见问题(FAQ)
它会重绘吗?
不会。它只使用已收盘的K线,并且每次搜索只能看到该K线之前的K线。
它会交易或给出买入 / 卖出信号吗?
不会。它不下任何订单,也没有指标缓冲区。第 3 部分表明,相似历史情境的方向并不能预测下一步走势。
支持哪些周期?
M1 到 MN1 的任意周期。所有计算都基于图表自身的周期。在 MN1 或历史数据较短时,某些部分可能显示“not enough history”(历史数据不足)。
它会给终端带来很大负担吗?
每根新K线的一次搜索只需几毫秒。自检在后台以小步骤运行。
交易具有很高的亏损风险。本指标不预测价格,也不保证任何结果。以上数字是基于开发者经纪商数据的历史测试,在您的数据上可能有所不同。
