初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 554

 
Karputov Vladimir:
冗長にならないように -もちろん OnCalculateを呼び出すことは、ターミナル自体で呼び出すことを意味しますから。

まあ、自分でOnCalculateを呼び出す必要はなかったんですけどね。定期的にやっています。そして、結局のところ、私だけではない のです。

要するに、MT4で同じコードが問題なく動作し、MT5ではクラッシュしてしまうのです。5の行動を正すのだろうか?

 
comp:

まあ、自分でOnCalculateを呼び出す必要はなかったんですけどね。定期的にやっています。そして、結局のところ、私だけではない のです。

要するに、MT4で同じコードが問題なく動作し、MT5ではクラッシュしてしまうのです。5の挙動を修正するのだろうか?

OnCalculateの最初の呼び出しの後にのみ、インジケータで作業することができます - なぜなら、インジケータの環境の準備を保証するのはOnCalculateだからです。
 
Karputov Vladimir:
OnCalculateで最初に実行した後にのみ、インジケータで作業することができます - それは、インジケータ環境の準備を保証するOnCalculateであるため。
上記のコードは、このルールがMT4でのみ機能することを示しています。MT5では違います。
 
comp:
上記のコードは、このルールがMT4でのみ機能することを示しています。MT5では異なります。
もう一度言いますが、OnCalculateの 最初のエントリだけが、環境準備を保証します。
 
Karputov Vladimir:
もう一度言いますが、OnCalculateへの最初の入力だけが、環境の準備を保証します。

あなたは私を挑発して議論をさせようとしていますが、これは「モデレーターと議論する」というルールに該当し、禁止されることになります。私はあなたと議論するつもりはありません。

あなたと違って、私は私の言っていることを完全に確認するコードを提供しています。理解したい人は、コードを実行して、私の言葉が真実であることを確認してください。

 
Maria Baburina:

こんにちは、この問題に遭遇しました。

プログラムには、ある変数(ある注文の利益を計算する変数)が、他のいくつかの変数からの式より小さければ、次にいくつかの関数が実行される、という条件がある。

何をどのように計算しているのか、一度に説明すると長くなるので割愛します。おそらく、私が知らないだけで、答えはとてもシンプルなものでしょう:)

そのため、プログラムを実行 するとこの条件が成立してしまいますが、実際には最初の変数がもう一方の変数よりもずっと大きいのです(例えば、テスターでは 146.3412 と 0.41 という値を出力していました)。

この条件の変数はすべてdouble型であり、別々に正しく計算される。

関連性がありそうなものを教えてください。

何が問題なのか?
 
Vladimir Zubov:
何が問題なのか?
具体的な数値では、146.3412 < 0.41と書かれています。

このエラーで別のコードを書いて確認する
 
comp:

あなたは私を挑発して議論をさせようとしていますが、これは「モデレーターと議論する」というルールに該当し、禁止されることになります。私はあなたと議論するつもりはありません。

あなたと違って、私は私の言っていることを完全に確認するコードを提供しています。理解したい人は、コードを実行して、私が言ったことが本当かどうか見てください。

この議論は司会者との議論とみなされるべきではない。なぜなら、ウラジーミルは現在の対話において司会者の機能を果たしていないからである。単なるプログラマー同士の言い争いに過ぎない。
 
Alexey Viktorov:
この議論は司会者との議論と見なすべきではありません。なぜなら、ウラジミールは現在の対話において司会者としての機能を果たしていないからです。単なるプログラマー同士の言い争いに過ぎない。
しかし、モデレーターと話すときに、自分の技術的なポイントを守ろうとして、何度も出入り禁止にされたことがあるんです。そして、「モデレーターと口論」という倫理に反する行為で非難される。同じ熊手を踏むつもりはない。
 
comp:
しかし、モデレーターと話すときに、自分の技術的なポイントを守ろうとして、何度も出入り禁止にされたことがあるんです。そして、「モデレーターと口論」という倫理に反する行為で非難される。同じ熊手を踏むつもりはない。

その主張を読みました。しかし、それは議論ではなく、説明を理解しようとせず、端末の非を証明しようとしたに過ぎないのです。あなたの言葉には、何の裏付けもありませんでした。スクリーンショットを作って、自分の考えを明確に説明するのが面倒なんでしょう。

開発者が自分よりバカであることを証明しようとしてはいけないし、報復もない。

MT4がMT5のように動作しない場合、MT5が正しく動作しないとは限りません。

理由: