WindowsのローカルタイムをMT5サーバーと同期させる - ページ 12

 

BCSのみんな、本物のアカウントを持って いる。

実際のアカウントでコードを実行し、その結果をここに投稿してください。

#property copyright "Copyright 2017, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   MqlTick post_ticks[];
   string symbol = "Si-3.17";
   ulong from = ulong(D'2017.01.20 23:49:00') * 1000;
   int result=CopyTicks(symbol, post_ticks, COPY_TICKS_ALL, from, 2000);
   if(result > 0)
   {
     string str="";
     int f_handle=FileOpen("Si-3.17_ticks.txt",FILE_WRITE|FILE_ANSI|FILE_TXT);
     if (f_handle != INVALID_HANDLE)
     {
       FileWrite(f_handle, "Symbol\tTime\tLast\tFlags");
       for(int i = 0; i< result;i++)
       {
         if(post_ticks[i].flags == 88)
         {
         str=symbol + "\t" + string(post_ticks[i].time) + "." +
             string(post_ticks[i].time_msc%1000) + "\t" + string(post_ticks[i].last) +
             "\tПродажа";
         }
         else
         if(post_ticks[i].flags == 56)
         {
           str=symbol + "\t" + string(post_ticks[i].time) + "." +
             string(post_ticks[i].time_msc%1000) + "\t" + string(post_ticks[i].last) +
             "\tПокупка";
         }
         else
         {
           str=symbol + "\t" + string(post_ticks[i].time) + "." +
             string(post_ticks[i].time_msc%1000) + "\t" + string(post_ticks[i].last) +
             "\t" +  string(post_ticks[i].flags);
         }    
         FileWrite(f_handle, str);    
       }
       FileClose(f_handle);
     }
   }
//---
   return(INIT_SUCCEEDED);
  }
 
最初のトランザクションで同期が行われる(現時点では、明確化されるまでお待ちください)
ファイル:
 
prostotrader:

そんなに早く解決することはないでしょう :(

追加

なぜこうなるのか、理由がわかった気がします

取引所からのディールとクォート(注文)が異なる流れでやってくることです。

と、サーバー上ではそれぞれ別の機能で処理されます。ディールを担当するもの

が正しく動作し、履歴に保存されます。

(496,357回の取引で一度も飛ばしていないことからもわかるように)、その責任者は

受注生産はあまりよくないですね...。

以下は、BODとのやり取りの抜粋です。

Support Team 2016.12.14 14:17

1. Тики (а также буки, текущие цены из маркет вотча) обновляются/собираются независимо от работы индикаторов/экспертов. Также независимо от экспертов строятся бары.

2. А вот расчет индикаторов происходит в потоке построения баров. То есть после каждого применения тика к бару - вызывается расчет индикатора! При этом ни один тик не пропускается.

3. Отсюда получается, что вызывая из индикатора CopyTicks вы можете получать более свежие тиковые данные (а также буки, значения из маркет вотча), чем те, что уже применены к барам.

Это нужно учитывать в расчетах: либо вы анализируете тики, либо бары, либо если нужно и то и другое, то кому то нужно отдать приоритет (для случая последнего бара).

4. Особенно это начинается сильно проявляется если расчет индикатора делается долго.
 
Alexey Kozitsyn:

参考までに、SRとのやりとりの抜粋をここに記しておく。

2. А вот расчет индикаторов происходит в потоке построения баров. То есть после каждого применения тика к бару - вызывается расчет индикатора! При этом ни один тик не пропускается.
EURUSD M1でスローインジケータを動かして います。別のEURUSD M1チャートでEAを実行します。また、EAがバーヒストリーを使用する場合、常にクラッシュが発生します。
 
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

追加

3ヶ月間、すべてが自動的に行われるようにBRを削除しようと思います :)

ファイル:
 

新ビルド1525の項目11の発表より

MQL5: Исправлена ошибка, в некоторых случаях приводившая к пропуску тиков в тиковой истории.


でも、SDは全然書いてないんですよ。

先ほどは「穴」があったのですか?

 
prostotrader:

新ビルド1525の項目11の発表より

MQL5: Исправлена ошибка, в некоторых случаях приводившая к пропуску тиков в тиковой истории.


でも、SDは全然書いてないんですよ。

先ほどは「穴」があったのですか?

以前は、確かにありました。TRADEティックという点では......確かに。ビルド1495では、より良くなっています。
 
Alexey Kozitsyn:
さっき......確かにそうでした。TRADEティックという点では......確かに。ビルド1495では、より良くなっています。

約50万件の取引に漏れは見つかりませんでした。

どうやらINFO(命令)以外は直していないようだ...。

でも、やっぱりプログレッシブがあるのはいいことです。

追加

この重要な問題に対して、フォーラム参加者(FORTS)が弱いのは残念なことです。

BCSからは誰もテストを投稿していない。

データが多ければ多いほど、早く修正することができるのです。

 
prostotrader:

約50万件の取引に漏れは見つかりませんでした。

どうやらINFO(命令)以外は直していないようだ...。

でも、やっぱりプログレックスがあるのはいいことです。

そうです、大きな進歩です。しかし、リアルタイムで同期を行うには(ローソクの刻みとvolume[]から得られる出来高を照合する) - 多くの松葉杖を置く必要があります。今のところ、この疑問は私の中で完全に解決したわけではありません。SDは返事が来なくなった :)
 
prostotrader:

約50万件の取引に漏れは見つかりませんでした。

どうやらINFO(命令)以外は直していないようだ...。

でも、やっぱりプログレッシブがあるのはいいことです。

追加

この重要な問題に対して、フォーラム参加者(FORTS)が弱いのは残念なことです。

BCSからは誰もテストを投稿していない。

データが多ければ多いほど、早く修正することができるのです。

BCSからの歴史は、オトクリティの同時期よりもジャム量が多かった。今年はまだテストをしていない。