Anatoli Kazharski / 个人资料
- 信息
12+ 年
经验
|
0
产品
|
0
演示版
|
28
工作
|
0
信号
|
0
订阅者
|
![MQL5 Cookbook - 以 MQL5 编写的多币种 EA,利用限价订单工作](https://c.mql5.com/2/0/Pending-Orders.png)
这次,我们将要创建一款多币种 EA,交易算法基于限价订单 Buy Stop(高买) 和 Sell Stop(低卖)。本文讨论下列事项:在规定时间范围内进行交易,布置/修改/删除限价订单,检查最后一个持仓是否在止盈或止损位置平仓,以及在成交历史中控制每个品种。
![MQL5 Cookbook: 开发多品种指标分析价格偏离](https://c.mql5.com/2/0/avatar__11.png)
在本篇中, 我们将研究开发一款多品种指标来分析指定时间周期内的价格偏离。其核心议题已经在之前的多货币对指标编程文章中进行过讨论 "MQL5 Cookbook: 用 MQL5 开发多品种波动指标"。所以这次,我们将仅关注那些有了大幅变化的新特征和功能。如果您是多货币对指标编程的新人, 我建议您先去阅读之前的文章。
![MQL5 细则手册:在 MQL5 中开发多交易品种波动指标](https://c.mql5.com/2/0/avatar1__1.png)
本文将探讨如何开发多交易品种波动指标。对于 MQL5 开发新手来说,开发多交易品种指标可能有些难度,本文将帮他们理清开发过程。开发多交易品种指标的主要问题:其它交易品种的数据与当前交易品种之间的同步;缺乏某些指标数据;以及确定既定时间表“真实”柱的起点。本文将密切关注以上所有问题。
![MQL5 细则手册:指标子窗口控件 - 滚动条](https://c.mql5.com/2/0/avatar__10.png)
让我们继续开发各种控件,这一次我们将注意力转向滚动条。正如前文“MQL5 细则手册:指标子窗口控件 - 按钮”一样,所有操作将在指标子窗口中执行。花一些时间阅读上面提到的文章,文中对在 OnChartEvent() 函数中处理事件提供了详细的说明,而这一点在本文中只是略有提及。为便于说明,这一次我们将为一个大列表创建一个垂直滚动条,该列表包含使用 MQL5 资源可以获得的所有金融工具属性。
![MQL5 细则手册:指标子窗口控件 - 按钮](https://c.mql5.com/2/0/buttons-avatar.png)
本文中,我们将探讨开发具备按钮控件的用户界面的示例。为向用户传递互动性理念,当光标悬停于按钮时,按钮颜色会发生改变。光标位于按钮之上时,按钮颜色将稍微变暗,点击时,按钮颜色则会变得明显更暗。此外,我们将为每一按钮添加工具提示,从而创建直观界面。
![MQL5 细则手册:在单一窗口中监控多个时间表](https://c.mql5.com/2/0/avatar__9.png)
在 MetaTrader 5 中,有 21 个时间表可供分析。您可以利用能置于现有图表上的特殊图表对象,并在相应位置设置交易品种、时间表及其他属性。文章将对此类图表图形对象进行详细介绍:我们将使用控件(按钮)创建指标,以便同时在子窗口中建立多个图表对象。此外,图表对象将准确置于子窗口中,并随主图表或终端窗口的大小调整自动进行校正。
![MQL5 细则手册:MetaTrader 5 交易事件的声音通知](https://c.mql5.com/2/0/avatar__8.png)
在本文中,我们将考虑在“EA 交易”的文件中包含声音文件、从而为交易事件添加声音通知的事宜。将包含文件的事实意味着声音文件将位于“EA 交易”的内部。因此,在向其他用户提供编译后的“EA 交易”版本 (*.ex5) 时,您无需再提供声音文件并说明它们应予以保存的位置。
![MQL5 细则手册:保存基于指定标准的“EA 交易”的优化结果](https://c.mql5.com/2/0/avatar__7.png)
我们继续有关 MQL5 编程的系列文章。这一次,我们来看一看如何获得“EA 交易”参数优化期间传递的每个优化的结果。将完成实现,以确保如果外部参数中指定的条件得到满足,对应的传递值将被写入文件。除了测试值,我们还将保存带来这样的结果的参数。
![MQL5 Cookbook: 减少过度配合的影响以及处理报价缺失](https://c.mql5.com/2/0/Reduce_Overfitting_avatar.png)
无论您使用何种交易策略,总会有一个问题:怎样选择参数以保证未来的利润。本文提供了一个EA交易的实例,使您可以同时优化多个交易品种的参数,这种方法是未了减少参数的过度配合以及处理在研究中来自单个交易品种的数据不足的问题。
![MQL5 Cookbook: 把交易历史写入文件以及为每个交易品种在Excel中创建余额图表](https://c.mql5.com/2/0/avatar11.png)
当在各种论坛做沟通时,我经常使用我自己的测试结果作为例子,这些结果显示为Microsoft Excel中的图表截图。很多时候都有人问我这些图表是怎样创建的,最终,我现在有时间在本文中解释其中的全部了。
![MQL5 Cookbook: 使用不限数量的参数开发多币种EA交易](https://c.mql5.com/2/0/avatar__5.png)
在本文中,我们将创建一种模式,它会使用一系列参数为交易系统作优化,而且允许不加数量限制的参数。交易品种的列表将在标准文本文件(*.txt)中创建,每个交易品种的输入参数也将存储于文件中。使用这种方法,我们将能够免除终端中对EA输入参数个数的限制。
![MQL5 Cookbook: 多币种EA交易 - 简洁而快速的途径](https://c.mql5.com/2/0/avatar__3.png)
本文将介绍一个针对多币种EA交易的简单而合适的实现。意思是说您可以设置EA交易,针对多币种在同一条件下测试/交易,但是为每个交易品种设置不同的参数。作为例子,我们将创建针对两个交易品种的模式,但是通过这种方法可以还增加另外的交易品种,如有必要只需修改很少的代码。
![MQL5 Cookbook: 基于三重滤网策略开发交易系统框架](https://c.mql5.com/2/0/avatar__2.png)
在本文中,我们将基于三重滤网(Triple Screen)策略,使用MQL5开发一个交易系统的框架。EA交易不会从头开始开发,我们会简单地修改前一篇文章, 即"MQL5 Cookbook: 在EA交易中使用指标设置交易条件"中的程序,它已经基本上满足了我们的目标。所以这篇文章也会向您展示如何简单地修改已经完成的程序的模式。
![MQL5 Cookbook: 在EA交易中使用指标来设置交易条件](https://c.mql5.com/2/0/Avatar__1.png)
在本文中,我们将继续修改之前在MQL5 Cookbook系列文章中的EA交易,这一次,EA交易将进一步增强,使用指标来检查建仓条件。为了增加点乐趣,我们会在外部参数中创建一个下拉列表,可以从三个交易指标中选择一个。
![MQL5 Cookbook: 交易历史和取得仓位信息的函数库](https://c.mql5.com/2/0/avatar-history.png)
现在是时候简单总结一下之前关于仓位属性文章的内容了,在本文中,我们会额外创建几个函数来取得只能通过访问交易历史才能获得的属性,我们也会对数据结构更加熟悉,这使我们可以用更加方便的方法访问仓位和交易品种属性。
![MQL5 Cookbook: 怎样在设置/修改交易参数时避免错误](https://c.mql5.com/2/0/avatar1.png)
作为我们在系列前一篇文章,"MQL Cookbook: 在MetaTrader 5策略测试器中分析仓位属性"中EA交易工作的继续,我们将使用很多有用的函数,以及提高和优化已有的函数来增强它。这一次EA交易有可以在MetaTrader 5策略测试器中优化的外部参数,并且在某些方面组成了一个简单的交易系统。
![MQL5 Cookbook: 在MetaTrader 5策略测试器中分析仓位属性](https://c.mql5.com/2/0/Avatar_Recipes_tester.png)
我们将会展示一个来自前一篇文章,"MQL5 Cookbook: 自定义信息面板上的仓位属性"的修改版的EA交易。我们将会解决一些问题,包括从柱中获得数据,在当前交易品种中检查新柱事件,在文件中包含标准库中的交易类,创建一个函数来搜索交易信号,还有一个执行交易操作的函数以及在OnTrade()函数中判断交易事件。
![MQL5 Cookbook: 自定义信息面板上的仓位属性](https://c.mql5.com/2/0/Info-Panel-avatar.png)
这一次我们创建一个简单的EA交易,它可以取得当前交易品种的仓位属性并且在人工交易的时候在自定义信息面板上显示它们。信息面板将使用图形对象创建,显示的信息在每当有订单时都会刷新,这将比系列文章的前一篇 - "MQL5 Cookbook: 获取仓位属性"中提到的每次必须人工运行脚本要方便得多。
![MQL5 Cookbook: 获取仓位属性](https://c.mql5.com/2/0/avatar3__2.png)
在本文中,我们将创建一个脚本来获得所有的仓位属性,并用对话框向用户显示它们。通过运行这个脚本,您可以从外部参数下拉列表的两种模式中选择:只看当前交易品种的仓位属性,或者查看所有交易品种的属性。
![MQL5 Cookbook: 使用不同的打印模式](https://c.mql5.com/2/0/avatar2__2.png)
这是 MQL5 Cookbook 系列的第一篇文章,我将会从简单的实例开始,让那些刚刚开始编程的人逐渐熟悉这门新语言。我还记得我开始设计和编写交易系统时的尝试,可以说是非常困难,事实上那是我所学的第一门编程语言,然而,后来还是比我想象的简单一些,我只用了几个月的时间就能够开发相对复杂的程序了。