将Windows本地时间与MT5服务器同步 - 页 5

 
prostotrader:

不,不是的!

任何非MT5服务器时间都是不对的,因为我们通过MT5服务器进行交易!!!!。

添加

我非常希望MT5服务器本身的时间与交易所的时间是同步的。

http://forum.moex.com/viewtopic.asp?t=15432&topicdays=0&postorder=asc&start=0 的前两页有很多关于FORTS交易所时间同步的有趣信息,还给出了RTS交易所的ntp.rtsnet.ru NTP服务器的地址,所有经纪商可以通过它来同步时间。它没有提供给客户。的确,这是2009-2010年的情况。你的经纪人的技术支持可能会回答有关的经纪人现在是如何。

除了同步本身,我还希望看到应用一种 "平滑 "的时间转移算法,这样后续的事件就不会从经纪人那里得到以前的时间。这种机制不包括在NTP同步中。

Точность часов ФОРТС — Форум «Техническая поддержка» Московской Биржи
Точность часов ФОРТС — Форум «Техническая поддержка» Московской Биржи
  • forum.moex.com
Пожалуйста, проясните, с какой точностью идут часы, используемые системой ФОРТС для временной разметки сделок. Меня интересует, синхронизируются ли часы с какими либо высокоточными часами реального времени (GPS, атомными часами или т.п.), как часто происходит синхронизация, какова погрешность времени на ФОРТС между периодами синхронизации...
 
Vladimir:

http://forum.moex.com/viewtopic.asp?t=15432&topicdays=0&postorder=asc&start=0 的前两页包含了许多关于FORTS交易所时间同步的有趣信息,以及RTS交易所的ntp.rtsnet.ru NTP服务器的地址,所有经纪商可以通过它来同步他们的时间。它没有提供给客户。的确,这是2009-2010年的情况。你的经纪人的技术支持,可能会回答,因为现在在给定的经纪人。

除了同步本身,我还希望看到应用一种 "平滑 "的时间转移算法,这样后续的事件就不会从经纪人那里得到以前的时间。这种机制不包括在NTP同步中。

Здравствуйте, уточню, вы через ВПН подключаетесь к срочному рынку ? Т.к. через интернет сервисы синхронизации времени не доступны.

С уважением,
Глеб Кочнев
Техническая поддержка ПАО Московская Биржа
+7 (495) 733-95-07 | help@moex.com
 

谁能解释一下为什么这段代码不能准确地同步时间?

毕竟,市场前收到一个 "新 "的报价,有新的服务器(交易所)时间

void OnBookEvent(const string &symbol)
  {
   loc_time.wYear=0;
   GetLocalTime(loc_time);
   if(loc_time.wYear>0)
     {
      if((loc_time.wHour==9) && (loc_time.wMinute>=50) && (loc_time.wMinute<=59))
        {
         MqlTick curr_tick[1];
         if(CopyTicks(symbol,curr_tick,COPY_TICKS_INFO,0,1)==1)
           {
            MqlDateTime sv_time;
            TimeToStruct(curr_tick[0].time,sv_time);
            if(!is_sync)
              {
               if((loc_time.wDayOfWeek==ushort(sv_time.day_of_week)) &&
                  (loc_time.wHour==ushort(sv_time.hour)))
                 {
                  long last_ping=long(NormalizeDouble((double(TerminalInfoInteger(TERMINAL_PING_LAST))/1000)/2,0));
                  long mls_time=long(curr_tick[0].time_msc%1000);
                  if((mls_time+last_ping)>999)
                    {
                     mls_time=long(curr_tick[0].time_msc)+last_ping;
                     if(!ConvertToTime(mls_time, loc_time)) return;
                    }
                  else
                    {
                     loc_time.wMinute = ushort(sv_time.min);
                     loc_time.wSecond = ushort(sv_time.sec);
                     loc_time.wMilliseconds=ushort(mls_time);
                    }
                  if(SetLocalTime(loc_time))
                    {
                     is_sync=true;
                     Print("Local time sync is done. Symbol = ", symbol, " Sync min = ", loc_time.wMinute,
                           " Sync sec = ", loc_time.wSecond, " Sync ms = ", loc_time.wMilliseconds);
                    }
                 }
              }
           }
        }
      else is_sync=false;
     }
  }
 

让我解释一下上面的代码是基于什么。

带有标志COPY_TICKS_INFO 的 CopyTicks() 函数。

标志返回带有服务器时间的最后报价(Bid, Ask),由于BID和/或ASK的变化将导致

OnBookEvent()事件,我们可以得到最后一次报价的时间

检查

if((loc_time.wDayOfWeek==ushort(sv_time.day_of_week)) &&
                  (loc_time.wHour==ushort(sv_time.hour)))


我们确保它是一个 "新鲜 "的报价。

为什么10:00以后,服务器时间不一致的几秒钟?

与同步的当地时间?

 
prostotrader:
Здравствуйте, уточню, вы через ВПН подключаетесь к срочному рынку ? Т.к. через интернет сервисы синхронизации времени не доступны.

С уважением,
Глеб Кочнев
Техническая поддержка ПАО Московская Биржа
+7 (495) 733-95-07 | help@moex.com

你的关键问题是如何解决的:"我们非常希望MT5服务器的时间 本身与交易所的时间是同步的!"?

 
Vladimir:

你的关键问题是如何解决的:"我非常希望MT5服务器的时间本身与交易所的时间是正确同步的。

没有解决,我怎么知道开发者如何将MT5服务器时间与交易所时间同步?

经纪人(Otkoytiye)自动写的,但具体怎么写的,只有开发者知道。

但他们并没有参与讨论。

添加

而这并不是我的关键问题!

我的问题是。

我怎样才能使我的本地时间 与MT5 FORTS服务器的时间尽可能准确地同步?

 
prostotrader:

我怎样才能使我的本地时间尽可能准确地与MT5 FORTS服务器的时间同步?

敲击声。
 
fxsaber:
敲击声。

OnTick不在盘前和清算时出现,而在清算时出现。

需要在竞标前进行同步。

 
prostotrader:

OnTick不在盘前和清算中出现,而且时间

需要在竞标前进行同步。

我看不出有什么理由要在交易前同步时间。在11:32打开终端,它在第一个刻度上就同步了。
 
fxsaber:
我看不出有什么理由要在交易前同步时间。在11:32打开终端,它在第一个刻度上就同步了。
2017.01.13 10:00:03.969 Trades  'xxxxx': buy limit 2.00 ED-6.17 at 1.0642
2017.01.13 10:00:03.969 Trades  'xxxxx': sell limit 1.00 ED-6.17 at 1.0813
2017.01.13 10:00:03.975 Trades  'xxxxx': accepted buy limit 2.00 ED-6.17 at 1.0642
2017.01.13 10:00:03.975 Trades  'xxxxx': accepted sell limit 1.00 ED-6.17 at 1.0813
2017.01.13 10:00:03.978 Trades  'xxxxx': failed buy limit 2.00 ED-6.17 at 1.0642 [Market closed]
2017.01.13 10:00:03.979 Trades  'xxxxx': failed sell limit 1.00 ED-6.17 at 1.0813 [Market closed]

经纪人的答复

Со своей стороны видим, что заяви ниже подавались в другое время

2017.01.13 09:59:58.098               * request transfered to dealers * (buy limit 2.00 ED-6.17 at 1.0642)

2017.01.13 09:59:58.099               * request transfered to dealers * (sell limit 1.00 ED-6.17 at 1.0813)

2017.01.13 09:59:58.099               * request from '*' (buy limit 2.00 ED-6.17 at 1.0642)

2017.01.13 09:59:58.099               * request from '*' (sell limit 1.00 ED-6.17 at 1.0813)

2017.01.13 09:59:58.100               * reject (Market closed) for '*' (buy limit 2.00 ED-6.17 at 1.0642)(1.0641 / 1.0814 / 1.0695)

2017.01.13 09:59:58.100               * reject (Market closed) for '*' (sell limit 1.00 ED-6.17 at 1.0813)(1.0641 / 1.0814 / 1.0695)

而且我看到了它。

添加

而且我的终端一直在运行90天(在期货变化之前)。

添加

我的机器人不需要我的参与,有时我不去靠近

我有一个星期没有去看我的电脑。如果发生极端的事情,我就会收到一条短信。