Single Arrow
- 指标
-
Ahmed Hamed Hamed Eadwan
CHINESE TRANSLATION — 中文
============================
TITLE:
MQL5 开发者与交易者 | R protocols 创始人
ABOUT:
您好,我是 Ahmed,来自阿拉伯联合酋长国的交易者和 MQL5 开发者,
R protocols 的创始人。
我自 1984 年开始编写代码,自 2006 年开始交易市场。
多年来,我为自己开发交易工具,通过真实市场经验不断完善它们。
现在,我将这些工具与 MQL5 社区分享。 - 版本: 1.0
- 激活: 5
SingleArrow — 独立 ZigZag + WPR 背离信号
每个信号一支箭头。零依赖。
经 Williams %R 背离确认的纯粹价格结构。
一次性付款 — 终身授权,包含未来所有更新。
概述
SingleArrow 是一款轻量、简洁的 MetaTrader 5 指标,将 ZigZag 波段结构与 Williams %R (WPR) 动量融合为一支易读的箭头:酸橙色代表买方压力,红色 代表卖方压力。
完整的 ZigZag 引擎编译在指标内部 — 无外部 .ex5 文件、无 DLL、无需安装。 下载后附加到任意图表即可交易。
核心功能
- 100% 独立 — 无 DLL、无外部文件、无需安装
- 高效 O(n) ZigZag 引擎 — 仅在新 K 线重算,适合 VPS
- WPR 背离过滤器 — 以 Williams %R 动量确认枢轴点
- 确认模式 — K 线收盘后信号稳定、可回测(默认)
- 实时模式 — 逐 Tick 箭头,适合激进剥头皮
- 会话枢轴锁定 — 历史信号在会话中绝不漂移
- EA 就绪缓存 — 通过 iCustom() 获取信号、枢轴与 WPR 值
- 全品种全周期 — 从 M5 剥头皮到 D1 波段
- 极简图表 — 每个形态一支橙/红箭头,零杂乱
两种信号模式
确认模式 (InpConfirmBars = 1,默认)
信号在 K 线收盘后打印,此后永不移动。
推荐用于回测、纪律交易与智能交易系统 (EA)。
实时模式 (InpConfirmBars = 0)
在当前 K 线逐 Tick 更新:最早的预警信号。
实时箭头在 K 线收盘前可能发生变化。
主要参数
- InpDepth / InpDeviation / InpBackstep — ZigZag 波段灵敏度
- InpWPRPeriod — Williams %R 周期(默认 14)
- InpUseDivergence — 启用背离过滤器
- InpConfirmBars — 1+ = 确认模式,0 = 实时模式
- InpLockPivots / InpLockAfterBars — 锁定历史枢轴(会话级)
- InpShowDiag — 图表诊断面板
新手预设:Balanced(默认 + Divergence ON)、Scalping(Depth 12)、 Swing(Depth 55,WPR 21)。请务必先在模拟盘测试。
建议用法(教学参考,不构成投资建议)
- 日内信号用 M15–H1,波段信号用 H4–D1。
- 优先选择与高周期方向一致的箭头。
- 将止损设于信号 ZigZag 枢轴之外(结构化止损)。
- 单笔风险不超过 1–2%。避开重大数据公布时段。
- 实盘前请在模拟盘至少测试 100 个信号。
开发者 (iCustom 缓存)
- 缓存 0 — 买入箭头价格(0 = 无信号)
- 缓存 1 — 卖出箭头价格(0 = 无信号)
- 缓存 2 — 方向:+1 买入 / -1 卖出 / 0 无
- 缓存 3 — 枢轴图:+1 高点 / -1 低点 / 0 无
- 缓存 4 — 实时 WPR 值
复制粘贴集成示例(确认模式,最近收盘 K 线):
// SingleArrow iCustom example — create handle once in OnInit int h = iCustom(_Symbol, _Period, "Market\\SingleArrow", 34, 13, 8, // Depth, Deviation, Backstep 14, 5000, 5, // WPR period, Lookback, PivotTol (reserved) false, // Use divergence filter 1, // Confirm bars (1 = no repaint) false, // Diagnostics panel 12, // Live margin (Live mode only) false, 3); // Pivot lock, Lock after N bars double sig[]; if(CopyBuffer(h, 2, 1, 1, sig) > 0) // Buffer 2 = signal direction { if(sig[0] > 0) { /* BUY signal */ } if(sig[0] < 0) { /* SELL signal */ } }
同一作者作品(独立产品)
- SingleArrow MTF — 单窗口多周期共振
- SingleArrow Scanner — 多品种信号仪表盘
风险提示
外汇/CFD 交易风险巨大,未必适合所有投资者。指标仅为分析工具,不保证盈利。 请务必先在模拟账户测试。过往业绩不保证未来结果。
