Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
こんにちは。
トリプル指数平均に基づくEAは、最後のトレードがSLで取り出された場合、どのようにポジションを開くことを 禁止することができるのか、教えてください。
MQL5
通常モードでは問題ないのですが、最適化を開始した途端、実行のたびにエラーが出力され、出力もさ れなくなりました。
しかし、コードを実行することすらできないのが現状です。プログラムの周りにプリントを貼りましたが、出力はなく、実行のたびにエラーが出て終了してしまいます。
印刷がうまくいかないのはなぜですか?
MQL5
Expert Advisor は通常モードでは問題なく動作しますが、最適化を開始した途端、すべてのパスで配列の限界に 入ったと文句を言われます。
しかし、コードを実行することすらできないのが現状です。プログラムの周りにプリントを貼りましたが、出力はなく、実行のたびにエラーが出て終了してしまいます。
なぜPrintはうまくいかないのか?
配列の大きさを確認する必要があります。配列の外側に出力がある行が表示されます。ここで、この行の前にPrintを挿入する必要があります。この行には、配列のサイズとインデックスの出力を書き、それによって配列データにアクセスしようとしています。配列のサイズとインデックスがログに出力され、その後、プログラムはエラーで終了します。
しかし!この作業は、オプティマイザーではなく、ビジュアルモードのテスターで行ってください。オプティマイザー(および非ビジュアルモードのテスター)では、すべてのプリンターはアクセラレーションが無効になっています。
Print()に到達する前に配列の外側で終了します。
アレイのサイズを確認します。出力が配列の外にある行が表示されます。この行の前にPrintを挿入して、配列のサイズとインデックスの出力を書き、それによって配列データにアクセスしようとしているのです。
しかし!オプティマイザーではなく、ビジュアルモードのテスターですべて行う。オプティマイザー(および非ビジュアルモードのテスター)では、スピードアップのためにプリンターはすべてオフになっている。
これが問題で、ビジュアルにどんなパラメータを使ってもすべてうまくいくのですが、どんな最適化をしても範囲外になってしまうのです。
これは、ビジュアルに任意のパラメータを指定するとすべて動作するが、任意の最適化を行うと範囲外になる問題である
アレイには何があるのでしょうか?まだ配列にデータがないか、思ったより小さいかのどちらかだと推測されます。プログラムの中で、配列の大き さをチェックすることはありますか?
アレイには何が入っているのですか?まだ配列にデータが入っていないか、思ったより小さいかのどちらかだと推測できます。プログラムの中で、配列の大きさをチェックすることはありますか?
最後のNは、私は500、macdの値を持っており、サイクルの制限が厳しく、0より小さく、Nより大きくなることはできません、私はそれをデバッグと紙の上にカウントの両方を持っています。
最後のNは、私は500、macdの値を持って、ループの限界は厳密に制限され、0未満とN以上になることはできません、私はそれをデバッグと紙の上にカウントの両方があります
アクセスしたときに、アレイのデータがいっぱいになっていることは確認されていますか?データの有無、配列の値が正しいかどうかのチェックはありますか?
紙に書いて計算したからといって、EAが受け取った(受け取らなかった)ものと一致するわけではありません。
アクセスしたときに、アレイのデータがいっぱいになっていることは確認されていますか?データが利用可能かどうか、配列のサイズが適切かどうかのチェックはありますか?
紙に書かれて計算されているからといって、Expert Advisorが受け取った(受け取らなかった)ものと一致するわけではありません。
はい、最初に、すべての操作の前に、バッファからコピーされます。
はい、最初に、すべての操作の前に、バッファからコピーされます。
コピーしたものです。また、コピーされたものはどの程度チェックされているのでしょうか?
スムージング機能付きのインジケータを使用する場合、予想以上に多くのバーが必要になります。したがって、コピーしたからといって、データがコピーされ、フルサイズで利用できるわけではありません。
配列のサイズを 確認し、必要なサイズがない場合は OnTick() を終了させる方が簡単です。