请观看如何免费下载自动交易
请在Twitter上找到我们!
加入我们粉丝页
您可以访问代码库从您的MetaTrader 5客户端
不能找到合适的代码?定制它在工作项目
如何编写EA交易或指标

MQL4 和 MQL5 的源代码库

icon

您不知道在哪开始学习MQL5或MQL4编程语言?这里提供适用于您MetaTrader程序端的各种程序。下载并学习已发布的代码示例,开发您自己的指标和EA交易。在最大的MQL5和MQL4代码程序库中发布您的程序,它们将提供给每一个MetaTrader程序端和MetaEditor。

您的MQL4 和 MQL5代码示例将分布于世界各地,成百上千的交易者们将会认识您!

提交您的代码

将EA中的每种交易策略分别记录在独立的记录中,而不是将其合并到一条净值曲线上。该工具在初始化时会根据账户的交易历史自动重建自身,因此重启不会导致记录丢失。在原始胜率旁边显示威尔逊评分下限,这样三笔交易的连胜就不再看起来像是一种优势了。

从法兰克福、伦敦、纽约或东京的现货开盘开始,对当前交易日的每根K线进行编号。基准时间会从交易所当地时间转换为经纪商服务器时间,并自动调整夏令时,因此无论夏季还是冬季,开盘后的第一根K线始终编号为1。

教育版MT5自动交易程序(EA):基于闭市K线的EMA交叉入场策略,基于ATR的止损和止盈设置,通过OrderCalcProfit根据净值固定百分比计算手数,点差过滤器,魔术号码隔离以及服务器返回代码检查。这是一个用于构建风险可控EA的简洁模板。不作任何盈利承诺。

在子窗口中显示点差直方图,包含当前/平均/最大/最小统计数据、每笔交易成本以及针对短线交易者的阈值警报。

利用ADX、赫斯特指数和滞后1的自相关系数对市场进行分类,将每个K线分流至突破模块或均值回归模块,并针对每个市场状态分别维护一个胜率记录表(采用威尔逊95%下限),以便您能清楚地看到其中哪一半策略真正有效。

根据您的风险比例和止损距离计算出交易手数,然后在已设置止损和止盈的情况下开仓。绝不会自行进行交易。

Read-only panel watching two four-corner basis groups: live divergence in pips, with only real edges flagged.

三种起作用不同的仓位规模保护机制;正是因为混淆了它们,才导致如此多的账户被清零: - 阶梯式:每X的余额对应一份合约,始终作为上限(CAP)应用,即使手动设定手数也是如此; - 底限(floor):余额低于最低资本要求时停止交易;需进行新的入金; - 断路器(breaker):无论账户规模大小,当余额跌破峰值X%时触发止损,且不会自动重置。 本库解决了一个几乎所有其他库都未解决的问题:入金不等于盈利,提现不等于亏损。 断路器是根据账户余额峰值来衡量跌幅的。如果不加以处理,在回撤期间进行的入金会同时推高余额和峰值,导致保护机制恰恰在最需要发挥作用的时候无法识别跌幅。在此情况下,入金和出金会以相同幅度改变峰值。 峰值会被保存到文件中:如果一个止损机制在终端重启后会忘记峰值,那它就称不上是止损机制。 该演示程序模拟了在回撤谷底进行入金的情况。请分别开启和关闭入金功能运行程序,并比较“跌幅”列的数据。

根据风险金额计算仓位规模,该风险金额基于该交易品种的实际点值、点幅和成交量步长计算得出,而非基于假设的点值。该功能始终将成交量向下取整;当您的风险金额小于最小手数时,系统会提示并报告该手数实际所需的成本。 该程序不依赖交易终端状态,因此其仓位计算逻辑可离线测试——附带一个包含41个断言的测试脚本。

将止损位拖动到您真正想要的位置,点击“买入”或“卖出”,手数就会自动调整正确——无需计算器,也无需电子表格。该功能支持设置盈亏平衡点和追踪止损,并在触及止损限额时自动结束当日交易。

Spread Monitor — 一款适用于 MetaTrader 5 的简易信息指标。

Spread Monitor 是一款适用于 MetaTrader 5 的简易信息指标。它以紧凑的图形面板形式显示当前点差(单位为点),并配有颜色标识和水平线。

Heiken Ashi ATR 混合指标结合了平滑后的 Heiken Ashi 蜡烛图、基于 ATR 的波动率过滤以及快/慢 EMA 趋势确认,用于识别潜在的趋势反转信号。

该策略在两条移动平均线(Fast 和 Slow)交叉时开仓。适用于任何交易品种和时间周期。

MarketInfo 是一款适用于 MetaTrader 5 的简易信息脚本。它会收集当前交易品种的关键数据并将其记录到日志中,包括:价格、点差、波动率(ATR)、K线收盘前剩余时间、N根K线的统计数据以及趋势判断。

一种基于ATR确定仓位大小并结合更高时间周期趋势过滤器的流动性扫盘/订单块短线交易策略。每笔交易在图表上都会标注该交易模式的实时历史胜率——这不仅是一组数据,更是一份动态记分卡。

当规则判定交易无法回本时(例如:价格反向波动超过 N × ATR、亏损持续时间过长、EMA 趋势反转、RSI 与持仓方向不符,或触及资金上限),系统会在止损位完全触发前提前平仓。绝不触碰盈利头寸。仅观察模式会记录本应平仓的交易,但不会实际平仓。 每次平仓都会连同规则、持仓时长和最大不利波动幅度一起写入CSV文件,以便根据数据对规则进行调整。

A chart panel for MT5 that places Buy Limit, Sell Limit, Buy Stop and Sell Stop pending orders with one click. Volume, distance and optional SL/TP are set on the panel; OCO cancels the opposite order automatically. Includes bulk delete, a live order list and automatic handling of broker STOPS_LEVEL and filling mode. Execution tool only - no signals, no guaranteed results.

GDS Renko 回放训练器是一款免费的教学工具,用于在 MetaTrader 5 的历史 Renko 图表上练习手动决策。 加载历史时间段,向前回放并下达虚拟的买入或卖出交易。 您可以暂停、向前推进一个报价点,或跳转至下一个已完成的Renko砖块。每个虚拟头寸均设有止损和止盈,且该训练工具会记录您的交易会话结果。 该工具基于历史买价/卖价报价点构建固定大小的Renko砖块,并采用经典的两砖反转模式。 未来的价格 tick 不会用于绘制可见图表或执行虚拟交易。买入交易以卖价入场、以买价平仓;卖出交易则相反。在面板上输入的订单将等待下一个回放的有效 tick。止损和止盈会在每个 tick 时进行检查,包括价格跳空的情况。

这是一个包含24个MQL5类的库,用于监控任何账户是否符合自营交易公司的规则手册——包括回撤、日亏损、盈利稳定性、最低交易天数、新闻禁令等——一旦出现违规,该库会立即平仓,且绝不会自行开仓。

将当前时段迄今为止的波动范围与历史波动范围的完整分布进行对比——这是真正的百分位数,而非像ADR%那样仅与平均值进行比较——并在带百分位数刻度的紧凑实时面板上标注统计上的压缩或扩张情况。

EMTOrdersUtility 是一款实时交易监控与符号切换工具,专为需要实时查看其在多种金融工具上持仓情况的活跃交易者而设计。

PulseStrike Scalper——统计式突发信号检测EA

一款用于寻找稳定趋势的快速市场扫描工具。该脚本能在1秒内分析“市场概览”中的所有交易品种,并通过线性回归R²和ADX指标,找出走势最为清晰且强劲的交易品种。

AurumNeuro Vanguard 是一款专为 XAUUSD(黄金)交易设计的智能专家顾问(EA),它将混合神经网络风险架构与统一市场动力引擎(UMDE)相结合。

一种基于 tick 数据的短线交易策略,仅交易真正的统计异常价格波动,并通过合理的仓位管理和风险控制措施,确保能在实际经纪商执行延迟的情况下生存下来。回测结果如下。

GDS Renko 双移动平均线演示EA是一款适用于MetaTrader 5的小型教学型专家顾问。它展示了一种将经典的固定尺寸Renko砖块与直接根据已完成的Renko收盘价计算得出的两条简单移动平均线相结合的简便方法。

该指标显示价格的平均秩速度

一款专为自营交易公司挑战设计的严格风险管理工具。它会自动监控您的整个账户,以防止出现日最大回撤和最大回撤超限的情况。当点差骤升或您进行报复性交易时,该工具会充当安全缓冲,在您的评估终止前立即平仓所有持仓和挂单。

对每笔头寸(无论是由手动还是由其他EA开仓)强制执行您设定的风险规则:显示符合您风险承受能力的手数,在亏损达到设定值后锁定账户一天,限制持仓数量,削减风险超出允许范围的头寸,并为任何未设置止损的头寸添加止损单。

GDS Renko Canvas 是一个紧凑型教学指标,展示了如何利用标准的 CCanvas 类在 MetaTrader 5 中直接绘制经典的固定尺寸 Renko 图表。 该指标根据收到的买价(BID)报价构建 Renko 砖块,并仅显示已完成的砖块。 趋势延续仅需一个砖块,而趋势反转则遵循经典的两砖规则。 与基于对象的 Renko 叠加层不同,可见图表绘制在单个 Canvas 位图层上。这使得图表对象列表保持精简,并使调整大小时的重新绘制变得简单直接。

一个小型教学型专家顾问,演示如何直接从已形成的经典Renko砖块中计算出怀尔德的ADX和方向性运动指标。 该EA在内部基于买价(BID)报价构建固定大小的Renko砖块。无需离线图表、自定义符号、DLL文件或外部指标。+DI、-DI和ADX仅在Renko砖块形成后才会更新。

免费的霓虹风格 MT5 账户仪表盘,可在图表上直接显示余额、净值、浮动盈亏、每日已实现盈亏、胜率及持仓头寸。

免费的MT5持仓风险监控工具,可在图表上直接显示止损风险、账户风险百分比、未设置止损的持仓以及单个持仓的风险。

GDS Renko Brick Statistics 是一款适用于 MetaTrader 5 的紧凑型教育指标,它通过内部处理买价(BID)报价数据来构建经典的固定尺寸 Renko 图块,并汇总最近完成的 Renko 图块的行为特征。

GDS Renko Canvas + Donchian 是一款适用于 MetaTrader 5 的紧凑型教育指标。它在单个 CCanvas 位图图层上绘制经典的固定尺寸 Renko 砖块,并在其上叠加直接根据已完成的 Renko 砖块计算得出的唐奇安通道。 横轴代表 Renko 序列,而非时间。内部构建器使用传入的 BID 报价数据,并采用经典的“两块反转”规则。Donchian 通道具有因果性:对于每个新完成的砖块,通道仅根据前 N 个已完成的 Renko 砖块进行计算。当前砖块不参与其自身通道的计算。

GDS Renko Bollinger 4-Mode Demo EA 是一款适用于 MetaTrader 5 的免费教育型专家顾问。它演示了在同一个独立专家顾问中,将经典固定尺寸的 Renko 砖块与布林带结合的四种不同方式。 该EA根据接收到的买价(BID)报价构建四个独立的内部Renko数据流。每种模式都有其专属的Renko砖块大小和布林带参数设置。仅当Renko砖块完全形成后才会生成交易信号。布林带是根据先前已形成的Renko收盘价顺时序计算得出的,因此当前砖块在完成信号验证之前不会被纳入计算。

一款适用于MetaTrader 5的紧凑型教育指标,它在单个CCanvas位图图层上绘制经典的固定尺寸Renko砖块,并叠加直接根据已完成的Renko收盘价计算得出的布林带。 横轴代表Renko序列,而非时间。内部Renko生成器使用传入的买价(BID)报价数据,并采用经典的两块反转规则。布林带仅根据已完成的Renko砖块进行计算;正在形成的砖块绝不会被用于布林带的计算。

适用于XAUUSD的M15周期EMA(10)×EMA(30)短线交易策略,带雅加达交易时段过滤器。教学示例:固定手数,止损/止盈以点为单位,最多1个仓位,点差过滤器。基于100%真实行情数据进行测试。

本教育型专家顾问演示了在 MetaTrader 5 上利用 Renko 砖块进行动量交易的一种简单方法。 动量是指最新完成的 Renko 收盘价与 N 个砖块前的收盘价之间的差值,除以砖块大小。当动量突破正阈值时产生买入信号;当动量跌破负阈值时产生卖出信号。 价格维持在阈值之外时,不会产生重复信号。 该EA在内部基于买价 tick 构建经典的固定尺寸Renko图表,并采用两砖反转规则。下单时使用现有的市场买价/卖价,而非合成砖价。如果一个 tick 形成多个砖,只有最后一个砖的突破才能触发入场。 该EA每次仅持有一笔头寸,并具备虚拟止盈、虚拟止损、最大持仓时间、冷却期及点差过滤功能。无需外部指标、DLL、自定义符号或离线图表。

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180