MetaTrader5 终端的标准交付包括44 种可安装在图表上的各种图形对象:顶部菜单=>插入=>对象。
其中33 种具有锚点:时间 + 价格。
对于这 33 种图形对象,本指标可在 "专家 "选项卡中显示:所选对象的名称 + 其类型 + 其锚点的时间 + 锚点的价格标记 + 价格锚点的小数位数。
在这种情况下,无论图形对象是在主图表窗口还是指标子窗口中,小数点位数都可能与主窗口中的不同。
要从指标中获取图表中任何对象的信息,只需用鼠标点击该对象即可。
至于其他 11 种对象(没有价格锚点):点击它们时,该指标仅在日志的 "专家 "选项卡中显示这些对象的名称及其类型。并附带说明该指标不适用于此类对象。
MetaTrader 5 终端和 MQL5 编程语言为我们(用户)提供了大量不同的选择。随着时间的推移,终端和语言的功能也在不断增加。当然,这些新增功能的 "重要程度 "各不相同。除了 "耀眼的 "和 "突出的",自然也会增加 "不起眼的"、"小巧的"、"不引人注意的",但仍然有用的功能。
例如,最近在终端上添加的 "适度 "便利之一,但对我来说并不是唯一的便利,就是可以删除 "专家 "选项卡上的列:通过右键单击鼠标并选择所需的菜单行:Columns*/ 来 调用菜单,可以删除 "时间"和 "来源"这两栏或其中任何一栏。这似乎是一件 "小事",但如果没有它,"就会缺少一些东西"。例如,这使得可视化选项卡中显示的信息和/或从中复制信息信息以用于其他各种用途变得更加方便。该功能(作为其他各种功能的一部分)正式出现于第 1485 版 终端。与此同时,"专家 "选项卡中的数据显示顺序也发生了变化。
由于之前 "id_digits_object "指标在 "专家 "选项卡中显示数据时考虑的是之前的显示顺序,因此我在更新该指标时考虑了当前的显示顺序。同时,我还对代码进行了其他更新。除其他外,我还阅读、检查并应用了ArrayResize() 函数的便利功能。第 1485 版终端的官方发布稿 介绍了该函数的新增功能:
...当传递值 -1 作为 reserve_size 参数时,如果不增加数组大小,函数将释放未使用(保留)的内存。在 reserve_size=-1 的情况下,将数组大小改为 0 相当于调用 ArrayFree。新行为允许您优化 MQL5 程序中的内存使用。
虽然在指标的更新代码中,你也会发现 ArrayFree() 的 使用,但这是因为在这些地方,我发现选择并写入ArrayFree 比命名并传递参数给我的函数(包括指标中的ArrayResize)更方便。在我的长篇大论中,ArrayResize 是一种组合应用:ArrayResize+ArraySetAsSeris。/*<= 让我马上告诉你,ArraySetAsSeris 只有在要设置的大小大于 1 时才起作用。因此,如果要设置的大小 = 0 或 1,ArrayResize 之后就不会激活ArraySetAsSeris。
有关该指标的其他更改,请参阅主要说明末尾的指标页面。更新版本(1.11)已可下载。
另一个更新可供下载。
新功能
更新了用于确定指标小数位数的函数代码(其基本工作原理保持不变,但代码更加紧凑)。
同时更新了整个指标的代码。
时光荏苒,世事变迁。
我将在2016.12.12 的帖子中补充以下说明:
1. 我在上面给出了终端 1485 版本的官方发布链接。该链接指向论坛主题,而论坛主题现已不活跃。
您可以在这里查看 MetaTrader 5 的新内容:https://www.metatrader5.com/ru/releasenotes。 在这里,您可以找到新版本的新内容描述,以及桌面、移动和网络平台的更新历史。这确实比在论坛上搜索主题更方便。
大约三个月前,我找到了一种从终端直接进入该页面的便捷方法。为了以防万一,对于那些还不知道的人,这里有一个方法:终端顶部菜单-帮助-新 功能
2 在上述网站上,我发现 MetaTrader 5 中的对象类型不是我上面写的 44 种,而是 46 种:https://www.metatrader5.com/ru/terminal/help/charts_analysis/objects。
但我并不需要 因此而替换我正在讨论的指标的代码。
id_digits_object:
作者: Dina Paches