如何编写简单的ea 交易和自定义指标

? 2024-05-20 02:03:22
最佳回答
要编写程序(“ea 交易”、“指标”或“脚本”),您可以启动 metatrader 5 客户端,从 tools(工具)菜单选择metaquotes language editor(metaquotes 语言编辑器),或按 f4 键。在 metaeditor 5 窗口中,从 file(文件)菜单选择 new(新建),或按 ctrl+n。在 mql5 wizard(mql5 向导)窗口中选择您想要创建的程序类型:接下来您可以指定程序名称、作者信息,以及在启动程序后向用户要求的参数。随后,系统将创建程序模板(“ea 交易”、“指标”或“脚本”),您可以对其进行编辑或填入代码:程序就绪后,必须对其进行编译。要编译程序,从 file(文件)菜单选择 compile(编译),或按 f7 键:如果程序代码没有错误,系统将创建扩展名为 .ex5 的文件。之后,您可以将此新的“ea 交易”、“指标”或“脚本”附加至 metatrader 5 客户端的图表进行执行。mql5 程序是一个运算符序列。每个运算符以分号 ";" 结束。为您方便起见,您可以为代码添加注释,注释位于符号 "/*" 和 "*/" 之中,或在代码行末尾的 "//" 后。mql5 是“面向事件”的编程语言。这表示当特定事件(程序启动或终止、新的报价到来等)发生时,客户端启动用户编写的相应函数(子程序),以执行指定的操作。客户端具有以下预定义事件:start 事件在“脚本”运行时发生(仅用于“脚本”)。它将会引起 onstart 函数的执行。mql4 对应物 -“脚本”中的 start 函数。init 事件在“ea 交易”或“指标”启动时发生。它将会引起 oninit 函数的执行。mql4 等价物 - init 函数。deinit 事件在“ea 交易”或“指标”终止时发生(例如,从图表分离后、关闭客户端等)。它将会引起ondeinit 函数的执行。mql4 等价物 - deinit 函数。newtick 事件在当前金融工具有新的报价到来时发生(仅用于“ea 交易”)。它将会引起 ontick 函数的执行。mql4 对应物 -“ea 交易”中的 start 函数。calculate 事件在指标启动(在 oninit 函数执行后)以及当前金融工具有新报价到来时发生(仅用于“指标”)。它将会引起 oncalculate 函数的执行。mql4 对应物 -“指标”中的 start 函数。trade 事件在订单执行、修改或删除,以及在开仓、持仓修改或平仓时发生(仅用于“ea 交易”)。它将会引起 ontrade 函数的执行。mql4 中没有该事件和函数的对应物。bookevent 事件在“市场深度”改变时发生(仅用于“ea 交易”)。它将会引起 onbookevent 函数的执行。mql4 中没有该事件和函数以及“市场深度”的对应物。chartevent 事件在用户使用图表时发生:在图表窗口处于焦点状态时点击鼠标和按下按键。该事件也会在创建、移动或删除图形对象等时发生(用于“ea 交易”和“指标”)。它将会引起 onchartevent 函数的执行。mql4 中没有该事件和函数的对应物。timer 事件在计时器触发时定期发生,如果计时器已使用 eventsettimer 函数激活的话。它将会引起ontimer 函数的执行。mql4 中没有该事件和函数以及计时器的对应物。使用变量前,必须指定每个变量的数据类型。相比 mql4,mql 5 支持更多的数据类型:bool 用于存储逻辑值(true 或 false)。该数据类型占用 1 字节内存。char 用于存储从 -128 到 127 的整数值。该数据类型占用 1 字节内存。uchar 用于存储从 0 到 255 的无符号整数值。该数据类型占用 1 字节内存。short 用于存储从 -32,768 到 32,767 的整数值。该数据类型占用 2 字节内存。ushort 用于存储从 0 到 65,535 的无符号整数值。该数据类型占用 2 字节内存。int 用于存储从 -2,147,483,648 到 2,147,483,647 的整数值。该数据类型占用 4 字节内存。uint 用于存储从 0 到 4,294,967,295 的无符号整数值。该数据类型占用 4 字节内存。long 用于存储从 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 的整数值。该数据类型占用 8 字节内存。ulong 用于存储从 0 到 18,446,744,073,709,551,615 的无符号整数值。该数据类型占用 8 字节内存。float 用于存储浮点值。该数据类型占用 4 字节内存。double 用于存储浮点值,通常为价格数据。该数据类型占用 8 字节内存。datetime 用于存储日期和时间值,它是从 01.01.1970 00:00:00 开始流逝的秒数。该数据类型占用 8 字节内存。color 用于存储颜色信息,它包含三种颜色分量的特性 - 红色、绿色和蓝色。该数据类型占用 4 字节内存。enum 代表枚举。它允许指定某种限制类型的数据集。该数据类型占用 4 字节内存。string 用于存储文本字符串。它的内部表示为 8 字节结构,包括含字符串的缓冲区大小以及指向该缓冲区的指针。选择合适的数据类型对于获得最佳性能及合理的内存使用十分必要。在 mql5 中有个称之为结构的新概念。结构将逻辑相关的数据结合在一起。 20210311
汇率兑换计算器

类似问答
  • 如何自行编写股票指标公式
    • 2024-05-20 16:52:25
    • 提问者: 未知
    1首先点击同花顺菜单栏里工具——公式管理,或者直接使用键盘按ctrl+f,来打开公式管理窗口。2接下来点击公式管理窗口中的新建按钮,弹出的新建窗口里可以选择“技术指标”、“自定公式”、“条件选股”等多种新建模式。3这里可以默认,也就是默认技术指标来新建公式,此时弹出一个公式编写窗口,可以直接在该窗口的空白处输入公式。4公式输入完成之后,可以点击测试公式,在“提示”栏中出“编译测试成功”就可以了。5...
  • 如何编写均线指标
    • 2024-05-20 03:13:10
    • 提问者: 未知
    均线指标在公式系统里面有现成的,看你要编成什么样的了,可以把原来的公式原文复制后新建一个公式,在里面改参数就行。如果是只需要换均线的天数,直接在主图上的均线上点鼠标右键-调整指标参数-修改成你要的均线日期就可以了。
  • 手机mt4如何导入自定义指标
    • 2024-05-20 13:04:01
    • 提问者: 未知
    手机mt4是不可以导入自定义指标的。目前还不支持
  • mt4 ea如何引用zigzag指标
    • 2024-05-20 02:26:35
    • 提问者: 未知
    mt4 ea如何引用zigzag指标 俺想ea用icustom()函数引用zigzag指标近3拐点值虾帮俺看看面行行啊icustom(**,0,"zigzag",12,5,3,0,0)其12,5,3zigzag缺省参数倒数第二参数0俺...
  • 大智慧指标如何编写
    • 2024-05-20 12:34:20
    • 提问者: 未知
    ma11:=ma(c,11);日期:=date;收盘价最高点:=hhv(c,20)=c;高点日期:ref(日期,barslast(收盘价最高点 ));高点ma11:ref(ma11,barslast(收盘价最高点 ));
  • 如何在爱交易里编写自定义指标
    • 2024-05-20 08:28:04
    • 提问者: 未知
    1打开爱交易软件爱交易支持的语言是t语言,可以理解为my 语言的升级换代版。精髓是:声明式,小语法大函数。调出脚本编辑器,新建一个技术指标公式,如下图。2编写公式。这里以常用的布林线指标boll为例。【定义输入参数】length = input(title="长度", type="number", value=20);source = input(title...
  • 大智慧自编指标出现没有定义的指标符,求修改!
    • 2024-05-20 01:09:24
    • 提问者: 未知
    xm。acd 是这一句吧,你试着取了句号看看!
  • 请求高手编写一个同花顺简单的指标箭头
    • 2024-05-20 02:32:16
    • 提问者: 未知
    看指标里德图标通达信里下箭头是 2 上箭头是 1
  • 如何**mt4交易软件的ea自动化交易程序的加密
    • 2024-05-20 22:57:44
    • 提问者: 未知
    他应该是数据库加密吧,建议你去淘宝或者其它专业编程网站,找专业人**或者重写这款ea,这东西,对于专业人员来说不难。
  • 如何恢复通达信的自定义的指标模板?
    • 2024-05-20 11:10:18
    • 提问者: 未知
    你所指的指标模板应是公式管理器。通过它里面的指标公式编辑器可编写指标公式。在菜单或工具栏找到图标“f(x)”,点击即可。
汇率兑换计算器

热门推荐
热门问答
最新问答
推荐问答
新手帮助
常见问题
房贷计算器-九子财经 | 备案号: 桂ICP备19010581号-1 商务联系 企鹅:2790-680461

特别声明:本网为公益网站,人人都可发布,所有内容为会员自行上传发布",本站不承担任何法律责任,如内容有该作者著作权或违规内容,请联系我们清空删除。