图形界面 I:库结构(第一章)
本文是另外一系列图形界面开发相关文章的开端。当前,还没有能够在MQL应用中快速而便捷的创建高质量图形界面的独立代码库。我所说图形界面是指我们熟悉的操作系统中的图形界面。
图形界面 I: 用于表单按钮的函数与删除界面元素 (第四章)
在本文中, 我们将继续开发CWindow类, 增加它的类方法, 可以通过点击它的控件来对它进行管理. 我们将可以通过表单按钮来关闭程序, 也会实现表单的最小化和最大化功能.
图形界面 I: 图形界面的动画 (第三章)
在前面的文章中, 我们开始开发了一个容纳控件的表单类. 在本文中, 我们将继续丰富此表单类的内容, 增加在图表区域内移动表单的方法. 接着我们会把这个界面组件与核心库整合. 而且我们会实现这样的功能, 在鼠标光标移动到表单之上时, 表单控件会改变它的颜色.
单纯使用 MQL5 语言处理 ZIP 档案
MQL5 语言在不断进化, 持续地增加了用于处理数据的新特性. 正因为这些创新, 现在我们可以在不引入第三方DLL库的情况下, 只使用通常的MQL5工具就可以操作ZIP档案了. 本文专注于具体的实现, 并且提供了CZip类作为例子, 它是一个用于读取, 创建和修改ZIP档案的通用工具.
纺锤形图表指标
本文介绍纺锤形图表的绘制及其在交易策略和智能交易系统中的应用。首先我们讨论图表的展现,绘制记忆和日本蜡烛图的关系。其次我们分析下指标在MQL5语言中的实现源代码。最后我们测试基于该指标和由此构建的交易策略的EA。
MQL5 酷客宝典: 实现您自己的市场深度
本文展示了如何利用市场深度 (DOM) 编程, 并介绍了 CMarketBook 类的操作原理, 它可扩展 MQL5 标准库的类, 并提供使用 DOM 的便利方法。
使用 MQL5 绘制阻力和支撑级别
本文介绍一种查找四个极点并在此基础上绘制支撑和阻力级别的方法。为了在当前货币对的图表上查找极点, 使用 RSI 指标。作为例子, 我们提供了一款指标的代码显示支撑和阻力级别。
如何在莫斯科交易所安全地使用您的 EA 进行交易
本文深入研究了交易方式, 通过莫斯科交易所衍生产品市场的例子来说明如何确保在股票和低流动性市场中交易操作的安全性。它带来了一些实践方法, 其交易原理在文章 "Principles of Exchange Pricing through the Example of Moscow Exchange's Derivatives Market - 莫斯科交易所衍生产品市场为例的定价原则" 里描述。
MQL5秘笈之:采用关联数组或字典实现快速数据访问
本文介绍一种能够通过key来访问元素的特殊算法。任何基本数据类型都可以被当作key。例如它可以是一个字符串或一个整型值。这样的数据容器通常被称为字典或这关联数组。这为解决问题提供了便捷。
在 GUI 控件中使用布局和容器: CBox 类
本文介绍一种基于布局和容器来创建 GUI (图形用户界面) 的替代方法, 使用一个布局管理器 — CBox 类。类 CBox class 是一个辅助控件, 在 GUI 面板里充当一个基本控件的容器。它可令图形面板设计更加简便, 并且在某些场合, 减少编写代码时间。
使用 CCanvas 类绘制刻度表盘
我们可以在汽车和飞机, 在工业产品以及在生活中随处发现刻度表盘。它们被用在所有需要对数值控制行为进行快速响应的领域。这篇文章描述用于 MetaTrader 5 的刻度表盘程序库。
模糊逻辑介绍
模糊逻辑扩展了我们的数理逻辑和集合论的界限。本文揭示了模糊逻辑的基本原理, 同时描述使用马丹尼型和关野型的两种推理系统。提供的例程将描述如何使用 MQL5 版本的模糊库来实现这两种类型的系统。
研究CCanvas类如何绘制透明的图形对象
你是不是想要更加好看的移动平均线?你想要在终端中绘制更加漂亮的而不是简单的实心矩形吗?终端中能够绘制出更有吸引力的图形。这可以通过CCanvas类来实现,该类用于创建自定义图形对象。用这个类你能够实现透明化,混合色以及通过重叠和混合颜色产生透明的效果。
使用面向对象的方法来编写EA的模式
本文介绍一种使用MQL5语言来编写多模式自动交易程序的方法。每一种模式都使用面向对象的方法来实现。不仅给出不同模式下类的层次结构,还给出用于测试的类的实例。多模式自动交易程序以MQL5语言实现,它应该考虑EA的每一种执行模式。创建用于确定EA模式的函数和枚举值。
关于策略优化的一些简单想法
即使你借助MQL5的云计算网络来进行优化工作,仍就需要消耗大量的计算机资源。本文由我对MetaTrader 5策略测试器一些简单的改进想所法组成。这些想法来自于MQL社区的相关技术文档、论坛和文章。
MQL5 向导: 根据计算价位下单, 止损和止盈。标准库扩展
本文描述 MQL5 标准库扩展, 可以使用 MQL5 向导接收来自包含模块的价格, 创建 EA, 下单, 止损和止盈。这种方法不会对模块的应用数量有任何额外的限制,亦不会在联合工作中导致冲突。
MQL5 Cookbook: 处理 BookEvent
本文研究 BookEvent - 一个市场深度事件,以及它的处理原理。一个处理市场深度状态的 MQL 程序,作为例程。它采用面向对象方法编写。处理结果作为面板显示在屏幕上,还有市场深度级别。
为何在 MetaTrader 4 与 MetaTrader 5 上的虚拟托管优于一般的 VPS
虚拟托管云网络是专为 MetaTrader 4 和 MetaTrader 5 平台研发的,并拥有许多本地解决方案。获得我们的 24 小时免费服务 - 现在即可测试一台虚拟服务器。
MQL5 Cookbook - 以 MQL5 编写的多币种 EA,利用限价订单工作
这次,我们将要创建一款多币种 EA,交易算法基于限价订单 Buy Stop(高买) 和 Sell Stop(低卖)。本文讨论下列事项:在规定时间范围内进行交易,布置/修改/删除限价订单,检查最后一个持仓是否在止盈或止损位置平仓,以及在成交历史中控制每个品种。
MQL5 Cookbook: 处理典型图表事件
本文研究典型图表事件,包括其处理例程。我们将专注于鼠标事件,按键,创建/修改/删除图形对象,鼠标点击图表上的图形对象,用鼠标移动图形对象,在文本域中完成文本编辑,以及在图表上修改事件。研究的每一类事件,都有一个 MQL5 程序例程。
MQL5 Cookbook: 处理 TradeTransaction 事件
本文从事件驱动编程的角度来考察 MQL5 语言的能力。这种方法的最大好处是,程序可以接收有关交易操作的分阶段实施信息。本文还包含一个使用 TradeTransaction 事件处理器的例子,来接收和处理正在进行的交易操作的动作信息。在我看来,这种方式可用于复制一个终端的交易到另一个终端。
如何准备迁移至虚拟主机的交易账户
MetaTrader 客户端完美支持自动交易策略。它有自动交易开发者所需的所有工具 ‒ 强劲的,基于 C++ 的 MQL4/MQL5 编程语言,便利的 MetaEditor 开发环境,以及支持在 MQL5 云网络中进行分布式计算的多线程策略测试器。在本文中, 您将发现如何将您的客户端连同所有定制元素一并移至虚拟环境。
构建三线突破图表指标
本文专门研究由 Steve Nison 在其著作 "Beyond Candlesticks(超越蜡烛条)" 中建议的三线突破图表。这个图表的最大优点是它可以过滤相对以前行情的小幅价格波动。我们将要讨论图表的原理,指标代码,以及基于此交易策略的一些示例。
市场上产品有效展示的小贴士
有效地向交易人出售程序,不仅需要编写一个高效有用的产品,然后还要在市场上发布。提供一份全面详尽的描述和高品质的插图至关重要。性能标识和正确的截图也与“真正的编码”同等重要。记住一个简单的公式:没有下载=没有销量。
SQL 与 MQL5: 与 SQLite 数据库集成
本文的目的,是那些打算在他们的项目中使用 SQL 的开发者。它解释了 SQLite 的功能和优势。本文不需要特别的 SQLite 函数知识, 当然对 SQL 的最小理解将是有益的。
用于 Renko 制图的指标
本篇举例描述一个用 MQL5 实现的 Renko 制图指标。这个指标的修改,将它从经典图表中区分开来。它在指标窗口或主窗口两者中都可以构建。此外,此处还有 ZigZag 指标。您可以找到一些图表实现的例子。
MQL5 Cookbook: 开发多品种指标分析价格偏离
在本篇中, 我们将研究开发一款多品种指标来分析指定时间周期内的价格偏离。其核心议题已经在之前的多货币对指标编程文章中进行过讨论 "MQL5 Cookbook: 用 MQL5 开发多品种波动指标"。所以这次,我们将仅关注那些有了大幅变化的新特征和功能。如果您是多货币对指标编程的新人, 我建议您先去阅读之前的文章。
Kagi 制图指标
文中介绍了 Kagi 图指标以及各种制图选项和其它函数,同时考虑了指标制图原则及其 MQL5 实现功能。本文还展示了最常见的实现方式,阴阳交易策略,偏离走势线并不断提高“肩”部/降低“腰”部。
创建多币种多系统 EA 交易
本文介绍了 EA 交易结构,它可实现多交易品种交易,并同时使用多个交易系统。如果你已经确认了所有 EA 交易的最佳输入参数,并分别得到很好的回溯测试结果,那么思考一下:如果结合自己的所有策略同时测试所有 EA,你会得到什么结果?
MQL5 细则手册:在 MQL5 中开发多交易品种波动指标
本文将探讨如何开发多交易品种波动指标。对于 MQL5 开发新手来说,开发多交易品种指标可能有些难度,本文将帮他们理清开发过程。开发多交易品种指标的主要问题:其它交易品种的数据与当前交易品种之间的同步;缺乏某些指标数据;以及确定既定时间表“真实”柱的起点。本文将密切关注以上所有问题。
MQL5 细则手册:指标子窗口控件 - 滚动条
让我们继续开发各种控件,这一次我们将注意力转向滚动条。正如前文“MQL5 细则手册:指标子窗口控件 - 按钮”一样,所有操作将在指标子窗口中执行。花一些时间阅读上面提到的文章,文中对在 OnChartEvent() 函数中处理事件提供了详细的说明,而这一点在本文中只是略有提及。为便于说明,这一次我们将为一个大列表创建一个垂直滚动条,该列表包含使用 MQL5 资源可以获得的所有金融工具属性。
MQL5 细则手册:指标子窗口控件 - 按钮
本文中,我们将探讨开发具备按钮控件的用户界面的示例。为向用户传递互动性理念,当光标悬停于按钮时,按钮颜色会发生改变。光标位于按钮之上时,按钮颜色将稍微变暗,点击时,按钮颜色则会变得明显更暗。此外,我们将为每一按钮添加工具提示,从而创建直观界面。
MQL5 细则手册:在单一窗口中监控多个时间表
在 MetaTrader 5 中,有 21 个时间表可供分析。您可以利用能置于现有图表上的特殊图表对象,并在相应位置设置交易品种、时间表及其他属性。文章将对此类图表图形对象进行详细介绍:我们将使用控件(按钮)创建指标,以便同时在子窗口中建立多个图表对象。此外,图表对象将准确置于子窗口中,并随主图表或终端窗口的大小调整自动进行校正。
MQL5 细则手册:MetaTrader 5 交易事件的声音通知
在本文中,我们将考虑在“EA 交易”的文件中包含声音文件、从而为交易事件添加声音通知的事宜。将包含文件的事实意味着声音文件将位于“EA 交易”的内部。因此,在向其他用户提供编译后的“EA 交易”版本 (*.ex5) 时,您无需再提供声音文件并说明它们应予以保存的位置。