美文网首页MQL4
外汇自动交易中EA,指标,脚本的区别

外汇自动交易中EA,指标,脚本的区别

作者: 索隆的南南鸟 | 来源:发表于2020-05-24 19:08 被阅读0次

这个概念对编程来说是个很重要的定义,这三个东西每个都是不可替代的。

定义上区别

大白话描述的话就是:

  • EA:最重要的就是可以下单,平仓,修改订单之类的,相当于一个工程啊这样的一个存在。

  • 指标:在K线图上,画一些有提示作用的一些线,图啊之类的,提示下单的人这个地方发生了什么,起到提示作用,报警功能。

  • 脚本:半自动化交易非常重要的东西,只执行一次,可以帮助操盘手达到快速下单的目的。(当然也可以干别的啦,可以在界面上设置快捷键,比较方便)

基本框架函数

  • EA编写:init()、deinit()、start()

  • 脚本编写:start()

  • 指标编写:init()、deinit()、start()

预定义函数init()、deinit()、start()详解:

init():开始运行时的初始化操作。可以用这个函数在开始自定义指标或者自动交易之前做初始化操作。如果这个函数不可用,初始化时就不会调用任何函数。

deinit():停止运行时的操作。比如关掉窗口的时候。执行与init()函数相反的操作,deinit()函数往往用来做“清理善后”的工作,例如,创建对象时开辟了一片内存空间,退出模块前需要释放。如果用户没有编写该函数,它也不会执行任何操作

start():是主函数。K线每波动一次都会执行一次(不包括脚本)。对于自定义指标,在指标添加到图表之后,或在客户端开始运行之时,也可在收到下一跳数据之后,该函数被调用。对于脚本,在脚本被添加到图表之后立即执行并初始化。如果模块中根本不存在start()函数,模块(智能交易,脚本或自定义指标)就不能执行。

说明:

  1. 预定义函数可以带参数。不过当客户端调用这些函数时,不能从外部向它传递参数,只能采用默认值。start(),init(),deinit()函数可以从模块的任何一点按照常规函数规则调用,等同于其他函数。
  2. 不推荐从init()函数调用start()函数或是执行交易操作。对于图表数据,市价等,在模块初始化期间,数据可能残缺不全,这时,init()和deinit()函数必须尽快地完成任务。在调用start()函数之前,千万不要开始尝试交易操作。

创建流程

具体的创建流程以及参数说明 在交易系统菜单栏里面查看:

帮助->帮助主题(直接按F1进入也是可以的)

可以参考下下边的图片,找到相应的位置,具体看下创建流程就OK啦。(客户指示器就是自定义指标)

image-20200524184620455.png

一定要好好利用官方提供的文档。MT4的使用里面大部分都有啦。

开发文档使用

开发文档也是有的,不过是英文版。编程过程中可以将鼠标的光标放到有疑问的函数上

image-20200524185335941.png

然后按F1可以看对应的函数说明,会自动定位到光标所在的函数哦。

image-20200524185437826.png

也可以在MetaEditor的菜单栏:

帮助->MQL4帮助

也可以利用索引工具搜索自己想要搜索的函数。比如开发中遇到问题调试的时候可以用索引搜索错误码

image-20200524190303163.png

OK,说完。感谢观看

相关文章

网友评论

    本文标题:外汇自动交易中EA,指标,脚本的区别

    本文链接:https://www.haomeiwen.com/subject/lgndahtx.html