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

 
Alexey Kozitsyn:
请将如何在BCS开立真实账户的说明寄给我。
为了避免每次都搜索,我把它放在我的个人资料 中。
 
fxsaber:
为了避免每次都要挖空心思,我把它放在了我的个人资料上
谢谢你。
 

Alexey Kozitsyn:
Спасиб

谢谢,我自己已经做了。
附加的文件:
 

做了一个匹配,有差异,但不明显。

在我看来,在历史中记录订单刻度的功能没有正常工作(交易是正常的)。

我将做300行,并发布比较文件。

添加

检查一下,我可能犯了一个错误

附加的文件:
Book2.zip  671 kb
 
prostotrader:

在10:00和14:05都能准确地工作。

2017.01.26 10:00:00.000 Time_sync_forts (URKA-3.17,H1)  Local time sync is done. Symbol = RTS-3.17 Sync hour = 10 Sync min = 0 Sync sec = 0 Sync ms = 0
2017.01.26 14:05:00.005 Time_sync_forts (URKA-3.17,H1)  Local time sync is done. Symbol = RTS-3.17 Sync hour = 14 Sync min = 5 Sync sec = 0 Sync ms = 5

添加

我想我会删除BR,这样一切都会在3个月内自动发生 :)

还有,鉴于拍卖可以在19-00开始,然后在19-05开始,有什么办法可以 "搞砸 "晚上的清场吗?
 

因此,就是这样。

而上午的会议和之后都是清场。

附加的文件:
 

已经做了很多艰苦的工作。由于 使用建议的方法进行时间同步是基于考虑到ping值,我有 一个问题。

通过请求TERMINAL_PING_LAST标识符,终端给出(根据MQL文档)"以微秒为单位的对交易服务器的最后已知ping值"。

它是什么,它的价值是否稳定,它有多大?多年来,我一直在日志文件中看到这一特征,但现在我可以在终端中直接看到服务器列表中的ping。而且它们非常稳定。它是什么?

我能想象到的只有两种变体。

1)它是路由器用于分析IP数据包路径的网络特性,它是通过ICMP网络协议获得的,实际上只考虑了硬件信号的传播。在客户端计算机和服务器之间的ping测量的特定情况下,它意味着在他们的网卡之间来回移动。采用这种协议的数据包通常不会到达应用程序,它没有必要https://ru.wikipedia.org/wiki/ICMP。

2.它使从服务器上的应用程序到客户端的应用程序的信号传输时间加倍。

有谁有线索吗?

ICMP — Википедия
  • ru.wikipedia.org
ICMP Название: Уровень (по модели OSI): Семейство: Спецификация: ICMP (англ.   — протокол межсетевых управляющих сообщений[1]) — сетевой протокол, входящий в стек протоколов TCP/IP. В основном ICMP используется для передачи сообщений об ошибках и других исключительных ситуациях, возникших при передаче данных, например, запрашиваемая услуга...
 
Vladimir:

已经做了很多艰苦的工作。由于 使用建议的方法进行时间同步是基于考虑到ping值,我有 一个问题。

通过请求TERMINAL_PING_LAST标识符,终端给出(根据MQL文档)"以微秒为单位的对交易服务器的最后已知ping值"。

它是什么,它的价值是否稳定,它有多大?多年来,我一直在日志文件中看到这一特征,但现在我可以在终端中直接看到服务器列表中的ping。而且它们非常稳定。它是什么?

我能想象到的只有两种变体。

1)它是路由器用来分析IP包路径的一个网络特性,它是用ICMP网络协议获得的,实际上只考虑了硬件信号的传播。在客户端计算机和服务器之间的ping测量的特定情况下,它意味着在它们的网卡之间来回移动。采用这种协议的数据包通常不会到达应用程序,它没有必要https://ru.wikipedia.org/wiki/ICMP。

2.它使从服务器上的应用程序到客户端的应用程序的信号传输时间加倍。

有谁有线索吗?

只有开发者才能肯定地回答这个问题。

我是以第二个为基础的。

>这是从服务器上的应用程序到客户端的应用程序的信号传输时间的两倍

 
prostotrader:

因此,就是这样。

而上午的会议和之后都是清场。

一切都 "像时钟一样 "运作 :)

2017.01.30 10:00:00.000 Time_symc_forts (URKA-3.17,H1)  Local time sync is done. Symbol = Si-3.17 Sync hour = 10 Sync min = 0 Sync sec = 0 Sync ms = 0
2017.01.30 14:05:00.002 Time_symc_forts (URKA-3.17,H1)  Local time sync is done. Symbol = Si-3.17 Sync hour = 14 Sync min = 5 Sync sec = 0 Sync ms = 2
2017.01.30 19:00:00.003 Time_symc_forts (URKA-3.17,H1)  Local time sync is done. Symbol = Si-3.17 Sync hour = 19 Sync min = 0 Sync sec = 0 Sync ms = 3

添加

就等着19-05开始竞价了

Market closed
Market closed
  • www.mql5.com
Ребята разработчики! Ну когда же Вы синхронизируете время терминала с временем Биржи...
 
prostotrader:

一切都 "像时钟一样 "运作 :)

2017.01.30 10:00:00.000 Time_symc_forts (URKA-3.17,H1)  Local time sync is done. Symbol = Si-3.17 Sync hour = 10 Sync min = 0 Sync sec = 0 Sync ms = 0
2017.01.30 14:05:00.002 Time_symc_forts (URKA-3.17,H1)  Local time sync is done. Symbol = Si-3.17 Sync hour = 14 Sync min = 5 Sync sec = 0 Sync ms = 2
2017.01.30 19:00:00.003 Time_symc_forts (URKA-3.17,H1)  Local time sync is done. Symbol = Si-3.17 Sync hour = 19 Sync min = 0 Sync sec = 0 Sync ms = 3

添加

就等着19-05开始竞价了

添加

对于谢尔盖

https://www.mql5.com/ru/forum/166646

只是为了好玩,如果你不介意的话,把它打开,让我们看看时间同步的准确性如何。

//+------------------------------------------------------------------+
//|                                            Delta Time Server.mq5 |
//+------------------------------------------------------------------+
struct _SYSTEMTIME
  {
   short             year;
   short             mon;
   short             day_of_week;
   short             day;
   short             hour;
   short             min;
   short             sec;
   short             msc;
  };

_SYSTEMTIME loc_time;

#import "kernel32.dll"
void GetLocalTime(_SYSTEMTIME &sys_time);
bool SetLocalTime(_SYSTEMTIME &sys_time);
#import
//---
MqlTick tick;
MqlDateTime sv_time;
int tick_msc,ping,time_server,time_local,delta=0,mdelta[10],n=0;
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   loc_time.year=0;
   GetLocalTime(loc_time);
   if(loc_time.year>0)
     {
      if(!SymbolInfoTick(_Symbol,tick)) { Print("error SymbolInfoTick: ",GetLastError()); return; }
      ping=TerminalInfoInteger(TERMINAL_PING_LAST)/1000;
      tick_msc=int(tick.time_msc%1000);
      TimeToStruct(tick.time,sv_time);

      time_server=(sv_time.sec+sv_time.min*60)*1000+tick_msc;
      time_local=(loc_time.sec+loc_time.min*60)*1000+loc_time.msc;

      delta=AvgDelta(time_server-time_local);
      
     Print(
           "ping : ",ping,
           " | time server: ",sv_time.hour,":",sv_time.min,":",sv_time.sec,",",tick_msc,
           " | time local: ",loc_time.hour,":",loc_time.min,":",loc_time.sec,",",loc_time.msc,
           " | delta ms: ",delta,
           " | min max delta: ",mdelta[ArrayMaximum(mdelta)]," : ",mdelta[ArrayMinimum(mdelta)],
           "");
     }
  }
//+------------------------------------------------------------------+
int AvgDelta(int d)
  {
   int avgd=0;
   mdelta[n]=d;
   n++; if(n>=10) n=0;
   for(int i=0;i<10;i++) avgd+=mdelta[i];
   return(avgd/10);
  }
//+------------------------------------------------------------------+

原因: