MetaTrader免费EA

基于概率理论的外汇交易专家顾问——MetaTrader 5平台应用
MetaTrader5
基于概率理论的外汇交易专家顾问——MetaTrader 5平台应用

大家好!今天我想跟大家分享一个我早期的创意,这个代码是一个适用于MetaTrader 5平台的外汇交易专家顾问(EA),它利用概率理论来判断金融工具的价格上涨和下跌的概率。 这个EA会分析一定数量的历史价格数据(默认是10000根K线),并计算在设定的点数(默认是400点)范围内,价格在指定的K线数量(默认是50根)内,收盘价高于或低于开盘价的次数。基于这些数据,EA会计算出价格上涨和下跌的概率,并将结果显示在图表的注释中。 此外,EA还可以根据计算出的概率进行交易操作。如果价格上涨的概率超过51%,EA会开一个买入头寸;如果价格下跌的概率超过51%,则会开一个卖出头寸。 在开仓时,EA可以使用固定的手数,或者根据设定的风险和当前账户余额来计算手数。如果设置了止损和止盈值,EA会在开仓时自动调整到相应的水平。 要开始使用这个EA,您需要将下面的标志设置为True: input bool EnableCheckBars = false; 需要注意的是,这个EA不会直接盈利。关于计算价格波动、波浪、达到止损和止盈的概率,都是些无稽之谈。市场的复杂性远超过这些简单的算法和想法。 希望这个分享能对大家的交易有所帮助!如果有任何疑问或想法,欢迎在下方留言讨论。

2025.11.04
ExpPinBar:基于Pin Bar价格行为模式的智能交易顾问
MetaTrader5
ExpPinBar:基于Pin Bar价格行为模式的智能交易顾问

ExpPinBar智能交易顾问是一款基于价格行为Pin Bar指标的交易策略工具。它会根据指标发出的信号来开启交易头寸。为了更好地管理已开仓位,系统提供了强大的跟踪功能,利用跟踪库,支持经典跟踪、抛物线SAR指标、移动平均线AMA、DEMA、FRAMA、MA、TEMA、VIDYA等多种方式,以及根据蜡烛影线的高低水平进行跟踪。 Pin Bar指标设置: 蜡烛最低高度 - 蜡烛的最低高度(以点为单位)设置要分析的蜡烛的最低高度(即高点与低点的差距)。小于此高度的蜡烛将被指标忽略,有助于排除不重要或“噪音”的蜡烛。提高该值可以过滤低波动市场的弱信号; 蜡烛实体相对于影线的最大大小 - 蜡烛实体的最大大小(相对于整根蜡烛的大小,从0到1)定义蜡烛实体(开盘价与收盘价之间的差距)相对于整根蜡烛高度的最大允许大小。值越小,长影线和小实体的信号越明显,即经典的Pin Bars。要找到最“干净”的Pin Bars,建议使用值0.2 - 0.4; 实体相对于前一根蜡烛的位置 (范围从0到1)该参数定义了Pin Bar实体可以深入前一根蜡烛范围的深度。值越小,实体位置越接近范围边缘,符合经典的反转模式。建议使用0.2-0.4的值,寻找Pin Bar实体位于前一根蜡烛边缘附近的信号; 影线的长宽比 (系数)设置主影线(卖出Pin Bar的上影线,买入Pin Bar的下影线)与相对影线之间的最小比例。值越高,主影线相对于对侧影线的明显程度越高。值在1.5 - 2.5之间可以过滤信号,仅保留长影线明显的蜡烛。 顾问设置: 头寸大小 - 头寸的交易量; 滑点(以点为单位) - 执行时允许的最大价格偏差,以点为单位设置; 魔术号码 - 魔术号码; 止损(以点为单位),0 - 无,-1 - 按Pin Bar影线 - 止损(以点为单位),0 - 无,-1 - 按Pin Bar影线价格; 止盈(以点为单位),0 - 无 - 止盈(以点为单位),0 - 无; 止损偏差(以点为单位) - 止损偏差以点为单位。 跟踪设置: 跟踪类型 - 跟踪类型 跟踪起始点 - 开始跟踪的利润(以点为单位) 跟踪步长(以点为单位) - 价格的跟踪步长(以点为单位) 跟踪偏移(以点为单位) - 从价格的跟踪偏移(以点为单位) 在跟踪中使用的指标设置: 指标时间框架 - 用于跟踪计算的指标时间框架。 MA周期 - 移动平均计算周期 MA偏移 - 移动平均的水平偏移。 AMA快 EMA周期 - 快速EMA自适应移动平均的计算周期。 AMA慢 EMA周期 - 慢速EMA自适应移动平均的计算周期 VIDYA CMO周期 - 动态平均周期的移动平均CMO周期。 抛物线SAR步长 - 抛物线SAR步长 抛物线SAR最大值 - 抛物线SAR的最大值 MA应用价格 - 移动平均计算的价格 MA平滑方法 - 移动平均平滑类型。 指标数据索引 - 从指标接收的数据的条形数据 要正常使用该智能顾问,需要iPinBars指标和跟踪类库。 以下是该智能顾问在过去一年对EURUSD H4进行固定止损水平和简单跟踪时的示例:

2025.10.22
基于WPR、布林带和ATR指标的简单交易顾问 - MetaTrader 5专家
MetaTrader5
基于WPR、布林带和ATR指标的简单交易顾问 - MetaTrader 5专家

简单易用的交易顾问 大家好,今天我想和大家分享一个非常实用的交易顾问——ExpWPRBB。这个顾问采用了一种简单的交易策略,主要基于两个指标的信号:威廉姆斯百分比范围(WPR)和布林带(BB)。只有当这两个指标的信号一致时,才会开仓: 买入:WPR从超卖区退出,并且当前K线的开盘价低于布林带的中间线。 卖出:WPR从超买区退出,并且当前K线的开盘价高于布林带的中间线。 布林带的宽度和ATR值会用来计算止损和获利水平。这个交易顾问仅支持在对冲账户上操作。此外,它还提供了非交易模式,可以在策略测试器的可视化模式中仅显示信号标签,以便于信号的控制。 输入参数概览 WPR(威廉姆斯百分比范围) InpPeriodWPR - WPR计算周期。用于计算指标值的K线数量。 InpOverboughtWPR - WPR超买水平。超出此值即被视为市场超买(通常在-20到0之间); InpOversoldWPR - WPR超卖水平。低于此值即被视为市场超卖(通常在-80到-100之间)。 BB(布林带) InpPeriodBB - 布林带计算周期。用于计算布林带的K线数量。 InpDeviationBB - 布林带的偏差。用于计算布林带宽度的标准差倍数。 InpShiftBB - 布林带的偏移量。相对于当前K线的指标偏移。 InpPriceBB - 布林带计算价格。用于计算的价格类型。 ATR(平均真实范围) InpPeriodATR - ATR计算周期。用于计算平均真实范围的K线数量。 交易设置 InpSignalsOnly - 不进行交易,仅设置信号标签。如果设为真,顾问将不会开仓,只会在图表上显示信号; InpVolume - 开仓的手数。每笔交易的手数大小; InpDeviation - 滑点(以点为单位)。执行订单时允许的最大价格偏差; InpMagic - 魔术数字。用于跟踪EA仓位的唯一标识符; InpStopLoss - 止损(以点为单位)。止损水平。0表示不设置,-1表示按布林带宽度的一半计算; InpTakeProfit - 获利(以点为单位)。获利水平。0表示不设置,-1表示按ATR值计算; InpSLMltp - 止损大小的倍数,如果止损== -1。允许增加或减少自动计算的止损; InpTPMltp - 获利大小的倍数,如果获利== -1。允许增加或减少自动计算的获利。 默认的输入参数值经过优化,适合在H4图表周期上进行测试。 以下是使用默认参数在H4上进行的“所有报价”模式的测试结果:

2025.10.21

MetaTrader免费指标

MetaTrader 5 开盘区间突破指标使用指南
MetaTrader5
MetaTrader 5 开盘区间突破指标使用指南

概述 开盘区间突破(ORB)指标是一款强大的技术分析工具,能够识别和追踪交易时段开盘范围内的价格突破。这个指标的原理在于,交易时段最初几分钟内确定的高低价往往会在当天内成为重要的支撑和阻力位。 该指标会根据用户自定义的时间段自动计算开盘区间,绘制多个价格目标,并提供视觉和声音警报,以帮助交易者发现潜在的交易机会。它旨在帮助交易者识别高概率的突破交易和回测场景。 核心概念 ORB策略基于市场参与者在交易时段开盘期间建立初始价格区间的原理。当价格坚决突破这一范围时,往往会朝着突破的方向持续移动。该指标跟踪开盘区间,并根据区间大小预测多个盈利目标。 主要功能包括自动检测突破信号、识别回测,以及根据开盘区间的倍数计算逐步盈利目标。 指标参数 基本设置 sOpeningRangeMinutes(默认值:“15”) 定义开盘区间的时间段,以分钟为单位。可选项包括5、15、30分钟,或者设置为0以自定义时间范围。15分钟开盘区间(东部时间9:30-9:45)通常适用于美国股票市场,而较短的时间适合波动较快的市场。 alertBreakoutsOnly(默认值:false) 启用后,仅在确认的突破时触发警报,而不是简单的价格穿越ORB水平。这可以通过要求价格在范围外收盘并继续朝突破方向移动来减少虚假信号。 showLabels(默认值:true) 在图表上显示所有ORB水平和价格目标的文本标签。标签显示“ORB HIGH”、“ORB LOW”和基于百分比的盈利目标(PT 50%、PT 100%等)。 showPreviousDayORBs(默认值:true) 控制前一个交易时段的ORB水平是否在图表上可见。禁用时,仅显示当前日的ORB,以减少图表杂乱。 showEntries(默认值:true) 为潜在入场点启用视觉标记,包括“突破 - 等待回测”、“回测”和“失败回测”标签。这些注释帮助交易者识别最佳入场时机。 显示选项 showPriceTargets(默认值:true) 显示50%和100%开盘区间大小的主要盈利目标。这些是常用的部分盈利目标。 showPriceTargetsExtended(默认值:false) 添加从150%到500%开盘区间的扩展盈利目标。这些扩展目标对趋势市场或高度波动的工具,如黄金(XAUUSD),非常有用。 showMidPoint(默认值:false) 在开盘区间的中心绘制一条线。中点通常作为支撑位,可以用于均值回归策略。 showShadedBox(默认值:true) 在开盘区间时间段上绘制一个填充矩形,清晰地标识出ORB区域。 颜色自定义 shadeColor(默认值:clrTeal) 设置开盘区间矩形的填充颜色。 orb50Color(默认值:clrPurple) 50%盈利目标线的颜色。 orb100Color(默认值:clrBlue) 100%盈利目标线的颜色。 orbOtherColor(默认值:clrTeal) 所有扩展盈利目标(150%到450%)的颜色。 时间设置 sORBStartTime(默认值:“0930-0945”) 以24小时格式(HHMM-HHMM)覆盖自定义时间。当sOpeningRangeMinutes设置为0时,此参数允许完全灵活地定义开盘区间时间。 sTimeZone(默认值:“EST”) 开盘区间计算的参考时区。该参数接受不同的时区缩写,指标根据经纪商的服务器时间计算时间。 标签格式 labelOffsetBars(默认值:5) 当前价格动作与标签位置之间的水平间距(以条为单位)。正值将标签向右移动。 labelOffsetPips(默认值:0) 标签定位的垂直间距(以点为单位)。这有助于防止标签与价格动作或其他图表元素重叠。 labelFontSize(默认值:8) 所有图表文本标签的字体大小。根据屏幕分辨率和个人偏好进行调整。 labelAnchor(默认值:ANCHOR_LEFT) 决定标签定位的锚点。选项包括 ANCHOR_LEFT、ANCHOR_RIGHT、ANCHOR_CENTER 等。 maxLineBars(默认值:500) ORB水平线的最大长度(以条为单位)。这防止指标在历史数据上绘制过长的线条,从而提高性能。 指标工作原理 开盘区间计算 该指标通过监控指定的时间段并记录该窗口内的最高价和最低价来识别开盘区间。例如,对于15分钟的设置,它捕捉9:30到9:45之间的范围。 一旦开盘区间结束,高低水平被锁定并向前延伸为水平线,持续整个交易时段。 价格目标计算 所有盈利目标都是开盘区间大小的倍数计算的。如果开盘区间为20点,50%的目标将在ORB高点(多头交易)或ORB低点(空头交易)之上或之下10点。100%目标为20点,150%为30点,以此类推。 这种动态缩放确保盈利目标根据市场波动自动调整,较大的区间产生更宽的目标,而较小的区间产生更紧的目标。 突破检测逻辑 该指标采用复杂的多条确认来检测突破信号。有效的上涨突破要求价格在一条K线收盘高于ORB高点,然后在下一根K线继续走高,且低点保持在ORB高点之上。这可以过滤掉价格短暂突破后立即反转的虚假突破。 类似地,向下突破要求在ORB低点以下收盘,随后高点保持在该水平以下。 回测识别 在确认突破后,指标监控价格回撤至被突破的水平。有效的回测发生在价格返回触及ORB水平,但在正确一侧收盘,从而确认该水平已从阻力转为支撑(或反之)。 当价格反向突破ORB水平时,标记为失败回测,从而使原始突破信号失效。 解读与交易应用 突破交易策略 主要应用是识别高概率的突破交易。当价格以成交量和动量突破开盘区间时,交易者可以在突破方向入场,止损设在ORB低点下方(多头交易)或ORB高点上方(空头交易)。 首个盈利目标通常是50%水平,可以在此处实现部分盈利。剩余仓位则以100%水平或更高的目标进行交易,特别是在强势趋势中。 回测入场方法 保守型交易者更倾向于在初次突破后等待回测。标签“突破 - 等待回测”表示此机会。当价格回撤测试被突破的水平并找到支撑(或阻力)时,提供了一个风险更低的入场点,止损更紧。 这种方法显著提高了风险收益比,相比追逐初次突破的策略更具优势。 区间交易 当价格仍在开盘区间内时,交易者可以采用均值回归策略,在ORB低位附近买入,在ORB高位附近卖出。中点线作为中立位置的参考。 多时间框架分析 该指标可以同时应用于多个时间框架。一些交易者使用5分钟的ORB进行剥头皮交易,15分钟的ORB进行日内交易,30分钟的ORB进行摆动交易,从而全面分析潜在的支撑和阻力区域。 推荐的交易品种与时间框架 最佳时间框架 该指标在1分钟(M1)到15分钟(M15)图表上效果最佳,此时日内价格动作清晰可见。为了详细分析入场时机,M5时间框架提供了良好的噪声过滤与响应平衡。 适合的交易工具 ORB策略在流动性高且开盘时段清晰的工具上特别有效: 外汇对:EURUSD、GBPUSD、USDJPY在各自区域开盘时 黄金(XAUUSD):由于强烈的方向性波动,对开盘区间突破反应灵敏 股票指数:US30、NAS100、SPX500在纽约开盘期间 加密货币:在高成交量时的BTCUSD、ETHUSD 该指标在具有明确交易时段的工具上表现最佳,而不是没有明确开盘时间的24小时市场。 性能优化 该指标包含多种性能优化,以确保图表操作流畅。缓冲初始化为EMPTY_VALUE防止不必要的线条绘制,而maxLineBars参数限制历史线条长度。矩形绘制逻辑在会话结束前不会显示,从而减少活跃交易期间的计算开销。 对象命名约定使用基于年中日期的唯一标识符,防止在同时显示多个ORB会话时发生冲突。 警报系统 通知系统通过MetaTrader 5内置的警报机制提供实时警报。警报可以配置为简单的水平穿越或仅限于确认的突破。当发生突破时,警报信息会指明是在ORB高点以上还是ORB低点以下,使交易者能够快速评估机会,而无需持续盯着图表。 视觉呈现 所有图表元素遵循专业格式标准,并可自定义颜色。默认的配色方案为ORB高点使用青柠色,ORB低点使用红色,50%目标使用紫色,100%目标使用蓝色,扩展目标和填充范围框使用青色。这种颜色编码系统能够在繁忙的图表上快速识别关键水平。 填充矩形为开盘区间时间段提供了直观的视觉参考,使得在价格交易于已建立的范围内或外时一目了然。 结论 开盘区间突破指标是一款综合性的交易工具,结合自动范围计算、多个盈利目标、突破检测和回测识别,易于使用。其通过广泛的输入参数提供的灵活性,使交易者能够根据不同的交易风格进行调整,从激进的突破交易到保守的回测入场。 该指标的干净视觉呈现和合理的警报系统使其适用于自由交易者和开发自动交易系统的交易者。通过关注关键的开盘区间时间段,帮助交易者识别每个交易时段最重要的支撑和阻力水平。

2025.11.13
WaveWeisBarForce:MetaTrader 5 的波动量指标解析
MetaTrader5
WaveWeisBarForce:MetaTrader 5 的波动量指标解析

WaveWeisBarForce - 累计波动量指标 WaveWeisBarForce 是一款利用波动量(Weis)逻辑的指标,旨在帮助交易者识别市场的积累和方向变化。 当趋势保持不变时,它会持续累加交易量;而一旦方向改变,它就会开启新一波,并将累计值重置为零。 指标的强度通过当前波动量与最近最大累计量的比率进行计算(强度窗口)。 输入参数 Volume_type - 定义交易量来源(点数或真实交易量)。 Intensity - 用于强度参考的柱子窗口。 看涨级别 (1 到 4) - 从浅绿到LIME的绿色级别。 看跌级别 (1 到 4) - 从浅红到RED的红色级别。 输入参数界面示例: 可视化解读 看涨级别 级别 1: 非常浅的绿色(低强度波动)。 级别 2: 浅绿色。 级别 3: 中等绿色。 级别 4: LIME(最高强度看涨波动)。 看跌级别 级别 1: 非常浅的红色(低强度波动)。 级别 2: 浅红色。 级别 3: 中等红色。 级别 4: RED(最高强度看跌波动)。 WaveMax (白色) - 标记当前波动中交易量最高的柱子。 WaveClimax (黄色) - 标记当前波动积累超过历史最佳积累的时刻。 指标在图表中的应用示例: 注意事项 图例中仅显示当前的累计值。 WaveMax 和 WaveClimax 默认隐藏,以保持图表的整洁。 该指标适用于任何资产及时间框架,尤其适合日内交易分析。

2025.10.25

加密货币市场

货币对名称
现价
起始价
最高价
最低价
涨跌
涨跌幅
BTCUSDT
83,771.95
82,850.02
85,620.00
80,600.00
921.93
+1.11 %
ETHUSDT
2,712.32
2,699.86
2,806.84
2,623.57
12.46
+0.46 %
XRPUSDT
1.9028
1.8994
1.9984
1.8209
0.0034
+0.18 %
SOLUSDT
125.89
125.22
130.62
121.66
0.67
+0.54 %
DOGEUSDT
0.13680
0.13788
0.14350
0.13321
-0.00108
-0.78 %
TRXUSDT
0.2739
0.2767
0.2780
0.2737
-0.0028
-1.01 %
ADAUSDT
0.3990
0.4028
0.4177
0.3876
-0.0038
-0.94 %

FX保证金市场

货币对名称
现价
起始价
最高价
最低价
涨跌
涨跌幅
EURUSD
0
0
0
0
0
+0.00 %
GBPUSD
0
0
0
0
0
+0.00 %
USDJPY
0
0
0
0
0
+0.00 %
AUDUSD
0
0
0
0
0
+0.00 %
USDCAD
0
0
0
0
0
+0.00 %
NZDUSD
0
0
0
0
0
+0.00 %