【MQL5】 MT5のEA作成の勉強 その24 他の時間軸の移動平均線インジケータの作り方(3 / 3)※結論
前回と前々回で検討してきた他の時間軸の移動平均線インジケータの作り方をまとめます。前回、課題として残っていた部分を片付けた後、応用として他のインジケータ(パラボリックSAR)をマルチタイムフレーム化してみます。過去の投稿は以下を参照してください。
ITエンジニアが趣味で勉強したことを書き綴ります。PythonとMT5用言語のMQL5についての記事多めです。
前回と前々回で検討してきた他の時間軸の移動平均線インジケータの作り方をまとめます。前回、課題として残っていた部分を片付けた後、応用として他のインジケータ(パラボリックSAR)をマルチタイムフレーム化してみます。過去の投稿は以下を参照してください。
前回の投稿で、他の時間軸の移動平均線インジケータを作ろうとしたところ、テストはうまくいったのに実際にチャートに挿入すると意味不明な挙動を示しました。 今回はその原因を考察し、プログラムを修正してゆきます。どうも、配列の要素数が違ったのが原因のようです。
MT5のチャートに別の時間軸の移動平均線を表示することで、下記の投稿で扱ったマルチタイムフレーム分析(MTF分析)を使ったEAロジックの妥当性を検証しやすくなります。(MTF分析を行ったEAのテスター表示は時間軸ごとに別のチャートで表示されてしまいます。詳しくは下記投稿をご覧ください。)
ボリンジャーバンドは「 BASE_LINE 」「 UPPER_BAND 」「 LOWER_BAND 」の3本の線で構成されます。以下の投稿で、EA/インジケータに テクニカル指標を導入する方法を学びましたが、ボリンジャーバンドの様に一つの指標が複数の値を持っている場合のやり方をメモしておきます。
URL・パーマリンクの設定はSEOのために重要です。URLは簡潔で、人間が理解できるものが好ましいとされており、デフォルトのIDや投稿日のままにしておくのは好ましくありません。 そこで、以前の投稿からWordPressでパーマリンクを変更しようとしたのですが、何故か変更できずに詰まったのでメモしておきます。
ENUM_TIMEFRAMESを使って、マルチタイムフレーム分析 (MTF分析) を行います。MTF分析とは、上位足を見ることで、現在のチャートのトレンドが、長期的なトレンドに従っているかどうかを判断する手法です。そのために、任意の時間軸の価格やインジケーターを取得します。
取引時間の設定は、TimeCurrentまたはCopyTimeを使って、現在サーバーの時刻を取得することで行います。取引時間の設定を行う主な目的は、スプレッドの大きい時間に取引を行って、損失を出すのを防ぐためです。スプレッドが大きいと損失が出やすくなるので、この時間に取引を避ける戦略は重要です。
MQL5ではデバッグモードで変数の値を確認することができます。 前回の投稿で、 PositionModifyがうまく動かない原因を探るとき、様々な変数の確認を行ったのですが、以外に独特な仕様がいくつかあり、内容を確認できるまでに苦労したのでメモしておきます。
EAの成績を向上する上で極めて重要な、損切の設定について勉強したいと思います。損切方法は一般的には逆指値とトレーリングストップの二つがあります。今回はこれは使わずに、古典的にティックごとにポジションを更新するPositionModifyを使った方法を検討してゆきます。
MQL5既定のテクニカル指標は公式リファレンスのテクニカル指標のページにまとめられています。 これらの【i + {指標名}」であらわされるテクニカル指標はEA、インジケーターのどちらでも使うことができ、使い方も同じです。今回は、EA、インジケーターにMQL5既定のテクニカル指標を導入する方法をまとめてみたいと思います。