FX

MT4の一目均衡表の設定とFX自動売買で値を照合する手順

一目均衡表の線と雲を確認する説明用生成画像

MT4の一目均衡表は、標準インジケーターのIchimoku Kinko Hyoから表示できます。まず期間を9・26・52にそろえ、線の色と表示対象を確認しましょう。FX自動売買へ使うときは、画面で交差して見えることだけで判断せず、銘柄・時間足・参照した足をそろえて数値を照合します。

特に先行スパンと遅行スパンは、計算した足と描かれる場所がずれます。表示の前後関係を理解しないまま、完成した過去チャートから売買条件を作ると、意図した時点の判定と食い違う可能性があります。この記事ではWindows版MT4の標準版を基準に、設定から発注しない値の確認まで進めます。

この記事のポイント
  • 標準の一目均衡表を表示し期間と色を設定する手順
  • 転換線・基準線・雲・遅行スパンの役割の違い
  • 表示位置と計算対象の足を混同しない確認方法
  • 確定足の値をデータウィンドウとコードで照合する手順

MT4の一目均衡表をFX自動売買用に設定する

期間設定と色の設定を分けた一目均衡表の説明用生成画像
期間の設定と線の見た目を別々に確認します(説明用の生成画像)

標準のIchimokuをチャートへ追加する

対象銘柄のチャートを開き、上部メニューの「挿入」から「インディケータ」→「トレンド」→「Ichimoku Kinko Hyo」と進みます。ナビゲーターのインディケーター一覧から同じ標準指標を選んで追加する方法もあります。表示名が英語でも、一目均衡表の標準指標です。

設定画面が開いたら、まず対象のチャートと時間足を確認します。別窓のチャートを選んだまま追加すると、EAが動くチャートと見比べる対象がずれてしまいます。似た銘柄の接尾辞や、同じ通貨ペアの異なる時間足にも注意してください。

最初の確認では、同じ指標を重ねて何個も追加しないようにしましょう。既存の指標がある場合は、表示中のインディケーター一覧などで名称と設定を確認します。名前が似たカスタム版は、標準版と同じ計算・表示とは限りません。

追加経路と設定タブはOANDA証券のMT4操作ガイドで確認できます。同ページは操作の参照先であり、同社の口座開設条件をこの記事で案内するものではありません。

9・26・52と表示選択を確認する

標準設定では、転換線の期間が9、基準線が26、先行スパンBが52です。ここでの数値は、選択した時間足の本数です。日足で9本と、5分足で9本では、見ている期間の長さが違います。時間足を変えても同じ市場期間を比較しているとは限りません。

色の設定では、それぞれの線を背景から区別できるようにします。線を見えなくしたことと、EA側の計算が無効になったことは同じではありません。視認性を整える変更と、期間などの計算条件を変える操作を分けておくと、後の検証がしやすくなります。

表示選択では、表示する時間足とデータウィンドウへの表示を確認します。特定の時間足へ切り替えたときだけ消える場合、指標が壊れたと決める前に、この設定を見直してください。データウィンドウへ値を出しておくと、線の見た目だけでなく数値を照合できます。

最初から最も有利に見える期間を探すより、まず標準設定で表示と値が一致するかを確認しましょう。期間を変える場合は、一度に複数の条件を変えず、変更前後でどの足のどの値が変わるかを追います。設定値を選んだだけで、運用成績の良さを証明できるわけではありません。

五本の線と雲を読み分ける

五本の線と二本の間の雲を区別する説明用生成画像
雲は先行スパン二本の間で、独立した六本目の線ではありません(説明用の生成画像)

転換線と基準線は、対象期間の最高値と最安値の中間を表します。終値を足し合わせる単純移動平均と同じ計算ではありません。線が横ばいだから価格も動いていない、と決めるのではなく、期間内の高値と安値の組合せから値を確認します。

先行スパンAは転換線と基準線の中間、先行スパンBは別の期間の高値・安値の中間を使い、前方へずらして表示します。この二本の間が雲です。遅行スパンは終値を後方へずらした表示です。それぞれが使う価格と表示位置を分けて覚えると、計算確認の対象を選びやすくなります。

構成主な計算材料確認するときの注意
転換線短い期間の最高値と最安値終値の平均と取り違えない
基準線基準期間の最高値と最安値転換線と同じ足で比較する
先行スパンA転換線と基準線の中間計算した足と表示位置を分ける
先行スパンB長い期間の最高値と最安値Aと同じ時点の値か確認する
遅行スパン終値後方表示を過去時点の既知情報と混同しない

構成の定義はMetaTrader 4公式の一目均衡表の説明を参照してください。本記事では、これらの表示が将来の値動きや売買の成功を保証するとは扱いません。線の名称と計算を理解することが最初の段階です。

先行・遅行の表示位置を切り分ける

線を計算した足と前後へずらす表示位置を区別する説明用生成画像
数値を計算した足と、その値を描く横位置は別に確認します(説明用の生成画像)

先行スパンがチャートの右側に描かれていても、将来の市場価格を取得しているわけではありません。過去と現在に得られる材料から計算した値を、前方へ描いています。「先行」という名称を、その先で必ず価格が反応するという保証に読み替えないようにします。

遅行スパンも、線が置かれた過去の横位置と、その値を計算する終値の時点を分けます。完成したチャートを後から見ると、過去のある足の横へ、その足より後の終値に由来する線が描かれています。その見た目を当時の時点で利用できた情報と決めて条件を作るのは避けたいところです。

EA側では「どの足の価格」と「どの計算時点の線」を比べたいのかを文章で定めます。先行・遅行の横位置と、関数へ渡すshiftを一律の数だけで対応させず、対象とする実装の値を時刻付きで照合してください。転換線・基準線の確認から始めると、表示移動の問題を分けられます。

標準版と表示位置を修正したカスタム版を混在させる場合にも注意が必要です。OANDAは独自の修正版一目均衡表で表示位置の違いを説明しています。特定の版を推奨するためではなく、名前や期間が同じだけでは実装一致を確認できない例として参照してください。

表示されない原因を順番に調べる

線が出ない場合は、まず追加先のチャート、表示対象の時間足、線色、表示中の指標一覧を確認します。背景と同じ色、極端に細い線、別の窓への追加といった表示設定の問題を、計算データの問題と分けて調べましょう。

次に、選んだ銘柄と時間足で十分な過去データが読み込まれているかを確認します。長い期間の線には、その計算に必要な本数が要ります。追加直後や履歴の少ない環境で値がそろわない場合も、すぐに期間を短くして見た目だけを出すのではなく、データの取得状況を見ます。

チャートの右端に余白が足りず先行部分が見づらい場合は、表示範囲やチャートシフトを確認します。ここでも、画面上の余白調整と指標の計算期間変更を同じ操作として扱わないことが大切です。見やすさを整えた後に、実際の値も確認します。

MT4の一目均衡表を同じ足で照合する

同じ足の時刻を選んでデータウィンドウの値を照合する説明用生成画像
同じ銘柄・時間足・足時刻の数値を比較します(説明用の生成画像)

データウィンドウで対象時刻を固定する

データウィンドウを開き、まず一つの過去の足へポインターを合わせます。確認する組は、銘柄、時間足、足の時刻、指標の期間、線の名称、数値です。画面の左から何本目かだけで対象を決めると、スクロールや新しい足の追加で対応が崩れます。

最初は前方や後方へ移動しない転換線と基準線を確認します。同じ足の値を読めたら、二本の上下関係を数字で判断します。表示桁で丸められている値と内部の計算値には差が見える場合があるため、桁数と必要な許容差もそろえてください。

たとえば説明用の仮定として、対象9本の最高値が150.40、最安値が149.80なら、その中間は150.10です。これは運用例や実測相場ではありません。転換線の値を検算するときは、このように対象期間の高値・安値をそろえ、終値の平均を計算していないかを確認します。

実際の表示項目と操作は、MT4のデータウィンドウで数値を確認する方法も参照してください。データウィンドウに値が出たことと、EAが同じ条件でその値を読んでいることは別に照合します。

確定足と形成中の足を混ぜない

確定した足と形成中の足を区別する説明用生成画像
形成中の足の変化と、確定した足での判定を分けます(説明用の生成画像)

MQL4の時系列では、通常0が形成中の足、1が一つ前の足を指します。形成中の高値・安値や終値を材料にする値は、ティックの到来で変わり得ます。画面で一瞬交差したものが、足の確定時には交差していないこともあります。

「足が閉じた時点で判定する」仕様なら、確認する足と判定のタイミングを明確にします。ただshiftを1へ変えればすべての問題が解決する、というものではありません。上位足を使う場合は、下位足の確定と上位足の確定が同時とは限らないためです。

また、形成中の値が変わったことをすべてリペイントと呼ぶと、問題の原因が分からなくなります。未確定データを参照しているのか、表示移動があるのか、過去の判定値が後から変更されたのかを分けます。今回の照合では、まず一つの確定した足へ対象を固定しましょう。

複数時間足を組み合わせる場合の時刻合わせはEAのマルチタイムフレームで確定足をそろえる方法を参照してください。一目均衡表だけに特別な確定の仕組みがあると考えず、参照する価格系列を確認します。

iIchimokuで転換線と基準線を読む

MT4の標準一目均衡表の値は、MQL4のiIchimokuで取得できます。引数には、銘柄、時間足、三つの期間、線を指定するmode、参照位置のshiftを渡します。まずは画面の設定と同じ9・26・52を使い、同じ時間足の転換線と基準線を読む例から始めます。

下は発注しない学習用スクリプトです。現在のチャートの一つ前の足について、時刻、転換線、基準線を表示します。ご自身のMetaEditorでコンパイルを確認し、検証用チャートで試してください。完成した売買EAや、ここで実機確認済みのプログラムとして扱うものではありません。

#property strict

void OnStart()
{
   string s = Symbol();
   int tf = Period();
   int shift = 1;
   if(iBars(s, tf) < 53)
   {
      Print("Insufficient history. No trade.");
      return;
   }
   datetime barTime = iTime(s, tf, shift);
   if(barTime == 0)
   {
      Print("Bar time unavailable. No trade.");
      return;
   }
   ResetLastError();
   double tenkan = iIchimoku(s, tf, 9, 26, 52, MODE_TENKANSEN, shift);
   double kijun = iIchimoku(s, tf, 9, 26, 52, MODE_KIJUNSEN, shift);
   int err = GetLastError();
   if(err != 0 || tenkan == EMPTY_VALUE || kijun == EMPTY_VALUE)
   {
      Print("Indicator read requires inspection: ", err);
      return;
   }
   Print("Symbol=", s, " Timeframe=", tf,
         " Bar=", TimeToString(barTime, TIME_DATE|TIME_MINUTES),
         " Shift=", shift);
   Print("Tenkan=", DoubleToString(tenkan, Digits),
         " Kijun=", DoubleToString(kijun, Digits));
}

出力した足時刻にデータウィンドウを合わせて、二本の数値を比較します。スクリプト実行後に新しい足ができた場合は、画面上の「一つ前」ではなく、出力された時刻を手掛かりに探してください。shiftは実行した時点の相対位置であり、ずっと同じ足を指し続ける番号ではありません。

コードは最低本数や読取エラーを確認していますが、得られた値の正しさをすべて保証する検査ではありません。十分な履歴、対象銘柄の一致、実装の一致を確認し、ゼロや想定外の値が出た場合は判定へ進まず読み取り状況を調べます。

引数と線の指定はiIchimokuの公式仕様と指標線の定数一覧、足時刻の取得はiTimeの公式仕様を参照してください。

上下関係とクロスの判定を分ける

同じ足の判定を画面と計算結果で照合する説明用生成画像
数値の一致を確認してから、条件の成立時点を比べます(説明用の生成画像)

「転換線が基準線より上にある」状態と、「今回の足で下から上へ交差した」出来事は別の条件です。前者を毎ティック判定するだけでは、同じ上下関係の間に何度も条件が成立します。クロスを使いたいなら、前の足と今回の足で位置関係がどう変わったかを定めます。

たとえば、前の確定足では転換線が基準線以下、次の確定足では転換線が基準線より上、という定義にすれば、単なる上側の状態と区別できます。同値をどちらへ含めるかも仕様の一部です。見た目の線の太さでは決めず、数値の比較条件として固定します。

雲の上か下かを使う場合も、比較する価格が終値なのか高値なのか、同じ横位置のどちらの先行スパンなのかを具体化します。雲の上下端を固定の線名で決めず、その時点の二つの値の大小で整理する必要があります。表示移動を含む取得は、対象実装との照合を済ませてから追加してください。

複数条件を一度に入れると、注文が出なかった原因が分からなくなります。まず転換線と基準線の読取を確認し、次に上下関係、その次にクロスという順に、発注しない状態で比較しましょう。注文処理を追加するのは、値と条件成立時刻を説明できてからです。

MT4の一目均衡表は時刻をそろえて使う

確認を終える基準は、標準版の名称、三つの期間、銘柄、時間足、足時刻、線の値が対応していることです。その上で、未確定足を使うか、クロスをどのタイミングで認定するか、同じ条件で何回注文を許すかを別に決めます。設定画面の完成と売買ルールの完成を同一にしないことです。

過去検証では、完成後の線だけを眺めて成績を判断せず、その時点までに使えたデータで同じ条件が成立するかを確認します。ビジュアルモードなどで一つずつ追う場合は、MT4のビジュアルモードで条件を照合する手順が参考になります。

一目均衡表を表示できても、その組合せが有利な戦略かは別の問題です。期間を変えた結果だけでなく、費用、損切り、連敗や相場変化を含めた検証が必要になります。この記事の数値照合は、その前提となる入力の確認を目的にしています。

MT4の一目均衡表をFX自動売買に使うときは、線の見た目から一足飛びに発注条件へ進まず、同じ足の同じ値を読めることから確かめましょう。特に先行・遅行の表示移動を区別し、画面とコードの対象時刻をそろえることが、判定のずれを減らす基本です。

EA作成ツールの検証範囲を確認する

生成コードの動作テスト・コンパイル結果と、その限界 →記事内の戦略や個別のEAの収益性を検証した結果ではありません。

学んだルールを、形にしてみよう。

EA作成ツールを開く ↗