MQL4和MQL5编程文章

icon

在众多发表的文章中研究 MQL5语言编程交易策略 的多数由您—我们 MQL5.community的会员所作。文章以类别分组来帮助您迅速找到任何有关MQL5编程问题的答案:集成,测试,交易策略等等。

Follow our 新发表讨论它们在 MQL5.community论坛

添加一个新的文章
最近 | 最佳
使用面向对象的方法来编写EA的模式
使用面向对象的方法来编写EA的模式

使用面向对象的方法来编写EA的模式

本文介绍一种使用MQL5语言来编写多模式自动交易程序的方法。每一种模式都使用面向对象的方法来实现。不仅给出不同模式下类的层次结构,还给出用于测试的类的实例。多模式自动交易程序以MQL5语言实现,它应该考虑EA的每一种执行模式。创建用于确定EA模式的函数和枚举值。
预测金融时间序列
预测金融时间序列

预测金融时间序列

预测金融时间序列是任何投资活动的必备元素。投资本身的概念是投入现有的资金以在未来获利,而这个概念又基于预测未来的概念。因此,预测金融时间序列是整个投资行业(包括所有有组织的交易所和其他证券交易系统)的投资活动的基础。
使用MetaTrader 5作为MetaTrader 4的信号提供者
使用MetaTrader 5作为MetaTrader 4的信号提供者

使用MetaTrader 5作为MetaTrader 4的信号提供者

分析并通过技术实例说明怎样在MetaTrader 5平台上做交易分析而在MetaTrader 4上做交易。本文将展示如何在您的MetaTrader 5上创建简单的信号提供者,并且把它连接到多个客户端,甚至包括运行MetaTrader 4的客户端。而且您也可以发现怎样在您的真实MetaTrader 4账户中跟随自动交易锦标赛的选手。
以莫斯科交易所衍生产品市场为例的交易定价原则
以莫斯科交易所衍生产品市场为例的交易定价原则

以莫斯科交易所衍生产品市场为例的交易定价原则

本文介绍了莫斯科交易所衍生产品市场的交易定价和结算理论的特性。这是一篇综合性的文章,面向那些想在衍生品市场中获取他们第一次交易经验的初学者,以及那些正在考虑通过中央交换平台进行交易的经验丰富的外汇交易者。
轻松快捷开发 MetaTrader 程序的函数库 (第二十部分):创建和存储程序资源
轻松快捷开发 MetaTrader 程序的函数库 (第二十部分):创建和存储程序资源

轻松快捷开发 MetaTrader 程序的函数库 (第二十部分):创建和存储程序资源

本文讨论如何将数据存储在程序的源代码之中,并从中创建音频和图形文件。 在开发应用程序时,我们经常需要音频和图像。 MQL 语言拥有运用此类数据的若干种方法。
面向对象编程基础
面向对象编程基础

面向对象编程基础

您无需了解什么是多态性、什么是封装性,以及使用面向对象编程(OOP)相关的一切内容……您可能只需要使用这些功能就好了。本文中涵盖了 OOP 的基础知识,且带有亲身实践示例。
交易员之活学活用: "平静" 优化或绘制交易分布
交易员之活学活用: "平静" 优化或绘制交易分布

交易员之活学活用: "平静" 优化或绘制交易分布

分析交易历史, 并依据仓位的入场时间以 HTML 形式绘制交易结果的分布图表。图表显示三个部分 - 按小时, 按周内天数和按月份。
preview
如何掌握机器学习

如何掌握机器学习

查看这些有用的资料选集,它们可以辅助交易者提高他们的算法交易知识。 简约算法时代正在成为过去,如果不运用机器学习技术和神经网络,成功变得越来越困难。
如何将MetaTrader 5中的交易复制到MetaTrader 4
如何将MetaTrader 5中的交易复制到MetaTrader 4

如何将MetaTrader 5中的交易复制到MetaTrader 4

如今,在MetaTrader 5的实盘帐户上进行交易是否可行?如何进行此类交易?本文不仅从理论上解答这些问题,同时还提供可用的源代码,让你能够把MetaTrader 5终端上的交易复制到MetaTrader 4。本文对EA交易的开发者和练习交易者都非常有用。
在 MetaTrader 5 中交易策略优化的可视化
在 MetaTrader 5 中交易策略优化的可视化

在 MetaTrader 5 中交易策略优化的可视化

本文采用图形界面实现 MQL 应用程序来扩展可视化的优化过程。 图形界面采用 EasyAndFast 函数库的最新版本。 许多用户可能会问为什么他们在 MQL 应用程序中需要图形界面。 本文为交易者展示了众多实用情况之一。
蒙特卡罗方法在强化学习中的应用
蒙特卡罗方法在强化学习中的应用

蒙特卡罗方法在强化学习中的应用

在本文中,我们将应用强化学习来开发可以自主学习的EA交易。在前一篇文章中,我们考虑了随机决策森林算法,并编写了一个简单的基于强化学习的自学习EA,概述了这种方法的主要优点(交易算法的开发简单和“培训”速度快)。强化学习(RL)可以很容易地融入到任何交易EA中,并加速其优化。
交易机器人在实际交易中的自动优化
交易机器人在实际交易中的自动优化

交易机器人在实际交易中的自动优化

本文介绍并提供一个函数库,以便交易者能够通过从 EA 直接启动优化来优化交易者的 Expert Advisor 输入。
在 MetaTrader 5 里使用 HedgeTerminal (对冲终端) 面板进行双向交易和仓位对冲, 第二部分
在 MetaTrader 5 里使用 HedgeTerminal (对冲终端) 面板进行双向交易和仓位对冲, 第二部分

在 MetaTrader 5 里使用 HedgeTerminal (对冲终端) 面板进行双向交易和仓位对冲, 第二部分

本文描述了一种新的方法来进行仓位对冲, 并在 MetaTrader 4 和 MetaTrader 5 的用户之间就此事的争辩划清界线。这是: "在 MetaTrader 5 里使用 HedgeTerminal (对冲终端) 面板进行双向交易和仓位对冲" 第一部分的延续。在第二部分里, 我们讨论自定义 EA 与 HedgeTerminalAPI 的集成, 其作为特别的可视化程序库, 设计用于在一个舒适的软件环境里作为工具进行便利的双向交易仓位管理。
例解 MQL5 中的面向对象编程:处理警告和错误代码
例解 MQL5 中的面向对象编程:处理警告和错误代码

例解 MQL5 中的面向对象编程:处理警告和错误代码

本文以一个例子说明创建一个类用于处理 MQL 程序运行期间交易服务器返回的代码以及所有错误的类。阅读本文之后,您将学习到如何在 MQL5 中处理类和对象。同时,这是一个方便的错误处理工具;并且您可以依据您的具体需要进一步更改此工具。
走势延续模型 - 搜索图表和执行统计
走势延续模型 - 搜索图表和执行统计

走势延续模型 - 搜索图表和执行统计

本文提供了一种走势延续模型的程序化定义。 主要思路是定义两个波浪 — 主浪和修正浪。 对于极值点,我应用分形以及“潜在”分形 - 尚未形成分形的极值点。
改进面板:增加透明化、改变背景色以及继承于 CAppDialog/CWndClient
改进面板:增加透明化、改变背景色以及继承于 CAppDialog/CWndClient

改进面板:增加透明化、改变背景色以及继承于 CAppDialog/CWndClient

在这篇文章中,我们继续研究 CAppDialog 的使用。现在我们将会学习如何设置对话框的背景、边框和抬头的颜色。另外,这篇文章还提供了有关在图表中拖曳应用程序窗口时,如何增加透明化它的分步描述。我们还将探讨,怎样创建 CAppDialog 或者 CWndClient 的子类来分析如何操作控件的新特点。最后,我们将从新的角度回顾新项目。
捕捉趋势
捕捉趋势

捕捉趋势

本文描述了对获利交易的成交量增加的算法。本文对使用 MQL4 语言实现该算法进行了描述。
在 MetaTrader 5 中实施多货币模式
在 MetaTrader 5 中实施多货币模式

在 MetaTrader 5 中实施多货币模式

长期以来,人们对多货币分析和多货币交易存在极大的兴趣。随着 MetaTrader 5 和 MQL5 编程语言的公开发行,实施完备的多货币体系成为可能。在本文中,针对多个交易品种,我们提出一种方法来分析和处理所有到来的价格变动。让我们将 USDx 美元指数的多货币 RSI 指标作为示例。
测试可视化: 人工交易
测试可视化: 人工交易

测试可视化: 人工交易

在历史中测试人工交易策略. 看您的交易算法怎样从简单摆设变成编程之精华!
在交易中应用 OLAP(第 1 部分):在线分析多维数据
在交易中应用 OLAP(第 1 部分):在线分析多维数据

在交易中应用 OLAP(第 1 部分):在线分析多维数据

本文论述如何创建多维数据(OLAP - 在线分析处理)的在线分析框架,以及如何在 MQL 中实现此框架,还有利用交易帐户历史数据在 MetaTrader 环境中应用此类分析的示例。
测试当交易货币对篮子时出现的形态第二部分
测试当交易货币对篮子时出现的形态第二部分

测试当交易货币对篮子时出现的形态第二部分

我们继续测试形态并尝试在文章中描述的交易货币对篮子的方法。让我们探讨在实际应用中是否可能使用组合 WPR 图与移动平均交叉的形态,如果答案是可以,我们应当考虑适当的使用方法。
preview
学习如何基于斐波那契(Fibonacci)设计交易系统

学习如何基于斐波那契(Fibonacci)设计交易系统

在本文中,我们将继续如何基于最流行的技术指标创建交易系统的系列文章。 这次一个新的技术工具,即斐波那契(Fibonacci),我们将学习如何基于该技术指标设计交易系统。
使用 EA 交易可视向导创建 EA 交易
使用 EA 交易可视向导创建 EA 交易

使用 EA 交易可视向导创建 EA 交易

MetaTrader 5的EA交易可视向导提供一种高度直观的图形环境,带有一整套允许您在数分钟内完成EA交易设计的预定义交易代码块。EA交易可视向导的单击拖拽法允许您像使用铅笔和纸张一样,创建外汇交易策略与信号的可视化呈现。这些交易图表均通过Molanis的MQL5代码生成器自动进行分析,并将其转换为即用型EA交易。而互动式图形环境则会简化设计过程,且无需编写MQL5代码。
preview
如何在 MetaTrader 5 中利用 DirectX 创建 3D 图形

如何在 MetaTrader 5 中利用 DirectX 创建 3D 图形

3D 图形为大数据分析提供了完美的方案,它可以直观透视隐藏的形态。 这些任务能以 MQL5 直接解决,而 DireсtX 函数允许创建三维物体。 故其能够为 MetaTrader 5 创建任意复杂度的程序,甚至 3D 游戏。 学习 3D 图形,从绘制简单的三维形状开始。
图形界面 IX: 颜色选择器控件 (第一章)
图形界面 IX: 颜色选择器控件 (第一章)

图形界面 IX: 颜色选择器控件 (第一章)

从本文开始,我们来到了致力于在 MetaTrader 交易终端中创建图形界面系列文章的第九部份。它有两章,包含了新的控件和接口,例如颜色选择器,颜色按钮,进度条和线性图表等。
MQL5云网络: 你还在计算吗?
MQL5云网络: 你还在计算吗?

MQL5云网络: 你还在计算吗?

自MQL5云网络发布以来很快就要有一年半的时间了,这个领先事件又迎来了一个算法交易的新时代 - 现在,通过轻点鼠标交易人员就可以拥有成百上千的计算核心来处理优化他们的交易策略。
preview
您能用移动平均线做什么呢

您能用移动平均线做什么呢

本文研究了若干种移动平均指标的应用方法。 每种方法涉及到的曲线分析,都配有思想实现的可视化指标。 在大多数情况下,这里展示的所有思路均属于它们尊敬的作者。 我唯一的任务就是把它们归纳起来,令您看到其主要作用,并希望做出更合理的交易决策。 MQL5 熟练程度 — 基本。
市场数学:盈利、亏损、和成本
市场数学:盈利、亏损、和成本

市场数学:盈利、亏损、和成本

在本文中,我将向您展示如何计算任何交易的总盈利或亏损,包括佣金和掉期利息。 我会提供最精准的数学模型,并依据它来编写代码,之后将其与标准进行比较。 此外,我还将尝试进入主要 MQL5 函数的内部来计算利润,并从规则中获取所有必要值的根底。
图形界面 X: 时间控件, 复选框列表控件和表格排序 (集成编译 6)
图形界面 X: 时间控件, 复选框列表控件和表格排序 (集成编译 6)

图形界面 X: 时间控件, 复选框列表控件和表格排序 (集成编译 6)

创建图形界面的函数库开发续篇。这次会涵盖时间和复选框列表控件。此外, CTable 类现已提供按照升序或降序对数据排序的能力。
分离策略在趋势和盘整条件下的优化
分离策略在趋势和盘整条件下的优化

分离策略在趋势和盘整条件下的优化

本文探讨了在分离在不同市场条件下的优化方法,分离优化意味着分别为上涨趋势和下跌趋势分别定义交易系统的最佳参数. 为了减少错误信号的影响,提高盈利能力,系统变得灵活,这意味着它们有一些特定的设置或输入数据,这是合理的,因为市场行为不断变化。
Erik Nayman 的绳索指标
Erik Nayman 的绳索指标

Erik Nayman 的绳索指标

本文揭示 Erik L. Nayman 如何基于 "交易员小百科" 来创建 "绳索" 指标。此指标通过计算覆盖指定周期时间的牛熊数值来显示趋势方向。本文还包含指标创建和计算的原理以及例程代码。其它涉及的主题包括建立基于指标的智能交易程序, 和外部参数的优化。
MQL5 傻瓜式向导
MQL5 傻瓜式向导

MQL5 傻瓜式向导

在 2011 年年初,我们发布了 MQL5 向导的第一个版本。这一新的应用程序为自动生成交易机器人提供了简单方便的工具。任何 MetaTrader 5 用户都能创建自定义的EA 交易,他们甚至无需知道如何以 MQL5 编程。
preview
一步步学习如何利用公允价值缺口(FVG)或市场不平衡性来交易的策略:一种“聪明资金”的交易方法

一步步学习如何利用公允价值缺口(FVG)或市场不平衡性来交易的策略:一种“聪明资金”的交易方法

基于公允价值缺口(FVG)交易策略的MQL5自动化交易算法创建与分步实施指南。这一教程旨在为无论是初学者还是经验丰富的交易者提供一个实用的EA创建指南。
MQL5秘笈之:采用关联数组或字典实现快速数据访问
MQL5秘笈之:采用关联数组或字典实现快速数据访问

MQL5秘笈之:采用关联数组或字典实现快速数据访问

本文介绍一种能够通过key来访问元素的特殊算法。任何基本数据类型都可以被当作key。例如它可以是一个字符串或一个整型值。这样的数据容器通常被称为字典或这关联数组。这为解决问题提供了便捷。
交易者的个人心理学
交易者的个人心理学

交易者的个人心理学

一幅金融市场上交易者的行为画像. 作者自己的菜单是来自于A.Elder的书 "怎样在股票交易中投机取胜" ("How to speculate on stock exchange and win").
货币对形态测试: 实际应用和真实交易视角。 第四部分
货币对形态测试: 实际应用和真实交易视角。 第四部分

货币对形态测试: 实际应用和真实交易视角。 第四部分

本文是专门讨论货币对篮子交易系列的总结。 在此,我们测试剩余的形态,并讨论在实际交易中如何应用整体方法。 入场和离场,搜索形态并分析它们,组合指标的复杂应用,这些均有研究。
MQL 作为 MQL 程序图形界面的标记工具(第三部)。 窗体设计师
MQL 作为 MQL 程序图形界面的标记工具(第三部)。 窗体设计师

MQL 作为 MQL 程序图形界面的标记工具(第三部)。 窗体设计师

在篇论文当中,我们将用 MQL 的结构完成构建 MQL 程序窗口界面的概念讲述。 专业的图形编辑器能够交互式地设置由 GUI 元素的基本类组成的布局,然后将其以 MQL 描述导出,从而可在您的 MQL 项目中使用。 此片论文介绍了编辑器的内部设计和用户指南。 附带源代码。
突破策略测试程序在测试对冲 EA 时的限制
突破策略测试程序在测试对冲 EA 时的限制

突破策略测试程序在测试对冲 EA 时的限制

一种使用策略测试程序测试对冲 Expert Advisor 的思路。
开发和分析交易系统的最佳方法
开发和分析交易系统的最佳方法

开发和分析交易系统的最佳方法

在这篇文章中,我将展示在选择一个系统或信号来投资你的资金时所使用的标准,以及描述开发交易系统的最佳方法,并强调这个问题在外汇交易中的重要性。
MQL5 Wizard:新版本
MQL5 Wizard:新版本

MQL5 Wizard:新版本

本文介绍 MQL5 Wizard 升级版的新功能。修改后的信号架构允许基于各种市场情形的组合创建交易机器人。本文所载的例子说明了交互式创建一个 EA 交易程序的过程。