MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1281

 
Nikolai Semko:

MT5以降、MT4の使用感がとにかくひどい。

ニコライさん、MT5でのOnCalculate 操作について質問です。

インジケータを起動すると、OnInitの 後にOnCalculateが 一度呼び出さ れるのでしょうか?それともインジケータがティックを待っているのか?

 
MakarFX:

これらの機能の違いは何か、わかりやすく説明してください。

視覚的には何の違いもないように見えます。ただし、理解できない場合: ||Order_Type==-1
 
MakarFX:

これらの機能の違いは何なのか、わかりやすく教えてください。

最初の関数を-1パラメータで呼び出すと、現在のシンボルによる端末内のすべての注文の数(種類に関係なく)が返されます。

2番目の関数は、パラメータとして渡されたタイプのオーダーの数だけを返します。

 
MakarFX:

これらの機能の違いは何なのか、わかりやすく教えてください。

何もありませんが、2番目のものを使いますが、挿入:||Order_Type==-1

Aleksei Stepanenko:
視覚的に違いはないようです。不可解なものを除く: ||Order_Type==-1.

パラメータに-1を設定すると、BuyとSellを考慮することになり、この関数はユニバーサルであるために非常に論理的である

 
Vitaly Muzichenko:

パラメータに -1 を指定すると,買いも売りも考慮されます。

あ~、なるほど、ありがとうございます。

 
Vitaly Muzichenko:

なし。ただし、2番目は挿入で使う:||Order_Type==-1

パラメータに-1を設定すると、BuyとSellを考慮することになり、この関数の汎用性には意味がある。

ありがとうございます。

 
Aleksei Stepanenko:

Nikolayさん、MT5のOnCalculateについて質問です。

インジケータ起動時、OnInitの 後にOnCalculateが 一度呼ば れるか?それともインジケータがティックを待っているのか?

OnInitが一度呼ばれた後、tick待ちをした後に、OnInitが呼ばれる。さもなければ,prevCalculated=0のとき,インジケータ生成の主要な最初のサイクルが出力で起こらない。
呼び出しの順番は、プリントでいつでも確認できます。
Print("1")。
Print("2")。
...
 
Nikolai Semko:
OnInitの後、tickを待った後、一回だけ呼ばれる。
...

ありがとうございます。4で問題なく動作する、不思議なインジケータがあります。ティックのないペアでは描画されませんでした。

ただし、開始時にOnCalculateを 表示する。もしかしたら、グラフの更新が必要なのでは?ChartRedraw?なぜなら、ダニが来たときだけ描画されるからです。
ファイル:
Mike.mq5  17 kb
 
Aleksei Stepanenko:

ありがとうございます!4では問題なく動作する私のインジケーターが変な挙動をしました。ティックのないペアでは描画されませんでした。

通常のデバッグを積極的に利用するようアドバイスしています。使い方がわからなければ、緊急に学ばなければなりませんが、何も難しいことはありません。エラーや質問の答えを探すのに手っ取り早い方法です。
 
Nikolai Semko:
通常のデバッグを積極的に利用することをお勧めします。

あのね、あなたがMT4にひどい思いをしたように、私も内心拒絶感を抱きながらMT5を使おうとしていて、それが の中で沸騰しているので、デバッグしている暇はないのです。