EA入门指南:MT4自定义指标结构解析

MT4自定义指标通常由四个核心部分构成:

(1)文件头部

(2)参数、变量和数组的定义

(3)初始化函数init()

(4)主函数start()

EA入门系列一:MT4自定义指标的结构

一、文件头部,爱华官网也称为预处理程序

预处理程序以“#”开头,行尾不需要添加语句结束符“;”

常用的预处理程序有:

1、#property indicator_chart_window

该语句用于将指标显示在主图中,例如均线、SRA等类型的指标会用到。

2、#property indicator_separate_window

该语句用于将指标显示在副图中,如MACD、RSI、威廉等指标会用到。

3、#property indicator_buffers 3

用于设定显示3根指标线。

4、#property indicator_color1 Red

用于设定第1根指标线的颜色为红色。

5、#property indicator_width1 1

用于设定第1根指标线的粗细为1。

6、#property indicator_level1 0.00

用于在0.00值位置绘制一条水平虚线。

二、参数、变量和数组的定义

全局性的参数、变量和数组在此处定义,而局部变量则可以在start()函数内部定义。

三、初始化函数init()

init()函数在自定义指标加载时运行一次,其主要功能是进行“设置”。如果指标需要绘制线条,则通常会使用到此函数。

四、主函数start()

当数据发生变动时,start()函数会被触发,数据每变动一次,该函数就会执行一次。自定义指标的编程工作主要依托于此函数完成。

start()函数的主要作用是获取数值并为指标线赋值,同时报警功能也可以在此函数内实现。

此外,还有一个反初始化函数deinit()。

deinit()在自定义指标被卸载时运行一次,可用于清除指标加载时由init()所做的初始化操作。