エラー、バグ、質問 - ページ 1807

 

念のため

買い取引開始

2017.02.15 15:16:39.662 Trades  '5246495': instant buy 1.00 EURUSD at 1.05572
2017.02.15 15:16:40.944 Trades  '5246495': accepted instant buy 1.00 EURUSD at 1.05572
2017.02.15 15:16:40.944 Trades  '5246495': deal #117730573 buy 1.00 EURUSD at 1.05572 done (based on order #134121208)
2017.02.15 15:16:40.944 Trades  '5246495': order #134121208 buy 1.00 / 1.00 EURUSD at 1.05572 done in 1284.090 ms

匠が掛ける


2017.02.15 15:16:41.720 Trades  '5246495': failed instant buy 1.00 EURUSD at 1.05574 (deviation: 16) [No prices]
2017.02.15 15:16:42.735 Trades  '5246495': failed instant buy 1.00 EURUSD at 1.05575 (deviation: 16) [No prices]
2017.02.15 15:16:43.749 Trades  '5246495': failed instant buy 1.00 EURUSD at 1.05575 (deviation: 16) [No prices]
2017.02.15 15:16:44.760 Trades  '5246495': failed instant buy 1.00 EURUSD at 1.05577 (deviation: 16) [No prices]
2017.02.15 15:16:45.774 Trades  '5246495': failed instant buy 1.00 EURUSD at 1.05577 (deviation: 16) [No prices]
2017.02.15 15:16:46.789 Trades  '5246495': failed instant buy 1.00 EURUSD at 1.05575 (deviation: 16) [No prices]
2017.02.15 15:16:47.804 Trades  '5246495': failed instant buy 1.00 EURUSD at 1.05577 (deviation: 16) [No prices]
2017.02.15 15:16:48.818 Trades  '5246495': failed instant buy 1.00 EURUSD at 1.05577 (deviation: 16) [No prices]
2017.02.15 15:16:49.831 Trades  '5246495': instant buy 1.00 EURUSD at 1.05577 (deviation: 18)
2017.02.15 15:16:49.891 Trades  '5246495': accepted instant buy 1.00 EURUSD at 1.05577 (deviation: 18)
2017.02.15 15:16:49.892 Trades  '5246495': order #134121233 buy 1.00 / 1.00 EURUSD at 1.05577 done in 61.372 ms
2017.02.15 15:16:49.893 Trades  '5246495': deal #117730596 buy 1.00 EURUSD at 1.05577 done (based on order #134121233)
 
Vladislav Andruschenko:

念のため

OK、BODに追加。

貿易バグは何よりも心配です。1531+にアップデートして、ログがより完全なものになるようにしました。

 
2017.02.16 08:53:03.158 Network '2250': disconnected from FXOpen-MT5
2017.02.16 08:53:03.285 MQL5    wrong type, loading of Test failed
2017.02.16 08:53:03.813 Network '5122740': authorized on MetaQuotes-Demo through Access Point EU Amsterdam (ping: 50.93 ms)

何ですか?

唯一のチャートで何も動いていない。このメッセージは、アカウントを切り替えると必ず表示されます。

削除済み  

スラワ さん、同期はTimeCurrent()にまで及ぶのですか?昨晩22時45分に端末の電源を切った。今朝、電源を入れました。市場はまだ閉じています。フォルツァモスクワ時間10:00のマーケットオープンの前に刻みが入ります。各Tickの情報はOnBookEvent()で処理される。問題は、冗長な同期チェックにも関わらず

bool GetRatesTotal( int& rates_total )                          // Количество просчитанных баров (out)
        {
         //--- Проверка переданного значения
         if( rates_total > 0 )                                                          // Если передано корректное значение
                 return( true );                                                                        // Возвращаем истину
         //--- Проверка синхронизации
         bool isSync = SymbolIsSynchronized( _Symbol );
         bool sync = (bool)SeriesInfoInteger( _Symbol, _Period, SERIES_SYNCHRONIZED );
         //---
    if( !isSync || !sync )                                                              // Если история не синхронизирована
        {
         Print( __FUNCTION__,": ОШИБКА РАССИНХРОНИЗАЦИИ! isSync = ",isSync,", sync = ",sync,", rt = ",rates_total );
         return( false );                                                                       // Выходим с ошибкой
        }
    //--- Определим число просчитанных баров
         rates_total = Bars( _Symbol, _Period );                // Определяем число баров
         if( rates_total <= 0 )                                                         // Если синхронизация не произведена
                {
                 Print( __FUNCTION__,": ОШИБКА #",GetLastError(),": Синхронизация по Bars() не пройдена!" );
                 return( false );                                                                       // Возвращаем ложь
                }
         else                                                                                                   // Если значение получено
                 return( true );                                                                        // Возвращаем истину
        }

に続いて、時刻と現在のSYMBOL_SESSION_...を要求する。値 - TIME CAME NOT CORRECT = TERMINAL CLOSED TIME、すなわち22:45!その結果、ファイルへの入力が曲げられ、読み取りが混乱する。TimeCurrent()関数で同期を確認してください!

追加されました。

関数に渡される引数rates_totalの値は、常に=0です!つまり、同期が確認されているのです

 
Alexey Kozitsyn:

TIME IS NOT CORRECT = TERMINAL CLOSED TIME、すなわち22:45。

トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム

バグ、バグ、質問

fxsaber さん 2017.02.14 15:40

Metaquotes-DemoでMOEX-symbolのみをMarket Watchに残した場合、TimeCurrentは15分遅れとなります。FOREXシンボルが1つ追加されると同時に、TimeCurrentは一気に15分先にジャンプします。
削除済み  
fxsaber:

これは本当の開き直りです、そこにFOREXの文字が追加されることはまずありえません......。しかし、もしそうなら、TimeCurrent() は今本当に曲がっているはずで、それさえもあらゆる手段で同期させることはできないのだ!

ここでもし、SYMBOL_SESSION_...を追加するとします。のデータを実際の到着時刻に付加すれば、このような問題は起きないはずです。そして、TimeCurrent()で松葉杖を作らなくて済むようになるのです。

削除済み  
fxsaber:

ちなみに、証券取引所からの見積もり遅延は15分なので、おっしゃるようなケースは極めて論理的です。為替による遅れはないので、時間は為替によって調整されます。しかし、当然ながらこれは誤りです。つまり、TimeCurrent() は異なる市場間で「ナビゲートしない」のです。

TimeCurrent()が流動性プロバイダから来る可能性もある。そして、その流動性はさまざまなところから集められます。

 
Alexey Kozitsyn:

ちなみに、証券取引所からの見積もり遅延は15分なので、おっしゃるようなケースは極めて論理的です。外為からの遅延はないので、外為に応じて時間を調整する。しかし、当然ながらこれは誤りです。つまり、TimeCurrent()は異なる市場間で「ナビゲートしない」のです。

TimeCurrent()が流動性プロバイダから来る可能性もある。そして、その流動性はさまざまなところから集められる。

_TimeCurrent = MathMax(SymbolInfoInteger(Symbol1, SYMBOL_TIME), SymbolInfoInteger(Symbol2, SYMBOL_TIME), ...);
削除済み  
fxsaber:
_TimeCurrent = MathMax(SymbolInfoInteger(Symbol1, SYMBOL_TIME), SymbolInfoInteger(Symbol2, SYMBOL_TIME), ...);
アイデアありがとうございます!SYMBOL_TIMEとTimeCurrent() を比較してみますね。もしかしたら、違いが出てくるかもしれませんが...。
削除済み  
Alexey Kozitsyn:
SYMBOL_TIMEとTimeCurrent()を比較してみる必要がありそうです。もしかしたら、違いが出てくるかもしれませんが...。

おお...こんなに早く実現するとは思っていなかった。

2017.02.16 12:47:37.575 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:47:35 2017.02.16 10:47:36)
2017.02.16 12:47:37.575 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:47:35 2017.02.16 10:47:36)
2017.02.16 12:47:37.575 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:47:35 2017.02.16 10:47:36)
2017.02.16 12:47:37.575 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:47:35 2017.02.16 10:47:36)
2017.02.16 12:47:37.575 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:47:35 2017.02.16 10:47:36)
2017.02.16 12:47:37.575 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:47:35 2017.02.16 10:47:36)
2017.02.16 12:47:52.889 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:47:51 2017.02.16 10:47:52)
2017.02.16 12:47:52.890 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:47:51 2017.02.16 10:47:52)
2017.02.16 12:47:52.890 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:47:51 2017.02.16 10:47:52)
2017.02.16 12:47:52.890 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:47:51 2017.02.16 10:47:52)
2017.02.16 12:47:52.890 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:47:51 2017.02.16 10:47:52)
2017.02.16 12:47:52.890 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:47:51 2017.02.16 10:47:52)
2017.02.16 12:48:06.890 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:48:05 2017.02.16 10:48:06)
2017.02.16 12:48:06.890 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:48:05 2017.02.16 10:48:06)
2017.02.16 12:48:06.890 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:48:05 2017.02.16 10:48:06)
2017.02.16 12:48:06.890 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:48:05 2017.02.16 10:48:06)
2017.02.16 12:48:06.891 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:48:05 2017.02.16 10:48:06)
2017.02.16 12:48:06.891 GetTimeCurrent: ВНИМАНИЕ! timeCurrent < timeSymbol (2017.02.16 10:48:05 2017.02.16 10:48:06)

端末の電源投入時、オフ。明らかなTimeCurrent() エラー!