如何开始学习MQL5 - 页 34

 

论坛

新版MetaTrader 5平台build 1930:浮动窗口图表和MQL5中的.Net程序库

MetaQuotes Software Corp., 2018.10.26 09:49

MetaTrader 5平台更新版将于2018年10月26日进行发布。该更新将有以下变化:

  1. 程序端:现在,您可以在交易程序端窗口之外使用交易品种图表。

    这个功能的便利性在使用多个显示器进行操作时非常明显。因此,您可以在一个显示器上设置平台的主窗口来管理您的账户状态,并将您的图表移动到另一个显示器上以观察市场动向。若要将图表从程序端分离,请在快捷菜单中禁用“固定”选项。然后,将图表移动到所需的显示器。





    通过分离图表的独立工具栏可以应用分析对象和指标,而无需在显示器间进行切换。使用工具栏快捷菜单来管理可用命令集或将命令隐藏。

  2. 程序端:完全更新的嵌入式聊天功能。现在,该功能支持群组聊天和频道交流。可以在一个环境内与一个群组的人们进行私人讨论,而不需要在不同的对话之间切换,您还可以根据您的兴趣和语言创建频道。在MQL5.community与同业和好友进行交流,而不需要访问网站。

    群组聊天和频道交流既可以是公开的,也可以设为私人状态。由创建者来决定是否可以自由加入群聊或是只能通过邀请加入。您还可以为频道和聊天分派版主/群主,为了进一步进行交流管理。




  3. 程序端:新增对数字加密货币交易提高交易量精确性的支持。现在,交易操作可允许的最小交易量为0.00000001手数。现在,市场深度,成交时间和交易量,以及其他界面元素都能够精确显示到小数点后8位。

    最小交易量及其变动幅度取决于交易商的交易品种设置。




  4. 程序端:在工具箱窗口,添加了MQL5.community网站发布的文章的选项卡。现在,在程序端可以直接获得600多篇关于使用MQL5开发交易策略的详细材料。每周都会发布新文章。




  5. 程序端:新增在Wine系统下操作时,支持使用证书进行扩展认证
  6. 程序端:修正了市场深度被限定在一个水平时的显示。
  7. 程序端:将“另存为图片”的命令添加到标准工具栏中。现在,保存图表图片并将其分享在社区中会更加容易。




  8. 程序端:修正导入柱形图和报价时,应用时间切换。之前,在某些情况下无法使用时间切换。




  9. 程序端:修正大量经济日历新闻情况下的程序端冻结。
  10. MQL5:添加了通过"smart"导入函数对.NET程序库的本机支持。现在,.NET程序库可以在无需编写特殊包装样式的情况下使用 — MetaEditor可以独立完成。

    若要使用.NET程序库函数,只需导入DLL本身,而不必定义特定的函数。MetaEditor自动导入所有可以使用的函数:
    • 简单结构(POD,普通旧数据) — 仅包含简单数据类型的结构。
    • 有参数的公共静态函数,在这里只有简单类型和POD结构或其数组可被使用

    若要从程序库调用函数,简单导入即可:
    #import "TestLib.dll"
    
    //+------------------------------------------------------------------+
    //| 脚本程序起始函数                                                    |
    //+------------------------------------------------------------------+
    void OnStart()
      {
       int x=41;
       TestClass::Inc(x);
       Print(x);
      }
    TestClass的Inc函数C#代码如下:
    public class TestClass
    {
       public static void Inc(ref int x)
       {
        x++;
       }
    }
    作为执行结果,脚本返回值为42。

    对.NET程序库的支持工作仍继续。其功能将在未来得到扩展。

  11. MQL5:添加了支持使用标准程序库的WinAPI函数。现在,不需要手动导入程序库和描述函数签名来在MQL5程序中使用操作系统函数。只需包括来自MQL5\Include\WinAPI目录的头文件。

    WinAPI函数按其用途在单独的文件中分组:

    • libloaderapi.mqh — 使用资源
    • memoryapi.mqh — 使用内存
    • processenv.mqh — 使用环境
    • processthreadsapi.mqh — 使用流程
    • securitybaseapi.mqh — 使用OS安全系统
    • sysinfoapi.mqh — 获取系统信息
    • winbase.mqh — 常用函数
    • windef.mqh — 常量、结构和枚举
    • wingdi.mqh — 使用图形对象
    • winnt.mqh — 处理异常
    • winreg.mqh — 使用注册表
    • winuser.mqh — 窗口和界面管理
    • errhandlingapi.mqh — 处理错误
    • fileapi.mqh — 使用文件
    • handleapi.mqh — 使用句柄
    • winapi.mqh — 包含所有函数(WinAPI头文件)

    绑定仅适用于64位架构。

  12. MQL5:在解析代码时,新增对inline, __inline和 __forceinline描述符的支持。代码中的描述符不会导致错误,也不会影响编译。目前,该特性简化了将С++ 代码转为MQL5。
    MSDN中了解关于描述符的更多信息。

  13. MQL5:显著优化了MQL5程序的执行。在某些情况下,性能改进可以达到10%。在新版MetaEditor重新编译您的程序,使其运行得更快。
    遗憾的是,由于这个额外的优化功能,新程序将无法与以前的程序端版本兼容。使用MetaEditor 1912版本编译的程序之后无法在低于1912版本的程序端中启用。使用早期的MetaEditor版本编译的程序则可以在新版程序端中运行。

  14. MQL5:显著优化了MQL5函数集。
  15. MQL5:新增向程序端主窗口附加图表/从程序端主窗口分离图表并管理图表位置的新属性。

    添加以下属性到ENUM_CHART_PROPERTY_INTEGER枚举:

    • CHART_IS_DOCKED — 图表窗口固定。如果设为'false',图表可被拖拽到程序端区域之外。
    • CHART_FLOAT_LEFT — 相对于虚拟屏幕的未固定的图表窗口的左坐标。
    • CHART_FLOAT_TOP — 相对于虚拟屏幕的未固定的图表窗口的顶部坐标。
    • CHART_FLOAT_RIGHT — 相对于虚拟屏幕的未固定的图表窗口的右坐标。
    • CHART_FLOAT_BOTTOM — 相对于虚拟屏幕的未固定的图表窗口的底部坐标。

    添加以下函数到ENUM_TERMINAL_INFO_INTEGER枚举:

    • TERMINAL_SCREEN_LEFT — 虚拟屏幕的左坐标。虚拟屏幕是覆盖所有监视器的长方形。如果系统从右至左有两个监视器,那么虚拟屏幕的左坐标可以在两个监视器的边界上。
    • TERMINAL_SCREEN_TOP — 虚拟屏幕的顶部坐标。
    • TERMINAL_SCREEN_WIDTH — 程序端宽度。
    • TERMINAL_SCREEN_HEIGHT — 程序端高度。
    • TERMINAL_LEFT — 相对于虚拟屏幕的程序端的左坐标。
    • TERMINAL_TOP — 相对于虚拟屏幕的程序端的顶部坐标。
    • TERMINAL_RIGHT — 相对于虚拟屏幕的程序端的右坐标。
    • TERMINAL_BOTTOM — 相对于虚拟屏幕的程序端的底部坐标。

  16. MQL5:将volume_real字段添加到MqlTick和MqlBookInfo结构。其设计目的在于提高交易量准确性。volume_real值的优先级要高于'volume'。如果该值已指定,那么服务器将会优先使用。

    struct MqlTick
      {
       datetime         time;            // 最后价格更新时间
       double           bid;             // 当前卖价
       double           ask;             // 当前买价
       double           last;            // 最后一笔交易的当前价格
       ulong            volume;          // 当前最后价格的交易量
       long             time_msc;        // 以毫秒计算的最后价格更新时间
       uint             flags;           // 报价标识
       double           volume_real;     // 准确性更高的当前最后价格的交易量
      };

    struct MqlBookInfo
      {
       ENUM_BOOK_TYPE   type;            //ENUM_BOOK_TYPE枚举的订单类型
       double           price;           // 价格
       long             volume;          // 交易量
       double           volume_real;     //准确度更高的交易量
      };

  17. MQL5:添加新属性到ENUM_SYMBOL_INFO_DOUBLE枚举:

    • SYMBOL_VOLUME_REAL — 最后已执行成交的交易量;
    • SYMBOL_VOLUMEHIGH_REAL — 当日已执行成交的最高交易量;
    • SYMBOL_VOLUMELOW_REAL — 当日已执行成交的最低交易量。

    使用SymbolInfoDouble函数来获得这些属性。

  18. MQL5:添加MQL_FORWARD属性到ENUM_MQL_INFO_INTEGER枚举 — 前测模式标识。
  19. MQL5:为结构添加了( integer_value )属性包。它可以使您设置结构中字段排列的对齐方式,这是在使用DLL时要求的。1、2 、4、8和16可用于integer_value。
    如果属性没有定义,则默认为1字节对齐方式——pack(1).

    使用示例:
    //+------------------------------------------------------------------+
    //| 默认包装                                                           |
    //+------------------------------------------------------------------+
    struct A
      {
       char              a;
       int               b;
      };
    //+------------------------------------------------------------------+
    //| 指定包装                                                           |
    //+------------------------------------------------------------------+
    struct B pack(4)
      {
       char              a;
       int               b;
      };
    //+------------------------------------------------------------------+
    //| 脚本程序起始函数                                                    |
    //+------------------------------------------------------------------+
    void OnStart()
      {
       Print("sizeof(A)=",sizeof(A));
       Print("sizeof(B)=",sizeof(B));
      }
    //+------------------------------------------------------------------+
    结论:
    sizeof(A)=5
    sizeof(B)=8
    MSDN中了解关于结构中对齐方式的更多信息。

  20. MQL5:降低转换枚举的需求。在隐式转换的情况下,编译器会自动替换正确的枚举值并显示警告。

    以下代码:
    enum Main
      {
       PRICE_CLOSE_,
       PRICE_OPEN_
      };
    
    input Main Inp=PRICE_CLOSE;
    //+------------------------------------------------------------------+
    //| 起始函数                                                           |
    //+------------------------------------------------------------------+
    void OnStart()
      {
      }
    编译器显示警告:
    从'enum ENUM_APPLIED_PRICE'隐式转换到'enum Main'
    'Main::PRICE_OPEN_'将替换'ENUM_APPLIED_PRICE::PRICE_CLOSE'并被使用
    早期,在该情况下生成以下错误:
    'PRICE_CLOSE' - 不能转换枚举
    如果在函数参数中错误地使用枚举,编译器将仍显示该错误。

  21. MQL5:修正编译模板函数。现在,当使用重载模板函数时,只重载必要的函数,而不是所有现有函数都被重载。
    class X {  };
    
    void f(int)  {  }
      
    template<typename T>
    void a(T*) { new T(2); }  // 以前,编译器在这里生成错误
      
    template<typename T>
    void a()  { f(0); }
      
      
    void OnInit()  { a<X>(); }  

  22. MQL5:通过CopyTicks* 函数优化了一些访问报价历史的情况。
  23. MQL5:添加了新TesterStop函数,可以使您提前完成测试/优化过程。当调用该函数时,整个交易统计信息和OnTester结果都会像完成常规测试/优化一样被传递到客户端。
  24. MQL5:为自定义指标添加新属性 #property tester_everytick_calculate。它用于策略测试,允许在每次报价时强制计算指标。
  25. Tester:现在,对于非可视化测试/优化,使用的所有指标(标准指标和自定义指标)只在数据请求期间计算。包含EventChartCustom函数调用和应用OnTimer处理程序的指标排除在外。在此之前,在每次报价进入时,所有指标在策略测试中都无条件计算。这项新功能显著增加了测试和优化的速度。

    若要在每次报价时启用强制指标计算,请为该程序添加#property tester_everytick_calculate属性。
    通过之前版本的编译器编译的指标将按照之前的规则计算 —— 在每次报价时计算。

  26. Tester:修正当测试/优化和生成相关报告时计算入金货币的准确性。
  27. Tester:优化并加速策略测试操作。
  28. Tester:修正多个测试和优化的错误。
  29. MetaEditor:修正搜索整个单词。现在,搜索时,下划线被记为常规字符,而不是单词分隔符。
  30. 更新文档。

更新将通过实时更新系统提供。


 

交易,自动交易系统和测试交易策略论坛

Beta版MetaTrader 5 build 1910:在MQL5中免费拖放图形和.Net库

Renat Fatkhullin ,2018.10.26 09:17

目前的版本是1881年,目前的测试版是1919年。今晚将发布1930年的新版本。


论坛

MT5使用

Sergey Golubev, 2018.10.27 14:01

-----------------


论坛

MT5使用

Sergey Golubev, 2018.10.27 15:08




 

论坛

MQL5.com论坛信息多语言的自动翻译

MetaQuotes Software Corp., 2013.08.12 09:23

MQL5.com 论坛 现在具有任何信息自动翻译的功能。无论源语言是什么,您都可以翻译任何论坛信息,包括12种语言:阿拉伯语,印度尼西亚语,泰国语,西班牙语,意大利语,越南语,德语,韩语,中文,法语,葡萄牙语和日语。因此,您可以翻译任何语言的论坛信息。

Automatic Translation of MQL5.com Forum Messages from Any Language

用母语编写并以您喜欢的方式与MQL5.com参与者沟通。现在,大家将都可以理解您的意思。双击来翻译论坛的任何讨论并且以您的母语阅读它们。所以,您将能够理解任何人!

Automatic Translation of MQL5.com Forum Messages

论坛信息的编辑器也获得了一些新的功能。您以任何语言准备好您的信息后,您可以在编辑器中直接将它翻译成三种语言(英语,俄语或中文)界面中的一个。要做到这一点,点击编辑器面板上的翻译按钮。

Click Translate Button on the Editor's Panel

在MQL5.com论坛不再有语言障碍。现在,您能够找到与社区所有成员的共同语言!


 

MetaTrader 5帮助 → 入门指南 → 开设账户 

MetaTrader 5 Android 帮助 → 账户 → 开立模拟账户 

MetaTrader 5 iPhone/iPad 帮助 → 入手启用

MetaTrader 5帮助
MetaTrader 5帮助
  • www.metatrader5.com
交易平台是交易者的操作工具, 为成功的联线交易提供所有必要的功能。它包括 交易 , 技术性 价格分析 和 基本面分析 , 自动交易 以及从 移动设备 进行交易。此外, 从平台上可进行外汇, 期货和股票交易。 所有类型的订单, 价格图表, 技术和基本面分析, 算法和移动交易  ...
 

按经纪人名称查找服务器。

按其名称添加经纪人服务器是 MetaTrader 5 的另一个新便利功能。在前一版本中,您必须要联系您的经纪人问明交易服务器的 IP 地址,或是下载一个专用客户端。现在,您只需输入该经纪人的名称即可。此系统会自动按指定名称查找服务器,并将其添加到列表:

按经纪人名称查找服务器

之后,您可以开立一个账户。

 

100 个最佳优化递次(第 1 部分)。 开发优化分析器

100 个最佳优化递次(第 1 部分)。 开发优化分析器

现代技术已深深扎根于金融交易领域,如今几乎无法想象若是没有它,我们能做什么。 然而,就在不久之前,交易还是手动进行的,并且有一套复杂的手语系统(现在很快被遗忘)来描述买入或卖出资产的份额。

个人电脑将网上在线交易带入我们的家庭,并迅速取代了传统的交易方式。 现在我们可以实时查看资产报价并制定相应的决策。 甚至于,市场行业中在线技术的出现导致手工交易者的行列以越来越快的速度减少。 现在,超过一半的交易是通过算法交易进行的,且值得一提的是 MetaTrader 5 是最方便的终端之一。

但尽管这个平台具有所有优点,我在此还是要略微说明应用程序的许多缺点。 本文所介绍的 EasyAndFastGUI 函数库是完全用 MQL5 编写的程序,该函数库旨在改进交易算法优化参数的选择。 它还为追溯交易分析和一般 EA 评估增加了新功能。

 

Your company is good:

        Recently experienced mt5 is indeed a big change, it is also very good! There are a few suggestions at present, I hope that mt5 can be optimized better and better:

PC version    

1 , cross cursor k line number \ points \ price, 30 \ 68 \ 1.07120 compliant with mt4 arrangement is more convenient and intuitive And when there is only the beginning of the crosshairs, extending the end of the point does not need to cross the line, ending with a cross point line is very cumbersome, poor vision, the current crosshair arrangement really is not easy and intuitive mt4, or hope Change back to the effect in mt4 , it is strongly recommended to change it. At present, other things can be accepted. The cross cursor is often used. The current arrangement display is really not used. This is why I have not changed to mt5. I have to change it. If you believe, there will be more mt4 customers turning to mt5.

2. Trading and account history    arrangement  

Order        time           Trading variety        Types of     Number of hands     price      Stop loss       Profit         price     Handling fee      Inventory fee       Profit     

   This sorting is relatively more logical from a logical order, intuitive and convenient!

3. After entering the stop loss in the new order, I hope to have the memory function. The last stop loss number can be remembered effectively, so you don't have to enter the stop loss number every time, it would be great.

          Mobile version, ipad version:  

1 , can change the background color, only black and white, long time, easy to fatigue, dry eyes, let customers customize the background color, or add a background color ( "hue" 85 , "saturation" 123 , "brightness 205 )

2. The crosshair of the mobile version can pull out the number of k lines, points,    It is really inconvenient to measure the mobile version.

3. The mobile version can increase the price warning. As in the computer version, if it can be realized, it would be great. I always miss the market and can't keep staring at the screen. It is convenient to have an alarm. It is highly recommended. .

             Mt5 is a brand new software, more customers are still accustomed to the operation and use of mt4, mt4 a lot of excellent design, can be directly copied to mt5, let customers use more familiar, speed up the transfer of mt4 customers to mt5.   The above are some suggestions for mt5 , I hope to be able to adopt, make mt5 better and better, get a bigger promotion as soon as possible, surpass and replace mt4 , become the world-renowned excellent software!    good luck!

 

论坛

MetaTrader 5平台Beta Build 1995:经济日历,MQL5应用程序服务以及R语言API

MetaQuotes Software Corp., 2019.02.15 10:34

更新的MetaTrader 5平台测试版已于2019年2月15日发布。我们邀请交易者加入测试,评估更新平台的功能,以及帮助开发者修正出现的错误。

若要将MetaTrader 5平台更新到build 1995,请转到帮助\检查桌面版更新\最新测试版:


新版MetaTrader 5平台的最终版将在公开测试版结束后发布。

新版将有以下变化:


MetaTrader 5 客户端 build 1995

  1. 程序端:完全修正了内置经济日历。

    经济日历是我们专有的解决方案。在这里,您将看到600+财经新闻和与美国、欧盟、日本、英国、加拿大、澳大利亚、中国等,全球13个大型经济体相关的指标。相关数据都是从开放资源实时收集。

    新版本具有更新的内容和高级的事件过滤器:按照时间、优先级、货币和国家来分类。

    从MQL5程序访问日历数据也将很快实现。




  2. 程序端:一种新的MQL5应用程序类型 —— 服务。这个新类型可以为程序端创建自定义价格源,即,可以实时提供来自外部系统的价格,如同直接在交易商交易服务器上实现。

    与EA交易、指标和脚本不同,服务并不链接特定的图表。这些应用程序在后台运行,当程序端启动时自动启动(除非被强制停止)。

    服务可以从“导航”窗口的一个新部分进行管理:





    如何创建服务
    若要创建服务模板,请使用对应的MQL5向导条目。服务有一个Onstart切入点,类似于脚本。在这个点,您可以使用网络函数来实现无限的数据接收和处理循环。

    如何启动服务
    要使用不同的参数运行多个EA交易或指标副本,您应该在不同图表上启动它们。在这种情况下,将创建不同的程序实例,然后彼此独立操作。服务没有链接到图表,因此形成了一种创建服务实例的特殊机制。

    从“导航”选择一个服务,并在快捷菜单中点击“添加服务”。这将打开一个标准的MQL5程序对话框,您可以在其中启用/禁用交易和对信号的访问,以及设置参数。




    可以使用对应的实例菜单启动和停止服务实例。要管理所有实例,请使用服务菜单。

  3. 程序端:学习方案已实施。

    现在,初学者可以很容易地学习如何使用这个平台。我们已经添加了100+关于平台主要功能的互动提示。

    • 这些提示可以在工具栏的进度条上直接显示,因而并不会分散用户的注意力。
    • 这些提示仅针对您在平台上从未执行的操作显示。
    • 所有提示都包含交互式链接,使用这些链接您可以导航到相关的界面元素。例如,可以从提示中直接打开带有所需程序的交易对话框或菜单。

    每当您执行对应操作以及继续学习时,进度条的填充区域将会增加。




  4. 程序端:交易账户历史记录可以显示为持仓。平台收集与持仓相关的成交数据(开仓、交易量增加、部分或全部平仓)并将这些信息组合成一条记录。因此,您可以访问持仓的详细信息:开仓时间和平仓时间、交易量、价格和结果。这种便利的显示格式现在也出现在可导出到文件的历史报告中。




  5. 程序端:通过使用R语言的应用程序,增加MetaTrader 5程序端数据的新API启用请求。

    我们准备了一个特定的MetaTraderR软件包。它包含用于R和MetaTrader 5程序端之间互动的DLL、文档和辅助r文件。我们正在CRAN存储库中完成软件包注册,之后就可以下载和安装。




    软件包可以使用特殊命令来安装:
    R CMD INSTALL --build MetaTraderR
    现提供以下与数据请求有关的命令:

    • MT5Initialize初始化并建立与MetaTrader 5程序端的连接。如果需要,可在命令执行期间启动程序端。
    • MT5Shutdown去初始化并与MetaTrader 5断开连接。
    • MT5Version获得MetaTrader 5程序端版本。
    • MT5TerminalInfo获得到交易商服务器的程序端连接的状态和参数(账号和服务器地址)。
    • MT5WaitTerminal为MetaTrader 5程序端连接到交易商服务器设置2分钟等待时间。
    • MT5CopyTicksFrom(symbol, from, count, flags)从指定日期开始复制指定报价数。该日期从1970.01.01开始,以毫秒指定。
    • MT5CopyTicksRange(symbol, from, to, flags)从指定周期内复制报价。这些日期从1970.01.01开始,以毫秒指定。
    • MT5CopyRatesFrom(symbol, timeframe, from, count)从指定日期开始复制指定的一分钟柱数量。该日期从1970.01.01开始,以秒指定。
    • MT5CopyRatesFromPos(symbol, timeframe, start_pos, count)从相对于最后柱形图的指定持仓复制一分钟柱形图。
    • MT5CopyRatesFromRange(symbol, timeframe, date_from, date_to)从指定周期内复制柱形图。这些日期从1970.01.01开始,以秒指定。

    支持的命令列表将进一步扩展。

  6. 程序端:优化用于反向平仓的Close By对话框。现在,这个对话框即使您有大量持仓也不会变慢。
  7. 程序端:修正了导致跳过数据的合成交易品种的计算错误。
  8. 程序端:当自定义交易品种被删除时,现在存储其报价和柱形图历史的文件也被删除。这可以避免在硬盘上积累不用的数据。
  9. MQL5:有关报价和柱形图历史的修正和操作速度的改进。
  10. MQL5:有关自定义交易品种的报价和柱形图更改函数CustomTicks*CustomRates*的修正和操作速度显著提高。
  11. MQL5:新增数据转化漏斗模型。

    CharArrayToStruct将uchar数组复制到POD结构。
    bool  CharArrayToStruct(
       void&         struct_object,    //结构
       const uchar&  char_array[],     // 数组
       uint          start_pos=0       // 数组中的开始位置
       );

    StructToCharArray将POD结构复制到uchar数组。
    bool  StructToCharArray(
       const void&  struct_object,     //结构
       uchar&       char_array[],      //数组
       uint         start_pos=0        // 数组中的开始位置
       );

  12. 添加MathSwap函数,用于更改ushort、uint和ulong值中的字节顺序。
    ushort MathSwap(ushort value);
    uint   MathSwap(uint   value);
    ulong  MathSwap(ulong  value);

  13. MQL5:添加网络函数,用于通过系统套接创建TCP与远程主机的连接:

    • SocketCreate创建具有指定标识的套接并返回其句柄
    • SocketClose关闭套接
    • SocketConnect连接到服务器,使用超时控制
    • SocketIsConnected检查套接当前是否已连接
    • SocketIsReadable获得可以从套接读取的字节数
    • SocketIsWritable检查在当前时间是否可以将数据写入该套接
    • SocketTimeouts为系统套接对象设置数据接收和发送超时
    • SocketRead从套接读取数据
    • SocketSend将数据写入套接
    • SocketTlsHandshake使用TLS Handshake协议启动与指定主机的安全TLS (SSL)连接
    • SocketTlsCertificate接收有关用于安全网络连接的证书的信息
    • SocketTlsRead读取来自安全TLS连接的数据
    • SocketTlsReadAvailable读取来自安全TLS连接的所有可用数据
    • SocketTlsSend使用TLS连接发送数据

    使用网络函数建立连接的主机地址必须明确添加到程序端设置中的可允许地址列表中。

    需要为网络函数的操作添加新错误代码

    • ERR_NETSOCKET_INVALIDHANDLE (5270):传递给函数的套接句柄无效
    • ERR_NETSOCKET_TOO_MANY_OPENED (5271):打开套接过多(最多128)
    • ERR_NETSOCKET_CANNOT_CONNECT (5272):连接远程主机时出错
    • ERR_NETSOCKET_IO_ERROR (5273):从套接发送/接收数据时出错
    • ERR_NETSOCKET_HANDSHAKE_FAILED (5274):安全连接建立错误 (TLS Handshake)
    • ERR_NETSOCKET_NO_CERTIFICATE (5272):没有用于安全连接的证书数据

  14. MQL5:添加用于字符串操作的新函数

    StringReserve为字符串保留指定大小的内存缓存区。
    bool  StringReserve(
       string&        string_var,          // 字符串
       uint           new_capacity         // 字符串的缓冲区大小
       );
    StringSetLength设置字符中指定的字符串长度。
    bool  StringSetLength(
       string&        string_var,          //字符串
       uint           new_length           //新字符串长度
       );

  15. MQL5:为数组操作添加新函数

    ArrayRemove从数组中移除从指定索引开始的指定元素数。
    bool  ArrayRemove(
       void&         array[],              // 任何类型的数组
       uint          start,                // 要开始移除的索引
       uint          count=WHOLE_ARRAY     // 元素数
       );
    ArrayInsert 从指定索引开始,向接收方数组插入源数组中指定元素数。
    bool  ArrayInsert(
       void&         dst_array[],          // 接收方数组
       const void&   src_array[],          // 源数组
       uint          dst_start,            // 在要插入的接收方数组位置的索引
       uint          src_start=0,          // 要开始复制的源数组索引
       uint          count=WHOLE_ARRAY     // 插入元素数
       );
    ArrayReverse从指定索引开始,在数组中反转指定元素数。
    bool  ArrayReverse(
       void&         array[],              // 任何类型的数组
       uint          start=0,              // 开始反转的索引
       uint          count=WHOLE_ARRAY     // 元素数
       );

  16. MQL5:新"uint count"参数已被添加到CustomRatesUpdateCustomRatesReplaceCustomTicksAddCustomTicksReplace函数中。它可以指定传递数组中要使用的元素数量。WHOLE_ARRAY值默认用于参数。这意味着将使用整个数组。
  17. MQL5:添加CustomBookAdd函数,以传递自定义交易品种的市场深度的状态。该函数可以推广市场深度,类似于价格从交易商服务器到达。
    int  CustomBookAdd(
       const string        symbol,            // 交易品种名称
       const MqlBookInfo&  books[]            // 带有DOM元素描述的数组
       uint                count=WHOLE_ARRAY  // 要使用的元素数
       );
  18. MQL5:添加CustomSymbolCreate函数重载。它可以基于现有交易品种创建一个自定义交易品种。创建之后,可以使用对应的函数编辑任何交易品种的属性。
    bool  CustomSymbolCreate(
       const string        symbol_name,       //自定义交易品种名称
       const string        symbol_path="",    // 将在其中创建交易品种的组名
       const string        symbol_origin=NULL // 将基于其创建自定义交易品种的交易品种名称
       );
    已创建自定义交易品种属性的复制源的交易品种名称在"symbol_origin"参数中指定。

  19. 将带有日期/时间的字符串转换为datetime值的StringToTime函数已经更新。现在,它支持以下日期格式:

    • yyyy.mm.dd [hh:mi]
    • yyyy.mm.dd [hh:mi:ss]
    • yyyymmdd [hh:mi:ss]
    • yyyymmdd [hhmiss]
    • yyyy/mm/dd [hh:mi:ss]
    • yyyy-mm-dd [hh:mi:ss]

  20. MQL5:ENUM_TERMINAL_INFO_INTEGER枚举中的TERMINAL_VPS新属性;它显示程序端正在MetaTrader虚拟主机服务器上运行 (MetaTrader VPS)。如果应用程序在主机服务器上运行,您可以禁用其所有可视化功能,因为虚拟服务器没有图形用户界面。
  21. MQL5:ENUM_SYMBOL_INFO_INTEGER枚举中的SYMBOL_EXIST新属性,意味着同名交易品种已存在。
  22. MQL5:修正使用模板函数预声明时的输入。
  23. MQL5:添加更改交易账户时重新初始化指标的功能。
  24. MQL5:优化StringSplit函数。
  25. MQL5:修正标准程序库操作中的错误。
  26. Tester:新增TesterStop函数 — 测试代理上EA交易的例行早期关闭。现在,达到指定数量的亏损交易、预设的下跌水平或任何其他标准后,您可以强制停止测试。

    使用此函数完成的测试被视为成功测试。函数调用之后,测试期间获得的交易历史和所有交易统计数据将被传递到程序端。

  27. Tester:禁止在实时报价模式下通过MQL5云网络测试和优化EA交易的功能。这个模式只能在本地代理和本地网络上使用。
  28. Tester:改进了可视化测试过程中的指标使用。现在,价格图表和指标线同步绘制,甚至包括最大的可视化速度。
  29. Tester:优化并显著增加了测试和优化的速度。
  30. Tester:修正了关于历史数据的指标调试。现在,可以正确地调试OnInit和OnDeinit指标函数。
  31. Tester:在测试多货币EA交易时,更快访问历史数据。
  32. Tester:修正在调试历史数据期间可视化测试器的偶尔冻结问题。
  33. Tester:当通过代理处理任务包时,更快启动优化传递。
  34. Tester:更改了向测试代理分发任务包的策略。任务包大小增加,从而大大减少网络操作上的资源损耗。
  35. Tester:更改了选项行为,允许使用本地、网络和云代理。现在,当您关闭这些选项时,代理将完成接收任务的处理,且不再向其提供新任务。在早期版本中,该行为类似于“禁用”命令,该命令可以立即停止代理操作。




  36. MetaEditor:在调试器中添加了对非ANSI字符的支持。现在,即使使用斯拉夫字母指定变量名称,表达式仍可以正确显示。
  37. 添加克罗地亚语的用户界面翻译。
  38. 文档已更新。

更新将通过实时更新系统提供。


 

论坛

JFD Brokers提供在MetaTrader 5上进行德国和荷兰规模最大公司的股票交易

MetaQuotes Software Corp., 2019.02.25 13:53

全球交易商都在扩展其提供的交易所产品。通过MetaTrader 5多元化金融交易平台,交易者可以投资全球多家大型企业的证券,例如Allianz(安联)、BMW(宝马)、Bayer(拜耳)、Siemens(西门子)、Heineken(喜力)和荷兰皇家壳牌。

除了之前可获得的美国股票投资组合,通过 MetaTrader 5,JFD 客户还可获得总数可达到 600支以上的实物股票交易,因此JFD所提供的产品已成为所有在线交易商中规模最大的一个交易商。此外,JFD Brokers正计划在年底前大幅度扩展投资组合并使其多样化。

JFD Brokers 成立于 2011 年,是增长最快的交易商之一,其业务遍及五大洲的60 多个国家。并且,在全球达到此等规模,只用了不足五年的时间。JFD Brokers按照 MiFID 的要求运营,受 CySEC 监管,是投资者赔偿基金(ICF)的成员。

Mr Lars Gottwik, JFD Brokers

Lars Gottwik先生,JFD Brokers

JFD Brokers创始人兼首席执行官Lars Gottwik先生表示:“将荷兰股票加入到我们的产品组合是我们期待长期为客户提供最相关的交易和投资产品愿望的一部分。再加上我们从2018年开始开始发行的德国股票, JFD定制的MetaTrader 5+ 解决方案正逐渐成为顶尖技术和受欢迎投资工具的独特组合。”


 

论坛

MQL5.com论坛信息多语言的自动翻译

MetaQuotes Software Corp., 2013.08.12 09:23

MQL5.com 论坛 现在具有任何信息自动翻译的功能。无论源语言是什么,您都可以翻译任何论坛信息,包括12种语言:阿拉伯语,印度尼西亚语,泰国语,西班牙语,意大利语,越南语,德语,韩语,中文,法语,葡萄牙语和日语。因此,您可以翻译任何语言的论坛信息。

Automatic Translation of MQL5.com Forum Messages from Any Language

用母语编写并以您喜欢的方式与MQL5.com参与者沟通。现在,大家将都可以理解您的意思。双击来翻译论坛的任何讨论并且以您的母语阅读它们。所以,您将能够理解任何人!

Automatic Translation of MQL5.com Forum Messages

论坛信息的编辑器也获得了一些新的功能。您以任何语言准备好您的信息后,您可以在编辑器中直接将它翻译成三种语言(英语,俄语或中文)界面中的一个。要做到这一点,点击编辑器面板上的翻译按钮。

Click Translate Button on the Editor's Panel

在MQL5.com论坛不再有语言障碍。现在,您能够找到与社区所有成员的共同语言!