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

 
tol64:

過去3回の取引履歴を聞く。

そして、歴史が一致しないことがわかります。つまり、ターミナルで見ることはできても、プログラム的に取得することはできないのです。

//---

これはバグなのでしょうか、それともデザインされたもので、マーケットが開いたときだけプログラム的にこれらの取引ができるようになったのでしょうか?

追伸:この方法も試しましたが、役に立ちません。

履歴を選択する際には、TimeCurrent()の代わりにTimeTradeServer() を使用します。
Документация по MQL5: Дата и время / TimeTradeServer
Документация по MQL5: Дата и время / TimeTradeServer
  • www.mql5.com
Дата и время / TimeTradeServer - Документация по MQL5
 
Valmars:
履歴を選択する際にTimeCurrent()の代わりにTimeTradeServer()を使用するようにしました。
ヴァレリーさん、ありがとうございます。はい、確かに、TimeLocal()は、どのタイムゾーンにいるかによって、間違った結果を表示する場合があります。そのため、TimeTradeServer() は取引履歴を要求するための最も正確なバリアントとなります。
 
tol64:.そのため、TimeTradeServer()は、取引の履歴を要求するための最も正確なオプションです。
コンピュータの時刻を同期させるだけで、そうでなければ、取引もできなくなるかもしれません。
 
Valmars:
コンピュータの時刻を同期させるだけで、そうでなければ、取引もできなくなるかもしれません。

これのことですか?:

正直なところ、トレードの全歴史ではなく、他のどんなケースで得られるのか、まだ分かっていないのですが...。

 

ログブックに表示されるこのメッセージは何を意味するのか、教えてください。

この現象は一度だけで、再び再現することはできなかった。

 

一度に2つの質問をさせていただきました。

最新のx32ビルドがインストールされています。もう2週間近く続いています。問題は昨日か一昨日から始まっています。つまり、それまでは同じビルドでも誤動作はなかったのに、急に始まったということですね?インジケーターも長い間、修正されていないんですよ。それも問題ないことがわかった。では、何なのか?時間枠から時間枠にバウンスするとき、いくつかの任意のケースでインジケータが 不正確に表示され、チャートが文字通りスライドダウンします。この時間枠を離れて戻ってくると、何も修正されず、誤った計算がまるでキャッシュのどこかに保存されているかのように、前回から修正されています。時々、ターミナルを再起動することで解決しますが、時々、対応する時間枠の病気の.hc ファイルでキャッシュフォルダを 手動で掃除する必要があります。今まではなかったことです。(念のため、ディスクにエラーがないかチェックし、デフラグを行いました。システムのパフォーマンスがわずかに向上しただけで、インジケータは以前と同じ計算を行いません)。

1.ビルドも同じインディケーターも以前はうまくいっていたのに、何が問題なのでしょうか?そろそろパソコンを廃品回収に出す時期ではないか?もしかして、RAMが「干上がって」しまって、大手を振っているのでは?

2.新しい履歴(週末に刻むなど)がない場合、非標準の時間枠に切り替えたとき、すでに以前に切り替えていて、適切な.hc-ファイルを 構築しているのに、なぜ以前と同じ「更新待ち」遅延が再び起こるのでしょうか。インジケーターがなくても、全く新しいチャートで!?

 
x100intraday:

一度に2つの質問をさせていただきました。

最新のx32ビルドがインストールされています。もう2週間近く続いています。問題は昨日か一昨日から始まっています。つまり、同じビルドで今まで誤動作がなかったのに、急に始まったということでしょうか。

私の問題でも、以前はエラー(Access violation read to 0x...)が発生せず、ターミナルアップデート 後に発生するようになった点で、皆さんと共通するところがあります。週末になると))
 
tol64:
私の問題と似ているのは、エラー(Access violation read to 0x... )が、ターミナルを更新して 以来、以前は発生せず、今になって発生し始めたことです。週末になると))
メイソンのプロッティングに違いない。外国為替を密かに支配しているのは、彼らなのだ...。
 
x100intraday:
フリーメーソンの策略に違いない。外国為替を密かに支配しているのは彼らなのだ...。
どうだろう。))誰かがあらゆる場所で何かを操っている。すべてがコントロールされ、すべてがコントロール可能なのです。一方がコントロールできないものは、他方がコントロールすることができる。自然なことだから当たり前。しかし、ここでは通常、そのようなことはありません。)))
 
MetaQuotes:

アプリケーションとコメントは用意されているのですが、なぜかプロフィールには表示されません。

必ずや解明する。

(苦笑) わかりました。まあ、今くらいがちょうどよさそうですね。:)

あるはずのないところにマイナスがある。以下は、この問題を再現するスクリプトです。

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   Print(FOrdType(-1));
  }
//---
string FOrdType(uint type)
  {
   string str="";
//---
   switch(type)
     {
      case ORDER_TYPE_BUY            : str="buy";             break;
      case ORDER_TYPE_SELL           : str="sell";            break;
      case ORDER_TYPE_BUY_LIMIT      : str="buy_limit";       break;
      case ORDER_TYPE_SELL_LIMIT     : str="sell_limit";      break;
      case ORDER_TYPE_BUY_STOP       : str="buy_stop";        break;
      case ORDER_TYPE_SELL_STOP      : str="sell_stop";       break;
      case ORDER_TYPE_BUY_STOP_LIMIT : str="buy_stop_limit";  break;
      case ORDER_TYPE_SELL_STOP_LIMIT: str="sell_stop_limit"; break;
      //---
      default: str="unknown_order_type: "+string(type); break;
     }
//---
   return(str);
  }

符号なし整数を受け取る関数に負の数を渡すと、ほら、そうだ。

そういうことは、コンパイル時に処理するべきだと思います。