Init()和DeInit()执行顺序 - 页 17 1...101112131415161718192021222324...28 新评论 Slava 2017.04.14 08:56 #161 fxsaber:事实证明,服务将拥有几乎所有的开机功能。OnInit, OnDeinit, OnTick(string),OnTimer,OnTrade,OnTradeTransaction,OnTester, OnTesterInit, OnTesterPass, OnTesterDeinit, OnBookEvent, OnChartEvent(long ChartID, ...),OnCalculate, ... 而如果你不需要指标缓冲区,也不想面对指标/顾问的拐杖,那就写进一种新的程序类型--服务,它不会受到(从MT以前的版本中延伸出来的)限制。正是如此。将不会有OnCalculate。还没有使用OnChartEvent的解决方案 fxsaber 2017.04.14 09:02 #162 Slawa:这就对了。 这些拐杖对很多人来说一定很烦人 关于交易、自动交易系统和测试交易策略的论坛 我无法从高TF中获得指标数据 Sergey Dzyublik, 2017.04.14 10:55 该用户有一个衡量市场 "强度 "的指标。 该指标在当前的时间框架和货币对上工作。 任务是在一张图表上显示8种流行货币的结果,并有机会选择一个独立的TF来进行显示。 用户在哪个TF中并不重要--它应该显示在参数中设置的那个结果。 通过所需的TF从其他货币加载流量的问题通过以下拐杖得到了解决。 for (int i = ArraySize(symbols_load) - 1; i >= 0; --i){ int counter = 0; int max_count = 10; while(counter < max_count){ RefreshRates(); double tmp_arr[]; int res = CopyClose(symbols_load[i] + Suffix, int(TF), 0, 3, tmp_arr); if (res == 3) break; RefreshRates(); ++counter; } }其中。symbols_load- 需要加载的货币列表后缀- 货币对名称的可能前缀TF- 所需的时间框架是否可以为某一特定成交量的历史数据(柱状和点状)添加订阅/订购?这样,在服务处总会有一个一定大小的给定符号的缓存(新鲜的条形图和点阵图)。这样一来,比如说,写市场筛选报告就会容易得多。 Yuriy Zaytsev 2017.04.14 09:24 #163 Slawa:指标的使用应符合其预期目的。换句话说,在改变图表 符号周期时,OnInit和OnDeinit指标的执行顺序不应该困扰任何人。这种方法说明了很多问题。 所以,我们应该接受它,主要的是要意识到它。 Yuriy Zaytsev 2017.04.14 09:27 #164 Slawa:没有。再读一下这些指标是什么。阿克丽斯。科尔比。询问Yandex公司的市场指标是什么。在MT3中,当我们引入自定义指标的概念时,我们允许对图表上的对象进行操作,因为只有2个指标缓冲区。让我们创造一个小小的历史。起初有FXCharts,我没有赶上,因为我在2002年10月才加入公司。然后是MetaTrader。我加入公司是为了开发MQL II(FXCharts已经有一个交易策略语言)。当我们做MQL II和EA时,我们把名字改为MetaTrader 2。当我们允许编写自定义指标时,MetaTrader 3成为第三个指标。然后是MetaTrader 4和MQL4。自定义指标得到了用8个指标缓冲器操作的机会。保留了在图表上处理对象的可能性。但由于这些指标是在界面线程中计算的,因此很少有人滥用对象的工作。而现在我们有了MT5。架构是完全不同的,但在使用图表上的图形对象的操作机会方面,我们是MT4的人质。是的,我们是Stakhanovites,我们也像英雄一样,从指标中增加了几乎无限的图表管理的可能性。我们已经到了。插图--16页的讨论,什么都没有。让我们继续讨论服务服务文件夹已经出现在MQL5编辑器中,但目前还不清楚如何使用这个工具。https://www.mql5.com/ru/forum/190129 Services , новый функциона в архитеркуте MT5, похороны MT4 не за горой. www.mql5.com Хотелось бы подробней с примерами использования обсудить новый функционал... Stanislav Korotky 2017.04.14 11:27 #165 Slawa:指标的使用应符合其预期目的。换句话说,当改变图表 的符号周期时,指标的OnInit和OnDeinit的顺序不应该困扰任何人。 而为什么所有的争论都转移到了图形对象上?还有其他全局资源,如全局变量、文件等。(如果"在图表 符号周期变化时执行指标的OnInit和OnDeinit的顺序不应该困扰任何人",那么,它们能否根据其目的用于指标中?再次注意,现在内核的实现方式是,顺序应该让MQL程序员担心,以避免OnInit/Deinit调用顺序的不确定性造成的耙子。为了不让MQL担心,你需要一个内部负责解决不确定性的内核。 [删除] 2017.04.14 11:30 #166 Stanislav Korotky: 为什么整个争论会落在图形对象上?还有其他全局资源,如全局变量、文件等(它们可以在指标中使用吗?(如果"在图表 符号周期变化时执行指标的OnInit和OnDeinit的顺序不会困扰任何人",那么,它们是否可以根据其目的用于指标中?再次注意,现在内核的实现方式是,顺序应该让MQL程序员担心,以避免OnInit/Deinit调用顺序的不确定性造成的耙子。为了不让MQL担心,你需要一个内部负责解决不确定性的内核。 这里有一个关于文件的好问题。如果有些东西需要在去初始化时被重置,并在随后的初始化中被读取,可能会有一些问题。 fxsaber 2017.04.14 11:34 #167 Stanislav Korotky:服务或在一个图表上运行多个EA的能力怎么能不完全涵盖我们所讨论的问题?想象一下,代替线程中提到的指标,会有一个正在运行的服务,其中包含一个完全计算的部分指标。它将把指标放在图表上,使数据可视化,由指标缓冲区 中的服务计算出来。指标应该根据其预期目的来使用,而不是因为有几个指标要在一个图表中推出,就把它们变成了通用的东西。这样,你就可以开始抱怨指标中的OrderSend禁令了。 [删除] 2017.04.14 11:36 #168 fxsaber:服务或在一个图表上运行多个EA的能力怎么能不完全涵盖我们所讨论的问题?想象一下,代替线程中提到的指标,会有一个正在运行的服务,其中包含一个完全计算的部分指标。它将把指标放在图表上,这将使该服务在指标缓冲区 计算的数据可视化。 也就是说,你将能够通过该服务创建一个指标? fxsaber 2017.04.14 11:37 #169 Alexey Kozitsyn: 也就是说,是否可以通过该服务创建一个指标? 这已经可以从EA中实现(有一些限制)。 [删除] 2017.04.14 11:40 #170 fxsaber: 从EA来看,这仍然是可能的(有一些限制)。 你是说使用拐杖?我可以给你举个例子吗? 1...101112131415161718192021222324...28 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
事实证明,服务将拥有几乎所有的开机功能。OnInit, OnDeinit, OnTick(string),OnTimer,OnTrade,OnTradeTransaction,OnTester, OnTesterInit, OnTesterPass, OnTesterDeinit, OnBookEvent, OnChartEvent(long ChartID, ...),OnCalculate, ...
而如果你不需要指标缓冲区,也不想面对指标/顾问的拐杖,那就写进一种新的程序类型--服务,它不会受到(从MT以前的版本中延伸出来的)限制。
正是如此。
将不会有OnCalculate。
还没有使用OnChartEvent的解决方案
这就对了。
关于交易、自动交易系统和测试交易策略的论坛
我无法从高TF中获得指标数据
Sergey Dzyublik, 2017.04.14 10:55
该用户有一个衡量市场 "强度 "的指标。
该指标在当前的时间框架和货币对上工作。
任务是在一张图表上显示8种流行货币的结果,并有机会选择一个独立的TF来进行显示。
用户在哪个TF中并不重要--它应该显示在参数中设置的那个结果。
通过所需的TF从其他货币加载流量的问题通过以下拐杖得到了解决。
其中。
symbols_load- 需要加载的货币列表
后缀- 货币对名称的可能前缀
TF- 所需的时间框架
是否可以为某一特定成交量的历史数据(柱状和点状)添加订阅/订购?这样,在服务处总会有一个一定大小的给定符号的缓存(新鲜的条形图和点阵图)。
这样一来,比如说,写市场筛选报告就会容易得多。
指标的使用应符合其预期目的。
换句话说,在改变图表 符号周期时,OnInit和OnDeinit指标的执行顺序不应该困扰任何人。
这种方法说明了很多问题。
所以,我们应该接受它,主要的是要意识到它。
没有。
再读一下这些指标是什么。阿克丽斯。科尔比。询问Yandex公司的市场指标是什么。
在MT3中,当我们引入自定义指标的概念时,我们允许对图表上的对象进行操作,因为只有2个指标缓冲区。
让我们创造一个小小的历史。起初有FXCharts,我没有赶上,因为我在2002年10月才加入公司。然后是MetaTrader。我加入公司是为了开发MQL II(FXCharts已经有一个交易策略语言)。当我们做MQL II和EA时,我们把名字改为MetaTrader 2。当我们允许编写自定义指标时,MetaTrader 3成为第三个指标。
然后是MetaTrader 4和MQL4。自定义指标得到了用8个指标缓冲器操作的机会。保留了在图表上处理对象的可能性。但由于这些指标是在界面线程中计算的,因此很少有人滥用对象的工作。
而现在我们有了MT5。架构是完全不同的,但在使用图表上的图形对象的操作机会方面,我们是MT4的人质。是的,我们是Stakhanovites,我们也像英雄一样,从指标中增加了几乎无限的图表管理的可能性。我们已经到了。插图--16页的讨论,什么都没有。
让我们继续讨论服务
服务文件夹已经出现在MQL5编辑器中,但目前还不清楚如何使用这个工具。https://www.mql5.com/ru/forum/190129
指标的使用应符合其预期目的。
换句话说,当改变图表 的符号周期时,指标的OnInit和OnDeinit的顺序不应该困扰任何人。
为什么整个争论会落在图形对象上?还有其他全局资源,如全局变量、文件等(它们可以在指标中使用吗?(如果"在图表 符号周期变化时执行指标的OnInit和OnDeinit的顺序不会困扰任何人",那么,它们是否可以根据其目的用于指标中?再次注意,现在内核的实现方式是,顺序应该让MQL程序员担心,以避免OnInit/Deinit调用顺序的不确定性造成的耙子。为了不让MQL担心,你需要一个内部负责解决不确定性的内核。
服务或在一个图表上运行多个EA的能力怎么能不完全涵盖我们所讨论的问题?
想象一下,代替线程中提到的指标,会有一个正在运行的服务,其中包含一个完全计算的部分指标。它将把指标放在图表上,使数据可视化,由指标缓冲区 中的服务计算出来。
指标应该根据其预期目的来使用,而不是因为有几个指标要在一个图表中推出,就把它们变成了通用的东西。这样,你就可以开始抱怨指标中的OrderSend禁令了。
服务或在一个图表上运行多个EA的能力怎么能不完全涵盖我们所讨论的问题?
想象一下,代替线程中提到的指标,会有一个正在运行的服务,其中包含一个完全计算的部分指标。它将把指标放在图表上,这将使该服务在指标缓冲区 计算的数据可视化。
也就是说,是否可以通过该服务创建一个指标?
从EA来看,这仍然是可能的(有一些限制)。