MT5指标编译通过 · EX5 15KB 自动发布 138 9

智能货币订单块与结构突破信号

191727760·1 个月前发布

自动识别订单块区域并在市场结构突破时显示买卖箭头信号

智能货币订单块与结构突破信号

MT5 真机运行截图 · 服务器把编译好的 EX5 挂到黄金 H1 图表上截的,你装上去看到的就是这个样子

SMC_OrderBlock_Arrows.mq5预览 35 / 334 行
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#property copyright "XAUOF指标工坊"
#property version   "1.00"
#property strict
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_plots   2

// 买入箭头
#property indicator_type1   DRAW_ARROW
#property indicator_color1  clrDodgerBlue
#property indicator_width1  3
#property indicator_label1  "买入信号"

// 卖出箭头
#property indicator_type2   DRAW_ARROW
#property indicator_color2  clrRed
#property indicator_width2  3
#property indicator_label2  "卖出信号"

//--- 输入参数
input int    SwingPeriod = 5;              // 摆动周期:识别高低点的K线数量,推荐5-10
input int    ArrowOffset = 50;             // 箭头偏移:距离K线的点数,推荐30-100
input bool   ShowBullishOB = true;         // 显示看涨订单块(蓝色)
input bool   ShowBearishOB = true;         // 显示看跌订单块(橙色)
input color  BullishOBColor = clrDodgerBlue;    // 看涨订单块颜色
input color  BearishOBColor = clrOrange;        // 看跌订单块颜色
input int    OBTransparency = 80;          // 订单块透明度:0=不透明,90=很透明
input int    MaxOBToShow = 10;             // 最多显示订单块数量:避免图表过于混乱

//--- 指标缓冲区
double BuyArrowBuffer[];
double SellArrowBuffer[];

//--- 全局变量
struct OrderBlockInfo {

已显示前 35 行,共 334 行。完整源码仅对 xauusd.team VIP 开放查看与复制。

开通 VIP 查看完整源码
MT5 运行截图 · 完整视图带价格轴和时间轴的整张图表(约 150 根 H1 K 线),上面的封面是它最近 80 根 K 线的放大视图
智能货币订单块与结构突破信号 在 MT5 上的真实截图

作品说明

从图上识别到的元素:

这是一套SMC智能货币概念指标,包含以下核心组件:

  1. 彩色订单块(Order Block):橙色、紫色、蓝色、青色等矩形区域,标记关键的供需区域
  2. 买卖箭头信号:蓝色向上箭头标记买入机会,红色向下箭头标记卖出机会
  3. 水平虚线:黄色OP线和红色EOH线,标记关键价格位
  4. 文本标签:OB(订单块)、QB、BOS(结构突破)、CHoCH(结构变化)等

指标逻辑:识别摆动高低点→绘制突破前的最后一根反向K线作为订单块→在价格突破结构时生成信号箭头。我会实现订单块识别、矩形绘制和箭头信号这三个核心功能。

使用说明

安装步骤:

  1. 将代码保存为 SMC_OrderBlock_Arrows.mq5,放入 MQL5/Indicators 目录
  2. 在MT5的导航器中编译(双击文件自动编译)
  3. 拖到XAUUSD或任意品种的图表上

参数调节:

  • 摆动周期:默认5,越小越灵敏(信号多但噪音大),越大越稳定(信号少但质量高)
  • 箭头偏移:调整箭头与K线的距离,图表缩放后可能需要调大此值
  • 订单块颜色:看涨用蓝色、看跌用橙色,可根据个人喜好修改
  • 透明度:80表示20%不透明度,避免矩形遮挡K线;调小此值可让订单块更明显
  • 最多显示数量:默认10个,避免历史订单块太多导致图表混乱

信号解读:

  • 蓝色向上箭头:价格突破前期低点,形成看涨结构突破(BOS),可考虑做多
  • 红色向下箭头:价格突破前期高点,形成看跌结构突破,可考虑做空
  • 蓝色矩形:看涨订单块(买方力量聚集区),价格回调到此区域可能获得支撑
  • 橙色矩形:看跌订单块(卖方力量聚集区),价格反弹到此区域可能遇到阻力

注意事项:

  1. 订单块是机构可能留下的未成交订单区域,价格再次触及时容易产生反应
  2. 结合更大周期的订单块使用效果更好(例如H1图表参考H4的订单块)
  3. 箭头仅为结构突破提示,实际交易需结合其他确认信号(如价格行为、成交量)
  4. 本指标不含止损止盈逻辑,务必自行设置风险管理
  5. 历史信号会重绘(因为需要右侧K线确认摆动点),实盘使用时注意实时K线的确认

AI 解读根据源码逐行分析写成,供参考,以实际运行为准

这是什么

这是一个基于智能货币概念(SMC)的MT5指标,自动在图表上标记订单块(Order Block)区域,并在价格突破市场结构时显示买卖箭头信号。订单块是机构可能留下大量未成交订单的价格区域,价格回到这些区域时容易产生反应。指标用蓝色矩形标记看涨订单块,橙色矩形标记看跌订单块,在结构突破时显示蓝色向上箭头(做多)或红色向下箭头(做空)。

逻辑原理

指标通过三步识别信号:

  1. 识别摆动点:扫描K线找出摆动高点和摆动低点。摆动高点是指某根K线的最高价高于左右各N根K线(N由摆动周期参数决定),摆动低点则相反。
  1. 绘制订单块:找到摆动点后,向前回溯,找到摆动点之前最后一根反向K线。例如形成摆动高点前的最后一根阳线(收盘价>开盘价)作为看跌订单块,形成摆动低点前的最后一根阴线作为看涨订单块,用矩形画出该K线的高低价范围。
  1. 显示突破箭头:当价格突破前N根K线的最高点(向上BOS)时在K线上方显示红色向下箭头,突破最低点(向下BOS)时在下方显示蓝色向上箭头。

矩形会一直延伸到当前,透明度可调,避免遮挡K线。

参数说明

  • SwingPeriod(默认5):识别摆动高低点的K线数量。设为5表示中间K线的高/低点必须高于/低于左右各5根K线才算摆动点。数值越小信号越多但噪音大,越大则信号越稳定但反应慢,推荐5-10。
  • ArrowOffset(默认50):箭头距离K线最高/最低价的点数,用于调整箭头位置避免重叠。图表缩放后可能需要调大此值,推荐30-100。
  • ShowBullishOB(默认true):是否显示看涨订单块(蓝色矩形)。
  • ShowBearishOB(默认true):是否显示看跌订单块(橙色矩形)。
  • BullishOBColor(默认蓝色):看涨订单块的颜色。
  • BearishOBColor(默认橙色):看跌订单块的颜色。
  • OBTransparency(默认80):订单块透明度,0表示完全不透明,90表示非常透明。数值越大矩形越淡,推荐70-85。
  • MaxOBToShow(默认10):图表上最多同时显示多少个订单块,避免历史订单块太多导致混乱。

怎么用

将代码保存为 SMC_OrderBlock_Arrows.mq5,放入MT5数据文件夹的 MQL5/Indicators 目录(文件→打开数据文件夹),在导航器窗口中双击文件自动编译。编译成功后拖到任意品种的图表上(推荐H1或H4周期),弹出参数窗口可调节上述参数。

看信号:蓝色向上箭头表示价格突破前期低点形成看涨结构,可考虑做多;红色向下箭头表示突破前期高点形成看跌结构,可考虑做空。蓝色矩形是潜在支撑区(买方力量聚集),橙色矩形是潜在阻力区(卖方力量聚集),价格回到这些区域时可能产生反应。

适用场景

适合品种:XAUUSD、EURUSD、GBPUSD等主流货币对和指数,任何有明显波动的品种都可用。

适合周期:H1、H4、D1。M15和M5也能用但信号较多,需结合更大周期的订单块过滤。日内剥头皮不适合此逻辑。

适合行情:趋势行情和震荡突破行情。在明确趋势中,订单块可作为回调入场点;在震荡区间突破时,箭头提示结构改变。不适合无方向的窄幅震荡,会产生大量假突破信号。

风险提示

  1. 重绘问题:摆动点需要右侧K线确认,历史信号会随新K线出现而改变位置或消失。实盘使用时,当前未走完的K线上的箭头和订单块可能在下一根K线刷新后消失。
  1. 滞后性:箭头信号出现时价格已经突破,可能错过最佳入场点。建议结合订单块回调入场,而不是追着箭头直接开仓。
  1. 假突破:小周期上的结构突破可能只是大周期的正常回调,单独使用此指标容易被反向扫损。务必结合更大周期的趋势和订单块判断。
  1. 无止损逻辑:指标只显示信号,不包含止损止盈和仓位管理。必须自行设置止损(建议放在订单块另一侧或摆动点外),严格控制单笔风险。
  1. 订单块可能失效:价格多次触碰订单块后该区域的订单可能已消耗殆尽,不能盲目依赖历史订单块。代码中订单块会一直显示直到被新订单块替代,需自行判断有效性。

常见问题

这个指标会重绘吗
会。因为摆动高低点需要右侧K线确认,历史信号的位置和订单块会随新K线出现而调整。实盘时注意当前K线上的箭头可能在下一根K线消失。
默认参数适合什么周期
默认摆动周期5适合H1和H4周期。如果用在M15需要调小到3,用在D1可以调大到7-10,否则信号太少。
可以用在XAUUSD以外的品种吗
可以。代码里没有品种限制,任何有波动的品种都能用,包括外汇、指数、商品。但不同品种的点值和波动幅度不同,箭头偏移参数可能需要调整。
箭头出现后可以直接开仓吗
不建议。箭头只是结构突破提示,出现时价格已经走了一段。更稳妥的做法是等价格回调到订单块区域再入场,或结合其他确认信号(如K线形态、成交量)。
MT4能用这个指标吗
不能直接用。这是MQL5代码,只能在MT5上运行。MT4使用MQL4语言,语法和函数不同,需要重写代码才能移植。

SMC Order Block & Structure Breakout Indicator for MT5

An MT5 indicator based on Smart Money Concepts that automatically identifies swing highs/lows, draws order block rectangles, and displays buy/sell arrows on market structure breakouts (BOS). Adjustable sensitivity and display limits included.

A short source preview is shown above for visitors; full source, copy and compiled EX5 files are available to VIP members.

评论

后可以留言,比如反馈用着怎么样、想加什么功能。

还没有人评论,来抢个沙发。