如何开始使用Metatrader 5 - 页 122

 

在MetaTrader 5中使用MATLAB 2018的计算能力

在MetaTrader 5中使用MATLAB 2018的计算能力


This article is a development of the article "Interaction between MetaTrader 4 and MATLAB" by A. Emelyanov, and it provides information on solving a similar task for modern 64-bit versions of all platforms utilized by users. Over the past period, the method for creating shared DLL libraries has been substantially upgraded in the MATLAB package. Therefore, the method discussed in the original article requires modification. This happened because MATLAB Compiler SDK or MATLAB Coder must now be used instead of MATLAB Compiler. In addition, the practice of working with dynamic memory in MATLAB has changed, which implies certain adjustments of the source code that addresses a library written in the MATLAB language.

 

开发一个跨平台的网格器EA

开发一个跨平台的网格器EA

Most frequent users of this website know pretty well that MQL5 is the best option for developing custom EAs. Unfortunately, not all brokers allow creating accounts available in MetaTrader 5. Even if you currently work with a broker that allows that, you may switch to a broker offering only MetaTrader 4 in the future. What are you going to do with all the MQL5 EAs you have developed in that case? Are you going to spend a huge amount of time to rework them to fit into MQL4? Perhaps, it would be more reasonable to develop an EA able to work both in MetaTrader 5 and MetaTrader 4?

在这篇文章中,我们将尝试开发这样一个EA,并检查基于订单网格的交易系统是否可用。

 

如何在HTML和CSV报告的基础上可视化多货币交易历史

如何基于HTML和CSV报告将多货币交易历史可视化

自推出以来,MetaTrader 5提供多币种测试选项。这种可能性经常被交易者使用。然而,该功能并不普遍。特别是,在运行测试后,用户可以打开一个有已执行的交易操作的图表。但这只是在策略测试器设置中选择的一个交易符号的图表。测试后不能查看所有使用的符号的整个交易历史,而视觉检查并不总是有效。在测试后的一段时间内,可能需要进行额外的分析。另外,报告可以由另一个人提供。因此,一个基于HTML测试报告的多个工作符号的可视化交易工具将是非常有用的。

如何基于HTML和CSV报告将多货币交易历史可视化

如何基于HTML和CSV报告将多货币交易历史可视化

上一篇文章对基于CSS选择器的HTML解析器进行了描述[1]。解析器从HTML报告中提取交易列表,在此基础上我们可以形成交易(图形对象)。从信号部分解析CSV文件要容易一些,而MetaTrader 4(*.history.csv)和MetaTrader 5(*.position.csv)信号的文件格式由内置的MQL函数支持。

 
我从哪里开始?
https://www.mql5.com/en/forum/212020
Where Do I start from?
Where Do I start from?
  • 2017.07.25
  • www.mql5.com
Hi fam! Am a total newbie in the forex niche... Just signed up here on this platform... Please where do i start from? I need help...
 

关于交易、自动交易系统和测试交易策略的论坛

新MetaTrader 5平台build 2085:与Python的整合和策略测试器的改进

MetaQuotes软件公司。, 2019.06.11 17:36

MetaTrader 5平台的更新版本将于2019年6月13日(星期四)发布。新版本包含以下变化。


  1. 终端。增加了新的API,可以通过使用Python 语言的应用程序请求MetaTrader 5终端数据。

    Python是一种现代高级编程语言,用于开发脚本和应用程序。它包含多个用于机器学习、流程自动化以及数据分析和可视化的库。

    适用于Python的MetaTrader软件包 旨在通过处理器间通信,直接从MetaTrader 5终端有效和快速地获得交易数据。通过这个途径收到的数据可以进一步用于统计计算和机器学习。



    连接

    1. https://www.python.org/downloads/windows 下载最新的Python版本
    2. 在Python安装过程中,勾选 "将Python X.X添加到PATH%",以使Python脚本能够从命令行启动。
    3. 从命令行安装MetaTrader 5模块
      pip install MetaTrader5
    4. 添加matplotlib和pytz软件包
      pip install matplotlib
      pip install pytz

    功能


  2. 终端。市场信号 部分已被优化。现在,产品和信号展示的运行速度提高了七倍,从而提供了更好的服务浏览体验。




  3. 终端。在Wine中增加了对 "市场"、"信号 "和 "搜索 "的支持。LinuxMac OS 用户现在可以与复制交易服务一起访问最大的交易应用程序商店。




  4. 终端。内置的学习程序已被翻译成30多种语言,包括西班牙语、中文、葡萄牙语和德语等等。要查看所需语言的互动提示,请使用查看菜单切换到所需的界面语言。




  5. 终端。新的选项可以验证电话号码和电子邮件,这是交易者在开设模拟和初步账户时指定的。

    数据验证的需要由经纪人决定。如果该选项被启用,确认代码将在账户申请时自动发送给交易者,并在对话框中出现特殊代码字段。




    确认代码在几分钟内有效。如果在这个时间段内没有在字段中输入代码,交易者将需要重复这个程序。
    在发送代码之前,系统会检查指定的电话/电子邮件是否先前已经确认。如果交易者已经从他或她的电脑上通过了验证,账户将被打开,不需要额外确认。因此,在账户申请过程中,不会给交易者带来额外的负担。

  6. 终端。通过PayPal 系统的MQL5.community支付选项已被扩大。现在可以使用该系统,一键购买。

    它是如何工作的
    在您使用您的PayPal账户登录购买后,您将被要求允许进一步向我们公司付款。





    通过确认这个选项,你将能够通过点击先前保存的账户按钮,执行进一步的购买。




    如果您点击 "取消并返回MetaQuotes软件公司",您将以正常的方式进行支付,通过手动输入PayPal账户的详细信息,进行每次购买。
    MQL5.com网站和MetaTrader 5平台不存储您的付款细节。当您存入资金、在市场服务中购买或订阅信号时,数据验证是在支付系统方面进行的。
    您可以随时删除您的PayPal账户链接。

  7. 测试器。策略测试器的改进和优化。

    我们引入了大量隐藏的改进,并修复了错误,以优化策略测试器的操作。这次更新使一些任务类型的测试速度大大加快,并提高了运行的稳定性。主要改进包括。

    带框架的操作
    对本地、网络和云代理上的带框架 的操作进行了优化。这些操作现在处理得更快,而且不会被跳过。

    向代理分配任务
    测试员现在可以在优化过程中重新分配任务给代理。如果一个新的代理已经可用(或以前使用的代理之一已经被释放),测试员会自动创建一个新的任务包,使用那些早期分配给其他代理的任务。如果发现缓慢的代理,任务也可以重新分配。这些代理的任务被发送到其他代理,以便更快地完成优化。

    数学计算模式下的任务分配已经变得更快。

    日志中的优化统计
    优化日志已被扩展:它包括与MQL5云网络 使用和云代理的启用和禁用等相关的详细统计数据。

    在完全优化日志模式下的操作
    为了优化资源消耗,并不是所有来自代理的消息都被记录到测试器日志中。要查看所有的日志,您可以使用测试仪日志的上下文菜单启用 "完全优化日志 "选项。以前,这种模式大大减缓了优化过程。现在,计算时间不受影响。

    MQL5云网络
    优化了云测试代理的操作。现在,计算任务被更有效地分配。

  8. 终端。内置的日历 具有与全球18个最大经济体有关的900多个指标的出版物,包括美国、欧盟、日本和英国等等。相关的数据是实时从公开来源收集的。通过定期检查该服务,交易者保持对最新的全球新闻的了解,并可以采取明智的交易决策。

    经济日历可以在桌面终端和网站以及移动设备上使用。该应用程序可以通过终端中的日历上下文菜单打开。




    选择您的平台并下载Tradays应用程序。


    除了桌面平台提供的日历功能外,移动版还提供事件提醒和以图表和表格的形式访问完整的指标历史。

  9. 终端。在导入tick历史时增加了自动生成自定义符号条形历史的功能。现在,如果自定义符号的tick数据发生变化,相应的条形图会自动重新计算。

    • 因此,统一的数据在平台中被保留下来。
    • 导入tick数据后(如果有足够的数据),不需要导入条形图,因为它们是由终端自动计算的。

    变化涉及到通过终端界面执行的刻度线的导入,以及使用CustomTicks* 函数从MQL5应用程序执行的刻度线的更新。任何蜱虫数据的变化都会导致重新计算自定义符号的相应1分钟条形图。

  10. 终端。修正了在分离式图表 上使用十字线时,数据窗口中的数据更新。
  11. 终端。修复了刻度线历史保存。在早期版本中,一毫秒内的多个刻度可能会以错误的顺序保存。
  12. 终端。修正了基于服务器上可用的太短的价格历史(少于一天)而生成的图表。
  13. MQL5。增加了MQL5服务 调试选项。现在可以测试这些应用程序,类似于专家顾问和指标。
  14. MQL5。在ENUM_SYMBOL_CALC_MODE 枚举中增加了新的利润和保证金计算模式。

    • SYMBOL_CALC_MODE_EXCH_BONDS - 兑换债券的计算。
    • SYMBOL_CALC_MODE_EXCH_STOCKS_MOEX - 计算在莫斯科交易所交易的股票。
    • SYMBOL_CALC_MODE_EXCH_BONDS_MOEX - 在莫斯科交易所交易的债券的计算。

  15. MQL5:新的TesterDeposit 函数可以在测试期间模拟存款操作。该功能在测试资金管理策略时非常有用。
    bool  TesterDeposit(
       double money      // the deposit amount
       );
  16. MQL5:在OnDeinit 方法执行期间,MQL5应用程序不会从终端接收任何事件。以前,由于收到其他事件,应用程序偶尔不能完成去初始化(例如,删除所有创建的对象)。
  17. MQL5。修正了偶尔出现的错误,这些错误可能发生在当前日期的自定义符号刻度历史的变化之后。
  18. MQL5:修正了在使用大量(数以万计)的图形对象时,偶尔出现的应用程序速度减慢。
  19. MQL5。修正了在频繁调用MQL5程序的交易历史时,终端冻结的问题。
  20. MQL5。修正了iBarShift 函数操作。在 "exact=false "标志和数据外请求的情况下,该函数返回最古老的条形数字而不是最新的。
  21. 测试器。修正了在具有多个NUMA节点 的处理器的计算机上确定核心数的问题。
  22. 测试器。增加了用零初始存款运行测试和优化的可能性,因为在测试期间可以使用新的TesterDeposit 函数模拟存款操作。
  23. 元编辑器。代码样式器 命令现在可以被添加到工具栏上,以便快速访问。
  24. 元编辑器。修正了在函数和变量名称中使用非Unicode字符时切换到参数定义和查看相关数据。
  25. 文档已更新。

该更新可通过LiveUpdate系统获得。


 

在交易中应用OLAP(第一部分)。多维数据的在线分析

class Record
  {
    private:
      double data[];
      
    public:
      Record(const int length)
      {
        ArrayResize(data, length);
        ArrayInitialize(data, 0);
      }
      
      void set(const int index, double value)
      {
        data[index] = value;
      }
      
      double get(const int index) const
      {
        return data[index];
      }
  };

交易员经常要分析大量的数据。这些数据通常包括数字、报价、指标值和交易报告。由于这些数字取决于大量的参数和条件,让我们分部分考虑,从不同的角度来看待整个过程。整个信息量形成了一种虚拟的超立方体,其中每个参数都定义了自己的维度,它与其他参数垂直。这种超立方体可以使用流行的OLAP(在线分析处理)技术进行处理和分析。

该方法名称中的 "在线 "一词并不是指互联网,而是指结果的及时性。操作原理意味着超立方体单元的初步计算,之后你可以快速提取并以可视化形式查看立方体的任何截面。这可以与MetaTrader的优化过程相比较:测试仪首先计算交易变体(这可能需要相当长的时间,也就是说,它不是及时的),然后输出一份报告,其特点是与输入参数相关的结果。 从build 1860开始,MetaTrader 5平台支持通过切换各种优化标准来动态改变查看的优化结果。这接近于OLAP的想法。但为了进行完整的分析,我们需要有可能选择超立方体的许多其他片断。

Online analytical processing - Wikipedia
  • en.wikipedia.org
OLAP tools enable users to analyze multidimensional data interactively from multiple perspectives. OLAP consists of three basic analytical operations: consolidation (roll-up), drill-down, and slicing and dicing.[6]: Consolidation involves the aggregation of data that can be accumulated and computed in one or more dimensions. For example, all...
 
Sergey Golubev:

终端。在Wine中增加了对 "市场"、"信号 "和 "搜索 "的支持。Linux和Mac OS用户现在可以与复制交易服务一起访问最大的交易应用程序商店。

是不是只有MT5?

那MT4呢?

 
Bernhard Schweigert:

只有MT5吗?

那么MT4呢?

这是针对MT5的公告,所以我认为--它可能只针对MT5。
因为我没有找到与Metatrader 4有关的相同信息或公告。

 
Sergey Golubev:

这是针对MT5的公告,所以我认为--它可能只针对MT5。
因为我没有找到与Metatrader 4有关的相同信息或公告。

任何有MAC或Linux的人都可以在这里测试并告知。