プログラムに間違いがあります。
1. バッファがリセットされてしまう場合がある。
プログラムに間違いがあります。
1. バッファがリセットされてしまう場合がある。
よろしければ、具体的にどの部分が問題で、どう変えれば正常に動くのか教えていただけますでしょうか。
逆方向から計算しているので、どう説明していいのやら...
通常の計算方法にプログラムを修正しておきました。動作確認はしていません。
正常に動作しています。助かりました。本当にありがとうございます。
逆方向から計算しているので、どう説明していいのやら...
すみません。また質問させてください。
フラクタルがやはり所々、表示されないバグが発生します。
標準のfractalインジケーターでは正常に表示されているのですが(私が確認した範囲内で)
Nagisa Unada さんが修正してくださったコードと、元のコードの両方とも所々表示されないバグがあります。
※修正後のほうが欠損は少なかったです。
私なりに標準のfractalインジケーターを参考にコードを書き直してみたりしましたが、解決しませんでした。
もしよろしければ、またお力を貸していただけないでしょうか。
Frames の値に応じて2本なら、
if(high[i] > high[i + 1] && high[i] > high[i + 2] && high[i] >= high[i - 1] && high[i] >= high[i - 2])
if(high[i] > high[i + 1] && high[i] > high[i + 2] && high[i] > high[i + 3] && high[i] >= high[i - 1] && high[i] >= high[i - 2] && high[i] >= high[i - 3])
プログラムの挙動はデバッグにより解析することができます。デバッグの方法を学習してください。
- www.mql5.com
Frames の値に応じて2本なら、
プログラムの挙動はデバッグにより解析することができます。デバッグの方法を学習してください。
回答ありがとうございます。最適化を手動でやることにはなりますが、標準のfractalのようにコードを書けばちゃんと表示されることが確認できました。
これからはそのようにコードを書いていきたいと思います。
ちなみに、なぜこのような問題が起こるのか、教えていただけませんか?
コンパイルエラーは出てませんし、大部分は表示てきているのに、一部だけ表示できない理由がわかりません。
今後のプログラミングのためにも、その理由をできれば知っておきたいです。
何故かと言われても「選別の方法が違うから」としか言いようがないです。
で、それを考えている内にあることが閃いたので試してみたらうまくいったみたいです。
何故かと言われても「選別の方法が違うから」としか言いようがないです。
で、それを考えている内にあることが閃いたので試してみたらうまくいったみたいです。
その手がありましたか。素晴らしい計算方法ですね。
私が見た限り、フラクタルが一部表示されない問題の原因は、i個前or後の高値安値を比べる時に><の不等式を使ってしまっていたことにあったようです。
これだとFrames以内に高値安値が同値のローソク足があった場合に表示されなくなってしまいます。
- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
右記のリンクにある"Advanced Fractals"というインジケーターがあるのですが、バックテストの最中(かなり序盤)で消えます。 https://www.mql5.com/en/code/19783
また、本来表示すべき場面で表示されないことも多々あります。
元のコードが原因なのか、私の環境の問題なのか、初心者なのでわかりません。
問題の解決方法、あるは正常に動作するパラメータの変更可能なフラクタル・インジケーターを紹介していただけると助かります。