错误、漏洞、问题 - 页 3029 1...302230233024302530263027302830293030303130323033303430353036...3184 新评论 mktr8591 2021.05.28 14:44 #30281 Igor Makanu:这不应该在指标中正确工作。如果我没有弄错的话,在帮助中,有一个关于所有TFs的分页数据的脚本明细,应该有一个警告,即不能以这种方式从指标中请求历史数据,因为指标是异步工作的。建议在你绑定句柄后使用BarsCalculated()一次。UPD: 历史分页的脚本和解释为什么它在指标中不起作用:https://www.mql5.com/ru/docs/series/timeseries_access 在这篇文章中,我们只写到,在一个指数中请求时间序列的数据(或在一个循环中 请求SeriesInfoInteger) 是不可取的。 "回顾一下,发送更新时间序列的请求 与调用更新的指标 的 周期相同 是非常不可取的。使用与指标相同的符号周期的请求是不可取的,因为历史数据的更新是在指标工作的同一线程中进行。因此,出现楔子的可能性很大。" 如果我们简单地要求SeriesInfoInteger,并且在错误的情况下,退出OnCalculate,那么楔子怎么会发生呢? mktr8591 2021.05.28 14:50 #30282 给大家的问题。 https://www.mql5.com/ru/docs/series/timeseries_access 上 的帮助说。 "当调用从时间序列中复制任何数据的函数时,你应该记住, 开始参数 (开始复制价格数据的条数)必须总是在可用的终端历史中。 如果我们只有100个柱子,从指数为500的柱子开始,试图复制300个柱子是没有意义的。这个请求将被视为无效,不会被处理,即不会从交易服务器加载历史记录。 CopyTime将给出-1,这很清楚,但是--它是否会自己启动建立时间序列的过程/从服务器条形图到第800条(500+300)的分页? 请告知。 Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным www.mql5.com Организация доступа к данным - Доступ к таймсериям и индикаторам - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 Andrey Dik 2021.05.28 14:54 #30283 mktr8591:1.这篇文章只是说从时间序列中请求数据(或在一个循环中 请求SeriesInfoInteger) 是不可取的。"回顾一下,发送更新时间序列的请求, 与引起更新的指标 具有 相同的周期 是非常不可取的。使用与指标相同的符号周期的请求是不可取的,因为历史数据的更新是在指标工作的同一线程中进行。因此,出现楔子的可能性很大。"2.如果你简单地要求SeriesInfoInteger,并将OnCalculate留在false的情况下,楔子会如何发生? 1.是的,因为你不能拖累指标的线程,因为请求同步状态会导致历史记录被交换,而你不能等待。 2.对。如果数据没有准备好,它将直接退出oncalc,同步终端将开始,但指标的流量不会被抑制。只有当数据准备好了,并且所要求的指标被完全计数后,下一个oncalc才会被完全执行,而不需要刹车。上面添加的打印结果显示,所要求的指标并不总是准备好的,但我们可以允许只做一次新的条形图,而不是在每一个tick上,以实现所有指标的 最快计算。 mktr8591 2021.05.28 15:00 #30284 Andrey Dik: 谢谢你。 另外,请看我的问题:https://www.mql5.com/ru/forum/1111/page3028#comment_22557528 Ошибки, баги, вопросы 2021.05.28www.mql5.com Общее обсуждение: Ошибки, баги, вопросы Alexey Viktorov 2021.05.28 15:02 #30285 Andrey Dik: 见上面的代码。 修正你的代码,增加一个打印输出 if(SeriesInfoInteger(Symbol(), OldTF, SERIES_SYNCHRONIZED)) { if(iBars(Symbol(), OldTF) != BarsCalculated(Handle)) { Print("Баров ", iBars(Symbol(), OldTF)); Print("посчитано", BarsCalculated(Handle)); return 0; } } else { Print("Период ", OldTF, " не синхронизирован."); return 0; } 当你看到你的蟑螂时,卷起你的显示器,并把它推到...你知道的地方。 Andrey Dik 2021.05.28 15:08 #30286 mktr8591:谢谢你。另外,请看我的问题:https://www.mql5.com/ru/forum/1111/page3028#comment_22557528 我不是100%确定(需要检查),一旦你确定请求的日期比服务器上历史上的第一个日期更新鲜,你就可以请求数据,历史将被调换。 mktr8591 2021.05.28 15:11 #30287 Andrey Dik:我不是100%确定(需要检查),通过确保请求的日期比服务器上历史上的第一个日期更新鲜,数据可以被请求,历史将被交换。 谢谢。 我是在问我的另一个帖子,再次链接:https://www.mql5.com/ru/forum/1111/page3028#comment_22557528 Ошибки, баги, вопросы 2021.05.28www.mql5.com Общее обсуждение: Ошибки, баги, вопросы Andrey Dik 2021.05.28 15:16 #30288 Alexey Viktorov:修正你的代码,增加一个打印输出当你看到你的蟑螂时,卷起你的显示器,并把它推到...你知道的地方。 你在证明我的观点,同志。 Andrey Dik 2021.05.28 15:26 #30289 mktr8591:谢谢你。 我是在问我的另一个帖子,再次链接:https://www.mql5.com/ru/forum/1111/page3028#comment_22557528我不太理解你的代码。在下一次调用OnCalculate时,"return 0; "之后应该发生什么? 我们返回0,从而说明我们还没有计算出任何东西,并且在下一个交易日,prev kalk将不会被增加1。 也就是说,我们将在开始向老龄化国家请求数据的那一栏,直到我们返回(rate_total)为止。 [删除] 2021.05.28 15:31 #30290 Andrey Dik:你证明了我的观点,同志。 1.谢谢大家--我对指标有了更多的了解 )))) 2)安德鲁,如果有人不理解你的想法(包括我),这只意味着一件事--你没有正确地画出画面!你的想法是什么?更确切地说--你以这样的方式来画它,很多人都不明白......。 1...302230233024302530263027302830293030303130323033303430353036...3184 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
这不应该在指标中正确工作。
如果我没有弄错的话,在帮助中,有一个关于所有TFs的分页数据的脚本明细,应该有一个警告,即不能以这种方式从指标中请求历史数据,因为指标是异步工作的。
建议在你绑定句柄后使用BarsCalculated()一次。
UPD: 历史分页的脚本和解释为什么它在指标中不起作用:https://www.mql5.com/ru/docs/series/timeseries_access
在这篇文章中,我们只写到,在一个指数中请求时间序列的数据(或在一个循环中 请求SeriesInfoInteger) 是不可取的。
"回顾一下,发送更新时间序列的请求 与调用更新的指标 的 周期相同 是非常不可取的。使用与指标相同的符号周期的请求是不可取的,因为历史数据的更新是在指标工作的同一线程中进行。因此,出现楔子的可能性很大。"
如果我们简单地要求SeriesInfoInteger,并且在错误的情况下,退出OnCalculate,那么楔子怎么会发生呢?
给大家的问题。
https://www.mql5.com/ru/docs/series/timeseries_access 上 的帮助说。
"当调用从时间序列中复制任何数据的函数时,你应该记住, 开始参数 (开始复制价格数据的条数)必须总是在可用的终端历史中。 如果我们只有100个柱子,从指数为500的柱子开始,试图复制300个柱子是没有意义的。这个请求将被视为无效,不会被处理,即不会从交易服务器加载历史记录。
CopyTime将给出-1,这很清楚,但是--它是否会自己启动建立时间序列的过程/从服务器条形图到第800条(500+300)的分页?
请告知。
1.这篇文章只是说从时间序列中请求数据(或在一个循环中 请求SeriesInfoInteger) 是不可取的。
"回顾一下,发送更新时间序列的请求, 与引起更新的指标 具有 相同的周期 是非常不可取的。使用与指标相同的符号周期的请求是不可取的,因为历史数据的更新是在指标工作的同一线程中进行。因此,出现楔子的可能性很大。"
2.如果你简单地要求SeriesInfoInteger,并将OnCalculate留在false的情况下,楔子会如何发生?
1.是的,因为你不能拖累指标的线程,因为请求同步状态会导致历史记录被交换,而你不能等待。
2.对。如果数据没有准备好,它将直接退出oncalc,同步终端将开始,但指标的流量不会被抑制。只有当数据准备好了,并且所要求的指标被完全计数后,下一个oncalc才会被完全执行,而不需要刹车。上面添加的打印结果显示,所要求的指标并不总是准备好的,但我们可以允许只做一次新的条形图,而不是在每一个tick上,以实现所有指标的 最快计算。
谢谢你。
另外,请看我的问题:https://www.mql5.com/ru/forum/1111/page3028#comment_22557528
Andrey Dik:
见上面的代码。
修正你的代码,增加一个打印输出
当你看到你的蟑螂时,卷起你的显示器,并把它推到...你知道的地方。
谢谢你。
另外,请看我的问题:https://www.mql5.com/ru/forum/1111/page3028#comment_22557528
我不是100%确定(需要检查),一旦你确定请求的日期比服务器上历史上的第一个日期更新鲜,你就可以请求数据,历史将被调换。
我不是100%确定(需要检查),通过确保请求的日期比服务器上历史上的第一个日期更新鲜,数据可以被请求,历史将被交换。
谢谢。
我是在问我的另一个帖子,再次链接:https://www.mql5.com/ru/forum/1111/page3028#comment_22557528
修正你的代码,增加一个打印输出
当你看到你的蟑螂时,卷起你的显示器,并把它推到...你知道的地方。
你在证明我的观点,同志。
谢谢你。
我是在问我的另一个帖子,再次链接:https://www.mql5.com/ru/forum/1111/page3028#comment_22557528
我们返回0,从而说明我们还没有计算出任何东西,并且在下一个交易日,prev kalk将不会被增加1。
也就是说,我们将在开始向老龄化国家请求数据的那一栏,直到我们返回(rate_total)为止。
你证明了我的观点,同志。
1.谢谢大家--我对指标有了更多的了解 ))))
2)安德鲁,如果有人不理解你的想法(包括我),这只意味着一件事--你没有正确地画出画面!你的想法是什么?更确切地说--你以这样的方式来画它,很多人都不明白......。