错误、漏洞、问题 - 页 1548 1...154115421543154415451546154715481549155015511552155315541555...3184 新评论 --- 2016.04.06 07:26 #15471 comp: 那么你就不能通过事件中断计算。好吧,那就换个角度看吧。你可以人为地使之平行化--通过在图表上放置第二个指标。而通过从两者中访问GlobalVariableSetOnCondition。 [删除] 2016.04.06 07:29 #15472 o_O:好吧,那就换个角度看吧。你可以人为地使之平行化--通过将第二个指标放在图表上。而通过从两者中访问GlobalVariableSetOnCondition。 我不明白。 --- 2016.04.06 08:13 #15473 comp: 我不明白。第二个指标是一个信号器,它从ChartEvent向主指标发送事件,作为一个自定义指标+改变全局变量 的状态,例如以ms为单位的时间。在主指标中,你捕捉到这个事件并开始计算,+查看全局变量以确保它的ms时间与你开始计算的时间相同。如果其中的时间发生了变化,那么一个新的事件已经到来--你就打破了你当前的计算。像这样。---或者你可以简单地在每个图表事件中改变gp中的ms,而只在主指标中控制它。一般来说--第二个指标会并行化 paylesss 2016.04.06 11:52 #15474 你好!给一个新手一点帮助。我似乎无法掌握OnBookEvent事件的处理方法。如果你从onTick()调用这个事件,一切都能正常工作。如果onTick()是空的,那么就没有任何作用。我不明白什么,OnBookEvent是在玻璃发生变化时被调用的,也就是说,它是一个单独的事件处理程序,本质上与onTick()在发生刻度时被调用是一样的。为什么它不工作?这就是它的工作方式。那么,它是如何工作的呢?它是在发生打勾时打印 "任何东西",而不是在杯子里有变化时打印。例如,出价量发生了变化,在某个价格上,杯中变化的OnBookEvent处理程序应该被调用 ,但它并没有发生。如果onTick()留空,它甚至不会打印任何东西。int OnInit(){如果!MarketBookAdd("RTS-6.16"){Print("Error",GetLastError())。}否则{Print("Done")。}空白的OnDeinit(const int reason)。{MarketBookRelease("RTS-6.16")。}空白的OnTick(){OnBookEvent(_Symbol)。}空白的OnBookEvent(const string &symbol)。{MqlBookInfo book[];MarketBookGet("RTS-6.16", book)。如果(ArraySize(book) == 0){printf("Failed load market book price.原因:" + (string)GetLastError())。返回。}Print("Anything")。} Errors, bugs, questions 新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 初学者的问题 MQL4 MT4 MetaTrader paylesss 2016.04.06 13:22 #15475 刚在其他乐器上试过,都能用!!!!这怎么可能呢?它只在rts上不工作!!!。 paylesss 2016.04.06 14:18 #15476 问题解决了,它自己在工作了! Alexey Viktorov 2016.04.06 15:51 #15477 https://www.mql5.com/ru/docs/constants/structures/mqltraderequest 帮助中的错误SL & TP Modification 修改StopLoss和/或TakeProfit水平的交易指令。4个字是必须的。 -行动-符号-sl-tp-位置 添加了字段 ,但需要填写的字段数仍为4个。 Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса www.mql5.com Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 Alexey Volchanskiy 2016.04.06 16:58 #15478 Alexey Viktorov:帮助中的错误 https://www.mql5.com/ru/docs/constants/structures/mqltraderequest 增加了字段 位置,但需要填写的字段数仍为4个。 阿列克谢,在这里写没有意义,你必须向服务台发出请求。同时,也会有+的评级 ) Alexey Viktorov 2016.04.06 17:37 #15479 Alexey Volchanskiy: 阿列克谢,在这里写信是没有意义的,你必须向Servisdek发送请求。同时,它将被+到评级 ) 我太老了,不能再追评了: ))))他们不会解决这个问题,也不需要解决。 [删除] 2016.04.07 11:02 #15480 o_O:你把第二个指标作为一个信号器,从ChartEvent+改变全局变量 的状态(例如,以ms为单位的时间)向主指标发送一个自定义事件。在主指标中,你捕捉到这个事件并开始计算,+查看全局变量以确保它的ms时间与你开始计算的时间相同。如果其中的时间发生了变化,这意味着一个新的事件已经到来--而你打破了你目前的计算。像这样。---或者你可以使用信号器在每个图表事件中改变gp中的ms,并且只在主指标中控制它。一般来说--第二个指标会并行化明白了,谢谢。不幸的是,这个解决方案只能在专家顾问中发挥作用(在专家顾问中必须中断计算)。这在指标中是行不通的,因为在图表上调用指标不会创建一个平行的图表队列,它会进入同一个事件队列,甚至不是针对某个特定图表,而是针对这个符号的所有图表。我如何将指标作为MQ5资源而不是EX5资源? 1...154115421543154415451546154715481549155015511552155315541555...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
那么你就不能通过事件中断计算。
好吧,那就换个角度看吧。
你可以人为地使之平行化--通过在图表上放置第二个指标。
而通过从两者中访问GlobalVariableSetOnCondition。
好吧,那就换个角度看吧。
你可以人为地使之平行化--通过将第二个指标放在图表上。
而通过从两者中访问GlobalVariableSetOnCondition。
我不明白。
第二个指标是一个信号器,它从ChartEvent向主指标发送事件,作为一个自定义指标+改变全局变量 的状态,例如以ms为单位的时间。
在主指标中,你捕捉到这个事件并开始计算,+查看全局变量以确保它的ms时间与你开始计算的时间相同。
如果其中的时间发生了变化,那么一个新的事件已经到来--你就打破了你当前的计算。
像这样。
---
或者你可以简单地在每个图表事件中改变gp中的ms,而只在主指标中控制它。
一般来说--第二个指标会并行化
你好!给一个新手一点帮助。我似乎无法掌握OnBookEvent事件的处理方法。
如果你从onTick()调用这个事件,一切都能正常工作。如果onTick()是空的,那么就没有任何作用。我不明白什么,OnBookEvent是在玻璃发生变化时被调用的,也就是说,它是一个单独的事件处理程序,本质上与onTick()在发生刻度时被调用是一样的。为什么它不工作?
这就是它的工作方式。那么,它是如何工作的呢?它是在发生打勾时打印 "任何东西",而不是在杯子里有变化时打印。例如,出价量发生了变化,在某个价格上,杯中变化的OnBookEvent处理程序应该被调用 ,但它并没有发生。如果onTick()留空,它甚至不会打印任何东西。
int OnInit()
{
如果!MarketBookAdd("RTS-6.16")
{
Print("Error",GetLastError())。
}
否则
{
Print("Done")。
}
空白的OnDeinit(const int reason)。
{
MarketBookRelease("RTS-6.16")。
}
空白的OnTick()
{
OnBookEvent(_Symbol)。
}
空白的OnBookEvent(const string &symbol)。
{
MqlBookInfo book[];
MarketBookGet("RTS-6.16", book)。
如果(ArraySize(book) == 0)
{
printf("Failed load market book price.原因:" + (string)GetLastError())。
返回。
}
Print("Anything")。
}
https://www.mql5.com/ru/docs/constants/structures/mqltraderequest 帮助中的错误
SL & TP Modification
修改StopLoss和/或TakeProfit水平的交易指令。4个字是必须的。
-行动
-符号
-sl
-tp
-位置
帮助中的错误 https://www.mql5.com/ru/docs/constants/structures/mqltraderequest
增加了字段 位置,但需要填写的字段数仍为4个。阿列克谢,在这里写信是没有意义的,你必须向Servisdek发送请求。同时,它将被+到评级 )
你把第二个指标作为一个信号器,从ChartEvent+改变全局变量 的状态(例如,以ms为单位的时间)向主指标发送一个自定义事件。
在主指标中,你捕捉到这个事件并开始计算,+查看全局变量以确保它的ms时间与你开始计算的时间相同。
如果其中的时间发生了变化,这意味着一个新的事件已经到来--而你打破了你目前的计算。
像这样。
---
或者你可以使用信号器在每个图表事件中改变gp中的ms,并且只在主指标中控制它。
一般来说--第二个指标会并行化
明白了,谢谢。不幸的是,这个解决方案只能在专家顾问中发挥作用(在专家顾问中必须中断计算)。这在指标中是行不通的,因为在图表上调用指标不会创建一个平行的图表队列,它会进入同一个事件队列,甚至不是针对某个特定图表,而是针对这个符号的所有图表。
我如何将指标作为MQ5资源而不是EX5资源?