MT4平台外汇EA编写入门基础教程

近年来,国内外汇市场的参与人数持续增长,投资者的专业水平也在不断提升。在策略日趋成熟的同时,各类辅助交易工具,如EA程序化交易,也逐渐普及开来。那么,EA交易或程序化交易是否复杂且神秘,是否与普通投资者相距甚远呢?

实际上并非如此。EA交易是随着MT4等交易平台的诞生而出现的,目前仍是人工交易的补充工具,完全取代个人交易的说法并不现实。市面上那些宣称比先进人工智能还要厉害的团队,往往言过其实。

言归正传,既然EA并不复杂,那么如何快速学会并编写自己的第一个EA呢?在假期里,小编将带来这份快速入门教程。假期中外汇市场仍在交易,若没有时间盯盘,不妨尝试编写一个EA:

首先,回顾一下EA空白程序的创建步骤。

第一步,打开MT4平台,点击顶部菜单中的“编辑器”。

第二步,点击“新建”,勾选“Expert Advisor”,然后点击“下一步”。

第三步,为EA命名,例如“我的第一个EA”,继续点击“下一步”,在后续窗口中保持默认设置,直接点击“完成”即可。

这样,一个空白的EA程序就创建成功了,是不是很简单?

接下来,正式开始编写属于自己的EA。先来认识一下这个空白程序的结构。

自己编写MT4平台外汇交易EA(三分钟入门)

自己编写MT4平台外汇交易EA(三分钟入门)

A区域是注释版块,即使没有该区域,也不影响EA的正常运行。通常我们会在其中留下关于EA的基本信息和作者信息。

C区域是初始化版块,该程序在EA启动时执行一次,之后不再运行。它主要用于初始化数据,当需要修改变量时,可在此处操作。

D区域是反初始化程序,在EA结束时被调用,用于清理EA运行期间所绘制的线条等资源。

E区域是整个EA的核心部分,大部分主要代码都集中在此。该区域在每个Tick(时间单位)内都会被调用,因为行情实时变化,EA需要不断判断是否满足开平仓条件,所以这是EA的核心所在。

接下来,开始编写“我的第一个EA”。

第一步,让EA显示基本信息,例如版本号“V1.00”。

第二步,提示程序功能(本次目标:让EA显示盘面实时买入价)。注意,输入字母和符号时尽量使用英文输入法。

接着,让EA在图表版面显示“买入价”。

程序代码如下:

程序说明:

Double mairujia=0;定义双精度变量买入价并赋值。

string jiage1="",xianshi="";定义字符串变量“jiage1”和“xianshi”。

mairujia=Bid;将内部变量Bid的值赋予mairujia。

jiage1=DoubleToStr(mairujia,4);将mairujia保留四位小数,并转换为字符串类型,然后赋值给jiage1。

xianshi="当前买入价Bid="+jiage1+"";为xianshi变量赋值。

Comment(xianshi);将xianshi变量的值显示到屏幕上。

至此,我们的第一个EA便编写完成。

EA在交易执行方面具有明显优势,例如借助服务器实现更快的交易速度、更稳定的运行,且能24小时不间断运转。