当地时间和新勾股时间相差一分半钟。该怎么做。 - 页 3 123456789 新评论 [删除] 2019.03.18 18:18 #21 pivomoe:TimeCurrent() - 字符的最后一次打勾的时间将小于延迟时间,所以可以使用它。在第一个版本中使用当地时间并不是一个好主意。哇...嗯,目前的版本似乎也不成功。 让我们读一下TimeCurrent()的定义。 时代返回最后已知的服务器时间,在 "市场观察 "中选择的一个 符号的最后报价到达时间。 其中一个是指显示最频繁(为简单起见,是最多液体)的时间。而这并不是你想要的。你需要的是SymbolInfoInteger( blah-blah, SYMBOL_TIME )。它看起来像这样。 pivomoe 2019.03.18 18:51 #22 Alexey Kozitsyn:哇...dac,目前的版本似乎也失败了。阅读TimeCurrent()的定义。它的意思是,它显示最频繁变化的时间(为了简单起见,是最多的液体)。而这并不是你所需要的。你需要的是SymbolInfoInteger( blah-blah, SYMBOL_TIME )。我想是的。这就是我试图为prostotrader携带我所看到的问题的方式。在最后一个版本中,我通过所有的符号,并采取最后收到的tick的最大时间。 for(int i=0; i<KolichestvoSimvolov; i++) if( InformaziaOPoslednemTike[i].LastTick.time_msc > VremaySamogoSvegegoTikaPoVsemSimvolam ) VremaySamogoSvegegoTikaPoVsemSimvolam= InformaziaOPoslednemTike[i].LastTick.time_msc;阿列克谢-科齐岑。如果有人在17:59:01收到了关于蜱虫的信息,而我在18:00也没有收到--这就是一个大问题。而问题就在这里。问题是什么(是否有问题)?在经纪人的服务器上,它在很长一段时间内不给滴答(给每个人),或者在MT5中,它在很长一段时间内不接收。一方面,"TimeCurrent "和最后一个tick的到达时间之间的平均时间是5毫秒,另一方面,有的tick是以几十秒的速度下降的。例如,从18岁到25岁。我已经抓到了一个延迟45秒的虱子。而这是在几十种非流动性符号上。+到这一点,通过使用CopyTicks来获得最后一个tick,这个术语的问题就会变得更加严重。if(CopyTicks(Symbol(),ticks,COPY_TICKS_TRADE,0,1)==1) 不仅按次数来说比较慢,而且可能会平淡地执行一秒半。我知道OnBookEvent只适用于一个符号的交易。 Алексей Тарабанов 2019.03.18 21:39 #23 pivomoe:这就是我试图为prostotrader携带我所看到的问题的方式。在最后一个版本中,我通过所有的符号,并采取最后收到的tick的最大时间。 一方面,"TimeCurrent "和最后一个tick的到达时间之间的平均时间是5毫秒,另一方面,有的tick是以几十秒的速度下降的。例如,从18岁到25岁。我已经抓到了一个延迟45秒的虱子。而这是在几十种非流动性符号上。 +到这一点,通过使用CopyTicks来获得最后一个tick,这个术语的问题就会变得更加严重。不仅按次数来说比较慢,而且可能会平淡地执行一秒半。 我还了解到,OnBookEvent只适用于一个符号的交易。我们到了。事实证明,你刚才已经明白,市场玻璃是为每个货币对单独形成的,所以在它的数据上进行不同货币对的交易是不可能的。 我希望你很快就会意识到,从各种图表中按一定的顺序追逐数据,由你给出,并不符合不同货币对图表中关于新点位的传入数据顺序。 因此,如果先检查欧元兑美元,最后检查BTC兑美元,而且它们之间有几十个符号,那么收到ticks的时间可能看起来像这样 18:50:00.000;18:48:59.018;18:51:00.001;18:47:59.000好等等。没有任何阴谋论,MT的或经纪人的过错。他们编程的东西就是他们得到的东西。 pivomoe 2019.03.18 22:25 #24 Алексей Тарабанов:我们到了。事实证明,你刚刚意识到,玻璃是为每个货币对单独形成的,所以要在它的数据上进行交易是不可能的,不同的货币对。 我希望你很快就会意识到,从各种图表中按一定的顺序追逐数据,由你给出,并不符合不同货币对图表中关于新点位的传入数据顺序。 因此,如果先检查欧元兑美元,最后检查BTC兑美元,并且它们之间有几十个符号,那么收到ticks的时间可能看起来像这样 18:50:00.000;18:48:59.018;18:51:00.001;18:47:59.000好等等。没有任何阴谋论,MT的或经纪人的过错。我们编程的东西就是我们得到的东西。为了通过OnBookEvent捕捉新的蜱虫,我受到了prostotrade 的启发,他写道:"这更正确"。我不使用tick本身,我只是为市场报告中的所有符号订阅它的更新。OnBookEven是用来检测只有用于更新tick的符号。然后检查是否有新的刻度线,然后我看EA是否设置了新的反记录。 这实际上是整个功能。 void OnBookEvent(const string &symbol) { if( MestoPoluchenieTikov == ON_TIMER ) return; //--- Ищем индекс символа для которого полученно событие OnBookEvent int IndeksSimvola= -1; for( int i=0; i < KolichestvoSimvolov; i++ ) if( symbol == GCInformaziaOPoslednemTike[i].Simvol ) { IndeksSimvola= i; break; } if( IndeksSimvola== -1 ){Print(__FUNCTION__,"Не удалось найти символ по которому полученно событие OnBookEvent ");ExpertRemove();return;} bool PoluchiliNoviiTick= false; //--- Получаем тик заданным в настройках способом. if( SposobPoluchenieTikov == SYMBOL_INFO_TICK ) PoluchiliNoviiTick= PolychaemNoviiTickSymbolInfoTick(GCInformaziaOPoslednemTike[IndeksSimvola]); if( SposobPoluchenieTikov == COPY_TICKS ) PoluchiliNoviiTick= PolychaemNoviiTickCopyTicks(GCInformaziaOPoslednemTike[IndeksSimvola]); //--- Смотрим не установлены ли новые рекорды. if( PoluchiliNoviiTick ) PitaemsayObnovitRekordi( GCInformaziaOPoslednemTike, IndeksSimvola ); ObnovlaemInformacyyNaGrafikeEslePora(); } 阿列克谢-塔拉巴诺夫。我希望你明白,从不同的眼镜中按一定的顺序追逐数据,由你给出,并不对应于不同货币对的眼镜中的新点位的传入数据的顺序。据我所知,如果我没有收到使用MarketBookGet的杯子,那么我就不会搜索任何东西。也许,你只是没有看我在第二页的代码。 Алексей Тарабанов 2019.03.18 22:35 #25 pivomoe:我从prostotrade 那里得到了通过OnBookEvent捕捉新蜱虫的想法,他写道,这 "更正确"。我不使用tick本身,我只是在市场报告中订阅它对所有符号的更新。OnBookEven我基本上只用它来识别符号,对它的tick已经更新。然后检查是否有新的刻度线,然后我看EA是否设置了新的反记录。 这实际上是整个功能。 据我所知,如果我使用MarketBookGet没有得到杯子,那么我就不检查任何东西。你可能只是没有看我在第二页的代码。在处理完前一个信号之前,MT信号不会被处理。 Алексей Тарабанов 2019.03.18 22:44 #26 pivomoe:我从prostotrade 那里得到了通过OnBookEvent捕捉新蜱虫的想法,他写道,这 "更正确"。我不使用tick本身,我只是在市场报告中订阅它对所有符号的更新。OnBookEven我基本上只用它来识别符号,对它的tick已经更新。然后检查是否有新的刻度线,然后我看EA是否设置了新的反记录。 这实际上是整个功能。 据我所知,如果我使用MarketBookGet没有得到杯子,那么我就不检查任何东西。你可能只是没有看我在第二页的代码。我没有。 Andrey Khatimlianskii 2019.03.19 22:33 #27 pivomoe:你的逻辑很好,不要听信那些路人。 1.试着留下3-5个工具(其中一个是不流动的)。它能播放吗? 2.在没有其他软件的干净机器上运行它,并使用互联网。它是否会重复? 3.试着把捕捉延迟分离到不同的EA中(每个工具1个)。 如果问题不在资源方面(对分配给一个终端的线程数量有一些限制),那么这个错误应该被修复。 pivomoe 2019.03.19 23:14 #28 Andrey Khatimlianskii:你的逻辑很好,不要听信那些路人。 1.尽量保留3-5个工具(其中一个是非流动性的)。它能播放吗? 2.在没有其他软件的干净机器上运行它,并使用互联网。它是否会重复? 3.试着把捕捉延迟分离到不同的EA中(每个工具1个)。 如果问题不在资源上(对分配给一个终端的线程数量有一些限制),那么这个错误应该被修复。谢谢你的答复。今天,我在解决这个问题上取得了一点进展。在SymbolInfo()调用 之间用Sleep()命令处理。以前,我只是循环浏览整个市场概况,没有停顿。我在晚上用40个符号测试了它。如果Sleep(5),那么我就会捕捉到 "新的刻度",这应该是两秒钟前。但Sleep(10)显示了400毫秒的延迟(由于Sleep(10)( 40个符号*10)。 我试着在Vespers的4个最流动的符号上测试。使用Sleep(1)时,完全没有延迟....一切都很完美。在这里,我不明白怎么可能,如果审查中的符号很小,SymbolInfo可以在没有任何停顿的情况下使用。而如果符号很多需要使用停顿。 现在,答案出来了。 1)晚上的液体没有播放。 2)在40个字符时,即使禁用软件,也会重复。 3)我不明白你的建议。在一个终端中同时从两个EA中捕捉新的点位? ZZZ 现在我正在挖掘调用SymbolInfo 的可行性。例如,我设法发现,即使是市场概览中的一个符号,也无法发送间隔超过3.5毫秒的新刻度线(虽然是在晚上)。 Andrey Khatimlianskii 2019.03.20 01:58 #29 pivomoe:1)在液体上,晚祷时不回放。 2) 在40个字符时,即使禁用软件,也会重复出现。 3)我不明白你在建议什么。在一个终端中同时从两个EA中捕捉新的点位? ZZZ 现在我正在挖掘调用SymbolInfo 的可行性。例如,我设法发现,即使是市场概览中的一个符号,也不能提供超过3.5毫秒的新刻度(虽然是在晚上)。1.尝试增加一个非流动性的 3.从一个EA中抓取一个乐器的失误。并运行40个EA。 [删除] 2019.03.20 07:02 #30 pivomoe:谢谢你的答复。今天在解决这个问题上有了一点进展。它在SymbolInfo()调用 之间用Sleep()命令处理。以前我只是在整个市场概览中循环播放,没有暂停。我在晚上用40个符号测试了它。如果Sleep(5),那么我就会捕捉到 "新的刻度",这应该是两秒钟前。但Sleep(10)显示了400毫秒的延迟(由于Sleep(10)( 40个符号*10)。 我试着在Vespers的4个最具流动性的符号上测试。使用Sleep(1)时,完全没有延迟....一切都很完美。在这里,我不明白怎么可能,如果审查中的符号很小,SymbolInfo可以在没有任何停顿的情况下使用。而如果你有大量的字符,你必须使用停顿。请给我提供一段能捕捉到延迟的代码。就在这里,通过代码插入按钮。 123456789 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
TimeCurrent() - 字符的最后一次打勾的时间将小于延迟时间,所以可以使用它。在第一个版本中使用当地时间并不是一个好主意。
哇...嗯,目前的版本似乎也不成功。
让我们读一下TimeCurrent()的定义。
时代
返回最后已知的服务器时间,在 "市场观察 "中选择的一个 符号的最后报价到达时间。
其中一个是指显示最频繁(为简单起见,是最多液体)的时间。而这并不是你想要的。你需要的是SymbolInfoInteger( blah-blah, SYMBOL_TIME )。它看起来像这样。
哇...dac,目前的版本似乎也失败了。
阅读TimeCurrent()的定义。
它的意思是,它显示最频繁变化的时间(为了简单起见,是最多的液体)。而这并不是你所需要的。你需要的是SymbolInfoInteger( blah-blah, SYMBOL_TIME )。我想是的。
这就是我试图为prostotrader携带我所看到的问题的方式。在最后一个版本中,我通过所有的符号,并采取最后收到的tick的最大时间。
如果有人在17:59:01收到了关于蜱虫的信息,而我在18:00也没有收到--这就是一个大问题。
而问题就在这里。问题是什么(是否有问题)?在经纪人的服务器上,它在很长一段时间内不给滴答(给每个人),或者在MT5中,它在很长一段时间内不接收。
一方面,"TimeCurrent "和最后一个tick的到达时间之间的平均时间是5毫秒,另一方面,有的tick是以几十秒的速度下降的。例如,从18岁到25岁。我已经抓到了一个延迟45秒的虱子。而这是在几十种非流动性符号上。

+到这一点,通过使用CopyTicks来获得最后一个tick,这个术语的问题就会变得更加严重。不仅按次数来说比较慢,而且可能会平淡地执行一秒半。
我知道OnBookEvent只适用于一个符号的交易。
这就是我试图为prostotrader携带我所看到的问题的方式。在最后一个版本中,我通过所有的符号,并采取最后收到的tick的最大时间。
一方面,"TimeCurrent "和最后一个tick的到达时间之间的平均时间是5毫秒,另一方面,有的tick是以几十秒的速度下降的。例如,从18岁到25岁。我已经抓到了一个延迟45秒的虱子。而这是在几十种非流动性符号上。
+到这一点,通过使用CopyTicks来获得最后一个tick,这个术语的问题就会变得更加严重。不仅按次数来说比较慢,而且可能会平淡地执行一秒半。
我还了解到,OnBookEvent只适用于一个符号的交易。
我们到了。事实证明,你刚才已经明白,市场玻璃是为每个货币对单独形成的,所以在它的数据上进行不同货币对的交易是不可能的。
我希望你很快就会意识到,从各种图表中按一定的顺序追逐数据,由你给出,并不符合不同货币对图表中关于新点位的传入数据顺序。
因此,如果先检查欧元兑美元,最后检查BTC兑美元,而且它们之间有几十个符号,那么收到ticks的时间可能看起来像这样
18:50:00.000;18:48:59.018;18:51:00.001;18:47:59.000好等等。没有任何阴谋论,MT的或经纪人的过错。他们编程的东西就是他们得到的东西。
我们到了。事实证明,你刚刚意识到,玻璃是为每个货币对单独形成的,所以要在它的数据上进行交易是不可能的,不同的货币对。
我希望你很快就会意识到,从各种图表中按一定的顺序追逐数据,由你给出,并不符合不同货币对图表中关于新点位的传入数据顺序。
因此,如果先检查欧元兑美元,最后检查BTC兑美元,并且它们之间有几十个符号,那么收到ticks的时间可能看起来像这样
18:50:00.000;18:48:59.018;18:51:00.001;18:47:59.000好等等。没有任何阴谋论,MT的或经纪人的过错。我们编程的东西就是我们得到的东西。
为了通过OnBookEvent捕捉新的蜱虫,我受到了prostotrade 的启发,他写道:"这更正确"。我不使用tick本身,我只是为市场报告中的所有符号订阅它的更新。OnBookEven是用来检测只有用于更新tick的符号。然后检查是否有新的刻度线,然后我看EA是否设置了新的反记录。 这实际上是整个功能。
我希望你明白,从不同的眼镜中按一定的顺序追逐数据,由你给出,并不对应于不同货币对的眼镜中的新点位的传入数据的顺序。
据我所知,如果我没有收到使用MarketBookGet的杯子,那么我就不会搜索任何东西。也许,你只是没有看我在第二页的代码。
我从prostotrade 那里得到了通过OnBookEvent捕捉新蜱虫的想法,他写道,这 "更正确"。我不使用tick本身,我只是在市场报告中订阅它对所有符号的更新。OnBookEven我基本上只用它来识别符号,对它的tick已经更新。然后检查是否有新的刻度线,然后我看EA是否设置了新的反记录。 这实际上是整个功能。
据我所知,如果我使用MarketBookGet没有得到杯子,那么我就不检查任何东西。你可能只是没有看我在第二页的代码。
在处理完前一个信号之前,MT信号不会被处理。
我从prostotrade 那里得到了通过OnBookEvent捕捉新蜱虫的想法,他写道,这 "更正确"。我不使用tick本身,我只是在市场报告中订阅它对所有符号的更新。OnBookEven我基本上只用它来识别符号,对它的tick已经更新。然后检查是否有新的刻度线,然后我看EA是否设置了新的反记录。 这实际上是整个功能。
据我所知,如果我使用MarketBookGet没有得到杯子,那么我就不检查任何东西。你可能只是没有看我在第二页的代码。
我没有。
你的逻辑很好,不要听信那些路人。
1.试着留下3-5个工具(其中一个是不流动的)。它能播放吗?
2.在没有其他软件的干净机器上运行它,并使用互联网。它是否会重复?
3.试着把捕捉延迟分离到不同的EA中(每个工具1个)。
如果问题不在资源方面(对分配给一个终端的线程数量有一些限制),那么这个错误应该被修复。
你的逻辑很好,不要听信那些路人。
1.尽量保留3-5个工具(其中一个是非流动性的)。它能播放吗?
2.在没有其他软件的干净机器上运行它,并使用互联网。它是否会重复?
3.试着把捕捉延迟分离到不同的EA中(每个工具1个)。
如果问题不在资源上(对分配给一个终端的线程数量有一些限制),那么这个错误应该被修复。
谢谢你的答复。今天,我在解决这个问题上取得了一点进展。在SymbolInfo()调用 之间用Sleep()命令处理。以前,我只是循环浏览整个市场概况,没有停顿。我在晚上用40个符号测试了它。如果Sleep(5),那么我就会捕捉到 "新的刻度",这应该是两秒钟前。但Sleep(10)显示了400毫秒的延迟(由于Sleep(10)( 40个符号*10)。 我试着在Vespers的4个最流动的符号上测试。使用Sleep(1)时,完全没有延迟....一切都很完美。在这里,我不明白怎么可能,如果审查中的符号很小,SymbolInfo可以在没有任何停顿的情况下使用。而如果符号很多需要使用停顿。
现在,答案出来了。
1)晚上的液体没有播放。
2)在40个字符时,即使禁用软件,也会重复。
3)我不明白你的建议。在一个终端中同时从两个EA中捕捉新的点位?
ZZZ 现在我正在挖掘调用SymbolInfo 的可行性。例如,我设法发现,即使是市场概览中的一个符号,也无法发送间隔超过3.5毫秒的新刻度线(虽然是在晚上)。
1)在液体上,晚祷时不回放。
2) 在40个字符时,即使禁用软件,也会重复出现。
3)我不明白你在建议什么。在一个终端中同时从两个EA中捕捉新的点位?
ZZZ 现在我正在挖掘调用SymbolInfo 的可行性。例如,我设法发现,即使是市场概览中的一个符号,也不能提供超过3.5毫秒的新刻度(虽然是在晚上)。
1.尝试增加一个非流动性的
3.从一个EA中抓取一个乐器的失误。并运行40个EA。
谢谢你的答复。今天在解决这个问题上有了一点进展。它在SymbolInfo()调用 之间用Sleep()命令处理。以前我只是在整个市场概览中循环播放,没有暂停。我在晚上用40个符号测试了它。如果Sleep(5),那么我就会捕捉到 "新的刻度",这应该是两秒钟前。但Sleep(10)显示了400毫秒的延迟(由于Sleep(10)( 40个符号*10)。 我试着在Vespers的4个最具流动性的符号上测试。使用Sleep(1)时,完全没有延迟....一切都很完美。在这里,我不明白怎么可能,如果审查中的符号很小,SymbolInfo可以在没有任何停顿的情况下使用。而如果你有大量的字符,你必须使用停顿。
请给我提供一段能捕捉到延迟的代码。就在这里,通过代码插入按钮。