MQL4和MQL5编程文章

icon

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

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

添加一个新的文章

从头开始开发智能交易系统(第 9 部分):概念上的飞跃 (II)

在本文中,我们将把 Chart Trade 这个应用程序放置在浮动窗口当中。 在前一篇中,我们创建了一个基本系统,该系统支持在浮动窗口中使用模板。

DoEasy. 控件 (第 3 部分): 创建绑定控件

在本文中,我将创建绑定到基准元素的从属控件。 开发任务将使用基准控件功能执行。 此外,我还会稍微修改一下图形元素阴影对象,因为把它应用于任何有阴影的对象时会遇到一些逻辑错误。

学习如何设计基于 CCI 的交易系统

来自我们的《学习如何设计交易系统》系列的新篇章中,我将介绍商品通道指数(CCI),解释其细节,并与您分享如何基于此指标创建交易系统。

从头开始开发智能交易系统(第 8 部分):概念上的飞跃

实现新功能的最简单途径是什么? 在本文中,我们将后撤一步,然后再前进两步。

DoEasy. 控件 (第 2 部分): 操控 CPanel 类

在本文中,我将剔除一些与操控图形元素相关的错误,并继续开发 CPanel 控件。 尤其是,我将实现为所有面板文本对象设置默认字体参数的方法。

DoEasy. 控件 (第 1 部分): 第一步

本文开始延展话题,介绍如何利用 MQL5 仿照 Windows 窗体样式创建控件。 我感兴趣的第一个对象是创建面板(panel)类。 若是没有控件,那么管理就会变得越来越困难。 因此,我将仿照 Windows 窗体样式创建所有可能的控件。

从头开始开发智能交易系统(第 7 部分):添加价格成交量(Volume)指标(I)

这是目前最强力的指标之一。 任何满怀信心尝试交易的人都必须在他们的图表上拥有这个指标。 最常用的指标都是那些喜欢在交易时“读磁带”的人所采用。 此外,而该指标则是那些交易时仅依据价格动作的人会采用。

DoEasy 函数库中的图形(第一百部分):改进扩展标准图形对象的处理

在本文中,我将剔除在画布上同时处理扩展(和标准)图形对象和窗体对象方面的明显缺陷,并修复在前一篇文章中执行测试期间检测到的错误。 本文总结了函数库说明的这一部分。

一张图表上的多个指标(第 06 部分):将 MetaTrader 5 转变为 RAD 系统(II)

在我的前一篇文章中,我向您展示了如何利用 MetaTrader 5 对象创建图表交易,从而将平台转变为 RAD 系统。 该系统运行良好,可以肯定的是,许多读者也许已经考虑过创建一个函数库,令其能够在拟议的系统中扩展功能。 有基于此,就有可能开发一款更直观的智能交易系统,其界面更友好、更易于使用。

数据科学与机器学习(第 01 部分):线性回归

我们作为交易员,现在是时候基于数字所言来培训我们的系统,并自行制定决策了。 尽管我们的眼睛看不到,但我们的勇气让我们相信,这是世界前进的方向,所以,让我们顶着波浪的方向移动。

学习如何设计基于 RSI 的交易系统

在本文中,我将与您分享一个在交易领域最流行和最常用的指标,即 RSI。 您将学到如何基于该指标设计交易系统。

DoEasy 函数库中的图形(第九十九部分):依据单个控制点移动扩展图形对象

在前一篇文章中,我实现了依据控件窗体移动扩展图形对象轴点的功能。 现在,我将实现依据单个图形对象控制点(窗体)移动复合图形对象的功能。

学习如何基于动量设计交易系统

在我上一篇文章中,我曾提到了判断价格走势的重要性。 在本文中,我将分享最重要的概念和指标之一,即动量指标。 我还将分享如何基于这个动量指标设计一款交易系统。

了解如何设计基于轨道线(Envelopes)的交易系统

在本文中,我将与您分享一种如何进行波带交易的方法。 这一次,我们将研究轨道线(Envelopes),并将看到创建一款基于轨道线的策略是多么容易。

一张图表上的多个指标(第 05 部分):将 MetaTrader 5 转变为 RAD 系统(I)

有很多人不知道如何编程,但他们很有创造力,亦有杰出的想法。 然而,由于缺乏编程知识,他们无法实现这些想法。 我们一起看看如何利用 MetaTrader 5 平台本身创建图表交易,就如同它是一个 IDE。

一张图表上多个指标(第 04 部分):晋升为一款智能交易系统

在我之前的文章里,我已经解释了如何创建拥有多个子窗口的指标,在使用自定义指标时如此这般会变得很有趣。 这次,我们将看到如何为智能交易系统添加多个窗口。

DoEasy 函数库中的图形(第九十八部分):移动扩展的标准图形对象的轴点

在本文中,我将继续扩展的标准图形对象的开发,创建移动复合图形对象轴点的功能,通过控制点来管理图形对象轴点坐标。

来自专业程序员的提示(第三部分):日志。 连接到 Seq 日志收集和分析系统

Logger 类的实现能够统一和结构化打印到智能系统栏的日志消息。 连接到 Seq 日志收集和分析系统。 在线监视日志消息。

在一张图表上的多个指标(第 03 部分):为用户开发定义

今天,我们将首次更新指标系统的功能。 在“一张图表上的多个指标”的前一篇文章中,我们研究了允许在图表子窗口中加载多个指标的基本代码。 但其所代表的只是一个更大系统的起点。

在一张图表上的多个指标(第 02 部分):首次实验

在前一篇文章“在一张图表上的多个指标”中,我介绍了如何在一张图表上加载多个指标的概念和基本知识。 在本文中,我将提供源代码,并对其进行详解。

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

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

让图表更有趣:添加背景

许多工作站包含一些代表性的图片用以显示用户的一些信息。 这些图片令工作环境更加优美和令人兴奋。 我们来看看如何通过添加背景令图表更有趣。

DirectX 教程(第一部分):绘制第一个三角形

这是一篇关于 DirectX 的介绍性文章,介绍了使用 API 进行操作的细节。 它应有助于理解其组件的初始化顺序。 本文包含一个如何编写 MQL5 脚本的示例,该脚本使用 DirectX 渲染一个三角形。

DoEasy 函数库中的图形(第九十七部分):独立处理窗体对象移动

在本文中,我将研究实现鼠标独立拖动任何窗体对象。 此外,我还将在该函数库里补充错误消息和之前在终端和 MQL5 中实现的新成交属性。

一项智能交易系统失败原因分析

本文针对货币数据进行了一次分析,从而能更好地理解为什么智能交易系统在某些时段表现良好,而在其它时段表现不佳。

学习如何设计一款布林带(Bollinger Bands)交易系统

在本文中,我们将学习布林带,这是交易界最流行的指标之一。 我们将研究技术分析,并看看如何设计一款基于布林带(Bollinger Bands)指标的算法交易系统。

在 MQL 应用程序中运用 CCanvas 类

本文研究在 MQL 应用程序中运用 CCanvas 类。 原理会伴随着详细的解释和示例,从而彻底理解 CCanvas 的基础知识。

MVC 设计范式及其应用(第 2 部分):三个组件之间相互作用示意图

本文是前一篇文章中所讨论主题的延续和完善:MQL 程序中的 MVC 范式。 在本文中,我们将研究范式的三个组件之间可能的相互作用的示意图。

在一张图表上的多个指标(第 01 部分):理解概念

今天,我们将学习如何在一张图表上同时添加多个指标,但又不占用单独的区域。 众多交易员感觉,如果他们一次性能监控多个指标(例如,RSI、STOCASTIC、MACD、ADX 和其它一些指标),或者在某些情况下甚至能监控构成指数的不同资产,则会得到更强信心。

DoEasy 函数库中的图形(第九十六部分):窗体对象中的图形和鼠标事件的处理

在本文中,我将启动创建处理窗体对象中的鼠标事件的功能,以及向品种对象添加新属性并跟踪。 此外,我将改进品种对象类,因为图表品种现在有新的属性需要考虑和跟踪。

DoEasy 函数库中的图形(第九十五部分):复合图形对象控件

在本文中,我将研究管理复合图形对象的工具包 — 管理扩展标准图形对象的控件。 今天,我从复合图形对象重新定位的内容稍微离题 ,并实现图表上复合图形对象的变更事件处理。 此外,我将重点讲解管理复合图形对象的控件。

学习如何设计不同的移动平均线系统

有众多策略可依据任何规则过滤生成的信号,甚至可采用本文自身所讨论的移动平均值。 因此,本文的目的是与大家分享一些移动平均线策略,以及如何设计一款算法交易系统。

DoEasy 函数库中的图形(第九十四部分):移动和删除复合图形对象

在本文中,我将启动开发各种复合图形对象事件。 我们还将部分研究移动和删除复合图形对象。 实际上,在此,我还会把前一篇文章中实现的东西进行微调。

MetaTrader 5 的 WebSocket — 使用 Windows API

在本文中,我们将使用 WinHttp.dll 针对 MetaTrader 5 平台创建 WebSocket 客户端程序。 客户端最终将作为一个类实现,并借助 Binary.com 的 WebSocket API 进行测试。

DoEasy 函数库中的图形(第九十三部分):准备创建复合图形对象的功能

在本文中,我将着手开发用于创建复合图形对象的功能。 该函数库将支持创建复合图形对象,允许这些对象含有任意层次的连接。 我将为这些对象的后续实现准备所有必要的类。

学习为什么、以及如何设计算法交易系统

本文在介绍了 MQL5 的一些基础知识之后,通过设计一个简单的算法交易系统,向初学者展示了如何运用 MQL 的基础知识设计他们的算法交易系统(智能交易系统)

交易中的数学:夏普(Sharpe)和索蒂诺(Sortino)比率

投资回报率是投资者和萌新交易员用来分析交易绩效的最明显指标。 专业交易者会采用更可靠的工具来分析策略,比如夏普(Sharpe)比率和索蒂诺(Sortino)比率等。

从市场里选择智能交易系统的正确途径

在本文中,我们将研究购买智能交易系统时应该注意的一些要点。 我们还将寻求提升盈利的方法,从而明智地花钱,并从付出中获取盈利。 此外,读完本文之后,您会发现,即便使用简单免费的产品也有可能赚到钱。

DoEasy 函数库中的图形(第九十二部分):标准图形对象记忆类。 对象属性变更历史记录

在本文中,我将创建标准图形对象记忆类,能够在对象修改其属性时保存其过往状态。 反之,这样就能够溯源以前的图形对象状态。

优化结果的可视化评估

在本文中,我们将研究如何建立所有优化通测的图形,以及选择最优结果的自定义准则。 我们还将看到如何利用网站上发表的文章和论坛评论,在几乎不了解 MQL5 的情况下创建所需的解决方案。