MT4/MT5 EA部署教程 - 06月28日更新
兄弟们,最近在群里看到不少朋友问EA怎么部署到实盘,尤其是刚入坑的新手,经常卡在编译、加载或者文件路径这些细节上。今天趁周末整理一下我的实操流程,尽量把坑点都标出来,希望对大家有帮助。
首先,不管你用的是MT4还是MT5,EA本质上都是一个ex4或ex5文件(编译后),或者更原始的mq4/mq5源码文件。部署前,确保你手头有源码或编译好的文件。如果是别人给的ex4,那就直接复制;如果是mq4,你需要在MT4自带的MetaEditor里编译一下——注意,编译时默认会生成ex4,但如果代码有语法错误,会报红,这时候先检查include文件是否缺失,比如很多EA依赖的“Trade.mqh”或者“stdlib.mql4”,这些文件必须放在Include文件夹里。
第一步,找到MT4/MT5的安装目录。windows系统默认在C:\Program Files\MetaTrader 4或5,但如果你安装时改了路径,右键桌面图标选“打开文件位置”就能定位。进去后找MQL4文件夹(MT4)或MQL5文件夹(MT5),里面有两个关键子目录:Experts和Include。把EA的ex4文件复制到Experts目录下,如果有配套的dll文件(比如调用外部API的),则复制到Libraries目录。注意,dll文件必须放在Libraries里,否则EA加载时会报“无法加载库文件”的错误。
第二步,重启MT4/MT5终端,然后在导航器(Navigator)窗口的“EA交易”列表里,右键点击空白处选“刷新”。这时候你的EA应该出现了。如果没有出现,检查文件后缀名:MT4只认ex4,MT5只认ex5,千万别放错。还有一种情况是EA文件名包含特殊符号(比如中文或空格),建议改成纯英文和下划线组合,比如“MyEA_v1.0.ex4”。
第三步,加载EA到图表。拖拽EA到任意货币对图表上,会弹出一个设置窗口。这里重点说一下实盘和模拟盘的区别:实盘环境下,建议先勾选“允许DLL导入”和“允许实时自动交易”,但别无脑勾——如果EA不需要外部dll,就别开DLL导入,避免安全隐患。另外,资金管理参数(比如手数、止损点数)根据你的账户余额调整,新手建议从0.01手开始测试。
第四步,检查运行状态。加载后,图表右上角应该出现一个笑脸图标(MT4里是黄色笑脸,MT5是绿色箭头)。如果是哭脸或灰色,说明EA被禁用了。常见原因:一是“自动交易”按钮没点亮(工具栏上的那个播放按钮);二是经纪商对EA有白名单限制,比如某些ECN账户需要手动开启“允许EA交易”选项。如果图标还是不正常,打开“专家”标签页看日志,错误信息会提示是“交易环境不允许”还是“参数非法”。
最后,额外提一个容易踩的坑:多时间框架EA。如果你用的EA需要引用其他周期的数据(比如15分钟图表调用1小时均线),一定要确保这些图表已经打开,或者EA代码里有“ChartOpen”函数来动态创建图表。否则,EA会一直等待数据,导致策略失效。我自己曾因为这个在EURUSD上挂了三天没开单,最后发现是没开H1图表。
对了,如果是MT5,部署流程几乎一样,只是文件路径从MQL4变成MQL5,而且MT5的EA默认参数设置里多了“允许Algo Trading”的选项,记得勾上。
以上步骤看起来多,实际操作起来也就几分钟。如果还有问题,比如编译报错或者加载后不运行,直接贴日志到论坛,大家帮忙看。今天就先写这些,改天有空再单独写一篇关于EA调试和日志分析的帖子。
兄弟们,最近在群里看到不少朋友问EA怎么部署到实盘,尤其是刚入坑的新手,经常卡在编译、加载或者文件路径这些细节上。今天趁周末整理一下我的实操流程,尽量把坑点都标出来,希望对大家有帮助。
首先,不管你用的是MT4还是MT5,EA本质上都是一个ex4或ex5文件(编译后),或者更原始的mq4/mq5源码文件。部署前,确保你手头有源码或编译好的文件。如果是别人给的ex4,那就直接复制;如果是mq4,你需要在MT4自带的MetaEditor里编译一下——注意,编译时默认会生成ex4,但如果代码有语法错误,会报红,这时候先检查include文件是否缺失,比如很多EA依赖的“Trade.mqh”或者“stdlib.mql4”,这些文件必须放在Include文件夹里。
第一步,找到MT4/MT5的安装目录。windows系统默认在C:\Program Files\MetaTrader 4或5,但如果你安装时改了路径,右键桌面图标选“打开文件位置”就能定位。进去后找MQL4文件夹(MT4)或MQL5文件夹(MT5),里面有两个关键子目录:Experts和Include。把EA的ex4文件复制到Experts目录下,如果有配套的dll文件(比如调用外部API的),则复制到Libraries目录。注意,dll文件必须放在Libraries里,否则EA加载时会报“无法加载库文件”的错误。
第二步,重启MT4/MT5终端,然后在导航器(Navigator)窗口的“EA交易”列表里,右键点击空白处选“刷新”。这时候你的EA应该出现了。如果没有出现,检查文件后缀名:MT4只认ex4,MT5只认ex5,千万别放错。还有一种情况是EA文件名包含特殊符号(比如中文或空格),建议改成纯英文和下划线组合,比如“MyEA_v1.0.ex4”。
第三步,加载EA到图表。拖拽EA到任意货币对图表上,会弹出一个设置窗口。这里重点说一下实盘和模拟盘的区别:实盘环境下,建议先勾选“允许DLL导入”和“允许实时自动交易”,但别无脑勾——如果EA不需要外部dll,就别开DLL导入,避免安全隐患。另外,资金管理参数(比如手数、止损点数)根据你的账户余额调整,新手建议从0.01手开始测试。
第四步,检查运行状态。加载后,图表右上角应该出现一个笑脸图标(MT4里是黄色笑脸,MT5是绿色箭头)。如果是哭脸或灰色,说明EA被禁用了。常见原因:一是“自动交易”按钮没点亮(工具栏上的那个播放按钮);二是经纪商对EA有白名单限制,比如某些ECN账户需要手动开启“允许EA交易”选项。如果图标还是不正常,打开“专家”标签页看日志,错误信息会提示是“交易环境不允许”还是“参数非法”。
最后,额外提一个容易踩的坑:多时间框架EA。如果你用的EA需要引用其他周期的数据(比如15分钟图表调用1小时均线),一定要确保这些图表已经打开,或者EA代码里有“ChartOpen”函数来动态创建图表。否则,EA会一直等待数据,导致策略失效。我自己曾因为这个在EURUSD上挂了三天没开单,最后发现是没开H1图表。
对了,如果是MT5,部署流程几乎一样,只是文件路径从MQL4变成MQL5,而且MT5的EA默认参数设置里多了“允许Algo Trading”的选项,记得勾上。
以上步骤看起来多,实际操作起来也就几分钟。如果还有问题,比如编译报错或者加载后不运行,直接贴日志到论坛,大家帮忙看。今天就先写这些,改天有空再单独写一篇关于EA调试和日志分析的帖子。
专注交易策略编程实现,分享MQL开发技巧与代码优化方案