Mt4结束支持。 - 页 35 1...282930313233343536373839404142...47 新评论 Vitaly Muzichenko 2017.09.11 20:44 #341 Реter Konow:这个函数的变体完全没有New_bar()函数。这是我提供的最节省资源的选择。此外,它还有另一个优点:在定时器或tick事件上执行用户代码时,新的bar事件都会被保存。以前,你只能得到这个事件一次,而且这个标志是通过New_bar()清除的。现在,该特殊函数每分钟清除一次 "event_new_bar[][]"数组,并且只在执行自定义代码后调用。自定义函数可以直接访问数组并检索新的酒吧事件信息,所有的代码都是在定时器或滴答事件上执行的。这就更加节省了资源。最后一个代码也不起作用,花了7分钟才打印出来。//+------------------------------------------------------------------+ //Пример использования событий нового бара в пользовательском функционал. //Просто обращаемся к глобальному массиву "События_нового_бара[a1][a2]" напрямую //и используем событие в наших торговых алгоритмах. //+------------------------------------------------------------------+ void Моя_стратегия_торговли_на_новых_барах() { for(int a1 = 0; a1 < Всех_символов; a1++) { string Этот_символ = Символы[a1]; //---------------------------------- for(int a2 = 0; a2 < Всех_таймфреймов; a2++) { bool Новый_бар = События_нового_бара[a1][a2]; int Этот_таймфрейм = Таймфреймы[a2]; //---------------------------------- if(Новый_бар && Этот_символ == "EURUSD" && Этот_таймфрейм == PERIOD_M5) { Print("M5"); } //---------------------------------- if(Новый_бар && Этот_символ == "EURUSD" && Этот_таймфрейм == PERIOD_M1) { Print("M1"); } //---------------------------------- } } } Реter Konow 2017.09.11 21:13 #342 Vitaly Muzichenko:最后一个代码也不起作用,花了7分钟才打印出来。这个函数应该从OnTick或从一个定时器中调用。可能有一个小问题,但我还没能找到它。自己看一下代码,看看有没有错误。这就像3戈比那么简单。而且也有评论。如果你不明白,请问。我有其他事情要做。 Nikolai Semko 2017.09.11 21:38 #343 Реter Konow:这个函数的变体根本就没有New_bar()函数。这是我提供的最节省资源的选择。此外,它还有另一个优点:在定时器或tick事件上执行用户代码时,新的bar事件都会被保存。以前,你只能得到这个事件一次,而且这个标志是通过New_bar()清除的。现在,该特殊函数每分钟清除一次 "event_new_bar[][]"数组,并且只在执行自定义代码后调用。自定义函数可以直接访问数组并检索新的酒吧事件信息,所有的代码都是在定时器或滴答事件上执行的。资源得到了更大的节省。我不理解这种幽默。为什么 - 调试器不懂俄语?还是只有我有这样的小毛病?看到了拉丁文的变量,但没有看到西里尔文的变量。彼得,那么你是如何使用调试器的,或者你不使用它? Реter Konow 2017.09.11 21:40 #344 任何有兴趣的人都可以在代码中寻找一个错误。 代码的要点。1.声明全局数组。符号名称的一维数组 "Symbols[]"一维数组的时间框架 "Timeframes[]"一个二维数组,我们在其中写入当前的条数"Number_bars[][]"。二维数组 "新条形事件[][]",我们将在其中写入每个符号和每个时间框架的新条形事件的标志。那些在数组 "Symbols[]"和 "Timeframes[]"中的数据。这个数组将在循环中被计时器事件上的符号和时间段填充,每分钟一次。之后,它将被清除。在填充和清除之间的间隔中,这个数组将被用户功能调用,并被告知新的条形。2.在初始化时,设置符号数组的大小,并将市场评论中的符号名称写入其中。3.设置 "Number_bars[][]"数组的第一个维度的大小,等于符号的数量,第二个维度等于时间框架的数量。这个数组就像一个表格。它将记录每个符号和每个时间框架的当前条数。这个数字是由iBars函数返回的。4.设置 "Events_new_bar[][]"数组的第一个维度的大小,它等于符号的数量,第二个维度等于时间段的数量。这个数组就像一个表格。它将记录每个时间框架上每个符号的新条的事件标志。5.在计时器内,我们倒数一分钟,并对符号(在数组Symbols[]中)和时间框架(在数组Timframes[]中)做一个双(嵌套)循环。我们调用iBars函数,从数组Symbols和Timeframe中获得每个符号和每个时间框架的当前条数。首先,我们将当前的条数与已经存储在数组中的条数进行比较。如果这些值不相等,我们就在 "Event_new_bar[][]"数组中设置新酒吧事件的标志。然后,我们写出当前的条数,以代替前一个条数。 全局数组 "events_new_bar[][]"在程序的任何时候都可用,每分钟自动填充,也自动清除。在数组被填充的期间,用户功能会收到关于新条形的新鲜数据。然后,该阵列被自动清除。就这样了。 Sofiia Butenko 2017.09.11 21:42 #345 Реter Konow:这个函数应该从OnTick或从一个定时器中调用。可能有一些小问题,但我还没能把它定位。自己看一下代码,看看有没有错误。这就像3戈比那么简单。并在此基础上进行评论。如果你不明白,就问吧。我有其他事情要做。专业解答 Реter Konow 2017.09.11 21:42 #346 Nikolai Semko: 我不理解这种幽默。什么 - 调试器不懂俄语?还是只有我有这样的小毛病?它能看到拉丁文的变量,但看不到西里尔文的变量。彼得,那么你是如何使用调试器的,还是你不使用它? 尼古拉,说来惭愧,我不知道如何使用调试器。我从来没有用过它。(( Реter Konow 2017.09.11 21:42 #347 Galina Bobro: 专业回应 而这是专业的扯皮行为。 Vitaly Muzichenko 2017.09.11 21:42 #348 Реter Konow:这个函数应该从OnTick或从一个定时器中调用。可能有一些小问题,但我还没能把它定位。自己看一下代码,看看有没有错误。这就像3戈比那么简单。而且也有评论。如果你不明白,就问吧。我有其他事情要做。它是如此复杂和扭曲,以至于你无法理解它。我很抱歉,但这也是完全不可读的。 Реter Konow 2017.09.11 21:45 #349 Vitaly Muzichenko:它是如此复杂和曲折,以至于一团糟。我很抱歉,但这也是完全不可读的。你知道他们说什么 "你不能...不要折磨......"?我认为这是个好主意。 Vitaly Muzichenko 2017.09.11 21:47 #350 Реter Konow:你知道关于 "你不能...... "的说法吗?不要折磨......"?我认为这是个好主意。没错,这就是你如何确凿地完成任务的,好吧,或者说我没能得到你的解决方案。 1...282930313233343536373839404142...47 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
这个函数的变体完全没有New_bar()函数。
这是我提供的最节省资源的选择。此外,它还有另一个优点:在定时器或tick事件上执行用户代码时,新的bar事件都会被保存。
以前,你只能得到这个事件一次,而且这个标志是通过New_bar()清除的。现在,该特殊函数每分钟清除一次 "event_new_bar[][]"数组,并且只在执行自定义代码后调用。
自定义函数可以直接访问数组并检索新的酒吧事件信息,所有的代码都是在定时器或滴答事件上执行的。
这就更加节省了资源。
最后一个代码也不起作用,花了7分钟才打印出来。
最后一个代码也不起作用,花了7分钟才打印出来。
这个函数应该从OnTick或从一个定时器中调用。
可能有一个小问题,但我还没能找到它。自己看一下代码,看看有没有错误。这就像3戈比那么简单。而且也有评论。
如果你不明白,请问。我有其他事情要做。
这个函数的变体根本就没有New_bar()函数。
这是我提供的最节省资源的选择。此外,它还有另一个优点:在定时器或tick事件上执行用户代码时,新的bar事件都会被保存。
以前,你只能得到这个事件一次,而且这个标志是通过New_bar()清除的。现在,该特殊函数每分钟清除一次 "event_new_bar[][]"数组,并且只在执行自定义代码后调用。
自定义函数可以直接访问数组并检索新的酒吧事件信息,所有的代码都是在定时器或滴答事件上执行的。
资源得到了更大的节省。
我不理解这种幽默。为什么 - 调试器不懂俄语?还是只有我有这样的小毛病?看到了拉丁文的变量,但没有看到西里尔文的变量。
彼得,那么你是如何使用调试器的,或者你不使用它?
任何有兴趣的人都可以在代码中寻找一个错误。
代码的要点。
1.声明全局数组。
2.在初始化时,设置符号数组的大小,并将市场评论中的符号名称写入其中。
3.设置 "Number_bars[][]"数组的第一个维度的大小,等于符号的数量,第二个维度等于时间框架的数量。这个数组就像一个表格。它将记录每个符号和每个时间框架的当前条数。这个数字是由iBars函数返回的。
4.设置 "Events_new_bar[][]"数组的第一个维度的大小,它等于符号的数量,第二个维度等于时间段的数量。这个数组就像一个表格。它将记录每个时间框架上每个符号的新条的事件标志。
5.在计时器内,我们倒数一分钟,并对符号(在数组Symbols[]中)和时间框架(在数组Timframes[]中)做一个双(嵌套)循环。我们调用iBars函数,从数组Symbols和Timeframe中获得每个符号和每个时间框架的当前条数。首先,我们将当前的条数与已经存储在数组中的条数进行比较。如果这些值不相等,我们就在 "Event_new_bar[][]"数组中设置新酒吧事件的标志。然后,我们写出当前的条数,以代替前一个条数。
全局数组 "events_new_bar[][]"在程序的任何时候都可用,每分钟自动填充,也自动清除。在数组被填充的期间,用户功能会收到关于新条形的新鲜数据。然后,该阵列被自动清除。
就这样了。
这个函数应该从OnTick或从一个定时器中调用。
可能有一些小问题,但我还没能把它定位。自己看一下代码,看看有没有错误。这就像3戈比那么简单。并在此基础上进行评论。
如果你不明白,就问吧。我有其他事情要做。
专业解答
我不理解这种幽默。什么 - 调试器不懂俄语?还是只有我有这样的小毛病?它能看到拉丁文的变量,但看不到西里尔文的变量。
彼得,那么你是如何使用调试器的,还是你不使用它?
专业回应
这个函数应该从OnTick或从一个定时器中调用。
可能有一些小问题,但我还没能把它定位。自己看一下代码,看看有没有错误。这就像3戈比那么简单。而且也有评论。
如果你不明白,就问吧。我有其他事情要做。
它是如此复杂和扭曲,以至于你无法理解它。
我很抱歉,但这也是完全不可读的。
它是如此复杂和曲折,以至于一团糟。
我很抱歉,但这也是完全不可读的。
你知道他们说什么 "你不能...不要折磨......"?我认为这是个好主意。
你知道关于 "你不能...... "的说法吗?不要折磨......"?我认为这是个好主意。
没错,这就是你如何确凿地完成任务的,好吧,或者说我没能得到你的解决方案。