MT4目录结构

2024-05-12 04:28
文章标签 结构 目录 mt4

本文主要是介绍MT4目录结构,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Experts

该文件夹包含用户编写的EA程序代码文件。可以自动将用户编写的交易策略应用到行情中,其中后缀名为mq4的是源代码,后缀名为ex4的是可执行文件。

EA:Expert Advisors,译为专家顾问,通俗的来说,就是用机器代替人监听行情,并针对行情应用交易策略,自动执行做多、做空的操作。由程序员借助一门计算机编程语言(mq4),编写交易指令,预设好某个情境下的操作,实现机器自动进行交易。

优点:

  1. 自动化交易:无需人工干预,消除了情绪因素对交易的影响,并且可以在没有人类干预的情况下全天候的交易;
  2. 严格执行策略:按照预设的交易策略执行交易,不会受到人类情绪波动和主观判断的影响,保证了交易策略的纪律性和一致性;
  3. 快速响应市场:EA可以实时检测市场变化并立即做出反应,快速执行交易操作,更容易捕捉到市场的瞬时机会;
  4. 减少认为错误:避免人为错误,如误操作、拖延等;
  5. 后测和优化:可以通过回测功能对EA进行历史数据的模拟测试,评估交易策略的变现并进行优化,提高盈利能力。

缺点:

  1. 机械化限制:EA只能按照预设的策略进行交易,缺乏人类交易者的灵活性和判断力,有可能无法适应市场的变化和突发情况;
  2. 依赖性能稳定性:EA的运行依赖于交易平台和计算机系统的稳定性和可靠性,如果系统出现故障或网络断线,可能导致交易失败或者损失;
  3. 过度优化风险:对EA进行过度优化可能导致过度拟合历史数据,使其表现在实际交易中的表现不如预期,甚至导致损失;
  4. 无法适应新情况:由于EA通常基于历史数据和固定的交易策略进行交易,对于 新的市场情况或者突发事件可能无法及时做出合适的调整;
  5. 需要技术知识:开发和优化EA需要一定的编程和金融市场知识,对于普通投资者来说,可能需要花费大量时间和精力才能掌握;
  1. onTrade: 当交易操作(如开仓、平仓、修改订单等)发生时,该函数会被调用。可以在该函数中编写相应的代码来处理交易操作的结果和执行相关的逻辑。

  2. OnTradeTransaction: 当交易事务(如交易记录、订单状态变化等)发生时,该函数会被调用。可以在该函数中编写代码来监控交易事务并执行相应的操作。

  3. OnTimer: 当定时器触发时,该函数会被调用。可以在该函数中编写代码来执行周期性任务,例如定时更新指标、检查市场条件等。

  4. OnChartEvent: 当在图表上发生事件(如鼠标单击、拖动图表等)时,该函数会被调用。可以在该函数中编写代码来响应图表事件并执行相应的操作。

  5. OnBookEvent: 当市场深度数据发生变化时,该函数会被调用。可以在该函数中编写代码来处理市场深度数据变化的情况。

  6. OnTester: 当在回测期间执行交易测试时,该函数会被调用。可以在该函数中编写代码来处理回测过程中的事件和情况。

  7. OnTesterInit: 当开始进行交易策略的回测时,该函数会被调用。可以在该函数中编写代码来初始化回测环境和设置回测参数。

  8. OnTesterPass: 当回测过程中每一次交易的测试通过时,该函数会被调用。可以在该函数中编写代码来处理每一次交易测试通过的情况。

  9. OnTesterDeinit: 当交易策略的回测结束时,该函数会被调用。可以在该函数中编写代码来清理回测环境和进行最终的处理。

Files

此文件夹存放各种自定义文件,例如EA、指标、脚本等程序的配置文件。

Images

此文件夹存放定制MT4插件所需的图表、指标和其他图片,以及截图和一些程序缩略图。

Include

此文件夹用于存储头文件(.mqh)和mql4程序中需要的其他代码包含文件。如果是代码文件,通常包含定义变量、函数和常数的代码块,以及需要使用的库函数或自定义函数。

Indicators

此文件夹用于存储自定义指标,这些指标用于分析市场数据并提供交易信号。指标是一种用于分析市场价格行为和预测未来价格走势的工具,指标通常基于数学计算和统计模型,通过对历史价格数据进行分析,提供交易决策的支持。

  1. OnInit: 当指标被加载到图表上时,该函数被调用。通常在这个函数中初始化指标的参数、图表对象和其他必要的设置。

  2. OnCalculate: 当新的价格数据到达时,或者在指定的时间间隔内,该函数被调用。在这个函数中,可以编写指标的计算逻辑,根据最新的价格数据计算出指标的值。

  3. OnTimer: 当定时器触发时,该函数被调用。可以在这个函数中编写周期性任务的代码,例如定时更新指标值或执行其他与时间相关的操作。

  4. OnChartEvent: 当在指标窗口上发生事件(例如鼠标单击、拖动指标窗口等)时,该函数被调用。可以在这个函数中编写代码来响应指标窗口上的事件并执行相应的操作。

Libraries

此文件夹通常用来存储动态库,这些库可以被指标或EA共享。由于MT4中大部分函数是写死的,因此某些情况下要实现一些功能比较麻烦,因此在使用其他语言的动态库可能更加方便。(插一嘴,MT不支持指针,C++中的字符串和mq4的字符串并不一样,还有MT4是32位的。给出三条建议,第一条是创建动态库时不要弄错了,需要32位的,如果时MT5则可以选择64位的,第二条是在试图传递字符串时用字符数组来实现,第三条建议是目前官网提供的无论是MT4的setup还是MT5的setup最后安装的都是MT5,需要去一些交易商下载32位的MT4)。

Logs

此文件夹包含MT4客户端和服务器的日志记录文件,记录了MT4客户端和服务器的活动信息,如连接状态、错误消息、运行日志等。

Presets

此文件夹用于存储EA的一些预设参数,在EA交易中,可以根据不同的EA,创建自定义设置参数并保存预设值,以便重复利用,通常以.set 结尾。

Projects

此文件夹用来存储已经创建的交易系统和EA项目文件,通常包含有关交易策略、交易规则、指标设置和其他与交易相关的信息。

Scripts

此文件夹存放MT4脚本,可以执行特定的任务,例如开仓、平仓、修改订单等。可以将脚本拖放到图表上来快速执行,脚本只加载一次并只运行一次,然后就会退出。

这篇关于MT4目录结构的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/981596

相关文章

usaco 1.3 Mixing Milk (结构体排序 qsort) and hdu 2020(sort)

到了这题学会了结构体排序 于是回去修改了 1.2 milking cows 的算法~ 结构体排序核心: 1.结构体定义 struct Milk{int price;int milks;}milk[5000]; 2.自定义的比较函数,若返回值为正,qsort 函数判定a>b ;为负,a<b;为0,a==b; int milkcmp(const void *va,c

自定义类型:结构体(续)

目录 一. 结构体的内存对齐 1.1 为什么存在内存对齐? 1.2 修改默认对齐数 二. 结构体传参 三. 结构体实现位段 一. 结构体的内存对齐 在前面的文章里我们已经讲过一部分的内存对齐的知识,并举出了两个例子,我们再举出两个例子继续说明: struct S3{double a;int b;char c;};int mian(){printf("%zd\n",s

android应用中res目录说明

Android应用的res目录是一个特殊的项目,该项目里存放了Android应用所用的全部资源,包括图片、字符串、颜色、尺寸、样式等,类似于web开发中的public目录,js、css、image、style。。。。 Android按照约定,将不同的资源放在不同的文件夹中,这样可以方便的让AAPT(即Android Asset Packaging Tool , 在SDK的build-tools目

OpenCV结构分析与形状描述符(11)椭圆拟合函数fitEllipse()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C++11 算法描述 围绕一组2D点拟合一个椭圆。 该函数计算出一个椭圆,该椭圆在最小二乘意义上最好地拟合一组2D点。它返回一个内切椭圆的旋转矩形。使用了由[90]描述的第一个算法。开发者应该注意,由于数据点靠近包含的 Mat 元素的边界,返回的椭圆/旋转矩形数据

CentOS下mysql数据库data目录迁移

https://my.oschina.net/u/873762/blog/180388        公司新上线一个资讯网站,独立主机,raid5,lamp架构。由于资讯网是面向小行业,初步估计一两年内访问量压力不大,故,在做服务器系统搭建的时候,只是简单分出一个独立的data区作为数据库和网站程序的专区,其他按照linux的默认分区。apache,mysql,php均使用yum安装(也尝试

Detectorn2预训练模型复现:数据准备、训练命令、日志分析与输出目录

Detectorn2预训练模型复现:数据准备、训练命令、日志分析与输出目录 在深度学习项目中,目标检测是一项重要的任务。本文将详细介绍如何使用Detectron2进行目标检测模型的复现训练,涵盖训练数据准备、训练命令、训练日志分析、训练指标以及训练输出目录的各个文件及其作用。特别地,我们将演示在训练过程中出现中断后,如何使用 resume 功能继续训练,并将我们复现的模型与Model Zoo中的

C语言程序设计(选择结构程序设计)

一、关系运算符和关系表达式 1.1关系运算符及其优先次序 ①<(小于) ②<=(小于或等于) ③>(大于) ④>=(大于或等于 ) ⑤==(等于) ⑥!=(不等于) 说明: 前4个优先级相同,后2个优先级相同,关系运算符的优先级低于算术运算符,关系运算符的优先级高于赋值运算符 1.2关系表达式 用关系运算符将两个表达式(可以是算术表达式或关系表达式,逻辑表达式,赋值表达式,字符

Science|癌症中三级淋巴结构的免疫调节作用与治疗潜力|顶刊精析·24-09-08

小罗碎碎念 Science文献精析 今天精析的这一篇综述,于2022-01-07发表于Science,主要讨论了癌症中的三级淋巴结构(Tertiary Lymphoid Structures, TLS)及其在肿瘤免疫反应中的作用。 作者类型作者姓名单位名称(中文)通讯作者介绍第一作者Ton N. Schumacher荷兰癌症研究所通讯作者之一通讯作者Daniela S. Thomm

oracle11.2g递归查询(树形结构查询)

转自: 一 二 简单语法介绍 一、树型表结构:节点ID 上级ID 节点名称二、公式: select 节点ID,节点名称,levelfrom 表connect by prior 节点ID=上级节点IDstart with 上级节点ID=节点值 oracle官网解说 开发人员:SQL 递归: 在 Oracle Database 11g 第 2 版中查询层次结构数据的快速

Tomcat下载压缩包解压后应有如下文件结构

1、bin:存放启动和关闭Tomcat的命令的路径。 2、conf:存放Tomcat的配置,所有的Tomcat的配置都在该路径下设置。 3、lib:存放Tomcat服务器的核心类库(JAR文件),如果需要扩展Tomcat功能,也可将第三方类库复制到该路径下。 4、logs:这是一个空路径,该路径用于保存Tomcat每次运行后产生的日志。 5、temp:保存Web应用运行过程中生成的临时文件