コンテンツにスキップ

【移植#07】一目の幅(水平時間差) — 雲のクロスからの変化日

Ichimoku Width

一目の幅インジケータ(2つのサブウィンドウで表示)

この記事の3行まとめ

  • 📏 一目均衡表の「横幅(時間的な長さ)」を可視化するユニークな指標
  • ⏱️ 転換線や先行スパンAが、ある基準レベルから離れてどれくらいの時間が経過したかを計測
  • 🧩 パラメータ設定により、TK幅と雲幅を別々のサブウィンドウに表示可能

概要

この記事は、fai様が2009年に公開された記事 「一目の幅・・?」 のインジケータ(ichi_Width.mq4 / ichi_hist.mq4)をMQL5に移植・解説するものです。

「一目の幅」と聞くと、通常は「雲の厚さ」や「転換線と基準線の乖離」といった垂直方向(価格差)をイメージします。 しかし、このインジケータは水平方向(時間差)に着目した非常に珍しいロジックを持っています。


ロジック解説

垂直ではなく「水平」を見る

このインジケータが計算しているのは、以下の値です。

「現在価格(または転換線)が、現在の基準線レベルとクロスしてから何本経過したか?」

図で考えるとわかりやすいです。

  1. 一目均衡表の基準線(Kijun Sen)先行スパンB(Span B)は、相場がレンジや保ち合いになると水平(フラット)になります。
  2. この「水平なライン」から、転換線や先行スパンAが上下に離れて推移します。
  3. この「離れている期間(本数)」をカウントし、ヒストグラムとして表示します。
  4. 基準線がカクっと段差を作って動くと、カウント対象のレベルも変わるため、ヒストグラムはリセットされたり急変動したりします。

結果として、ノコギリ状(Sawtooth)の特徴的な波形が描かれます。

graph TD
    A[現在の基準線レベルを取得] --> B[過去に遡る]
    B --> C{"転換線が<br>そのレベルを<br>クロスしたか?"}
    C -- Yes --> D[経過本数をプロット]
    C -- No --> B

2つのモードと表示設定

今回のMQL5版では、オリジナル版の機能を統合し、2つのストリームを計測できます。

ラベル 対象 意味
TK Width (Green) 転換線 vs 基準線 転換線が「今の基準線レベル」とクロスしてからの期間。
トレンドの発生期間やモメンタムの持続性を示唆。
Cloud Width (Orange) スパンA vs スパンB 先行スパンAが「今のスパンBレベル」とクロスしてからの期間。
雲のねじれからの経過時間や、トレンド(雲)の寿命に関係?

元記事のような「2段表示」にする方法

fai様の元記事画像のように、TK幅(緑)と雲幅(オレンジ)を別々のサブウィンドウで表示するには、以下の手順を行ってください。

MQL5の仕様上、1つのインジケータで2つのサブウィンドウを作成することはできませんが、パラメータを変更して2回適用することで実現できます。

  1. 1つ目のサブウィンドウ(TK Width):

    • インジケータをチャートに適用します。
    • パラメータ DisplayModeTK Width Only に設定します。
    • (お好みで色の設定などを調整してください)
  2. 2つ目のサブウィンドウ(Cloud Width):

    • もう一度、同じインジケータをチャートに適用します。
    • パラメータ DisplayModeCloud Width Only に設定します。

これで、チャートの下に2つのサブウィンドウが並び、それぞれが独立して表示されます。 もちろん、Both モード(デフォルト)を使えば、1つのサブウィンドウに重ねて表示することも可能です。


実装コード (MQL5)

オリジナルのMQL4コードでは search(i) 関数で過去データをループ探索していましたが、MQL5でも同様のアプローチを採用しています。 CopyBuffer で取得したデータを配列に格納し、各バーごとに過去方向へループしてクロス地点を探します。

[!NOTE] SearchMax パラメータ(デフォルト100)により、最大で何本前まで遡るかを制限しています。これを大きくしすぎると計算負荷が高まるため注意してください。


ダウンロード

以下のリンクから Ichimoku_Width.mq5 をダウンロードできます。 MQL5/Indicators/ フォルダに保存してコンパイルしてください。

Ichimoku_Width.mq5 をダウンロード


使い方・考察

[!NOTE] Update v1.02 (2026-02-09):
バックテスターの「ビジュアライゼーションモード」において、描画が更新されない問題を修正しました。 計算ロジックを最適化し、描画負荷を軽減しています。

  • トレンド持続期間の計測: ヒストグラムの山が高くなるほど、基準線(またはスパンB)がフラットな状態で、かつそこから価格(転換線/スパンA)が離れ続けていることを意味します。
  • 「ねじれ」の可視化: 雲の幅(Cloud Width)が0になる地点は、先行スパンAとBが同じ価格(クロス)している地点、つまり「雲のねじれ」が存在したタイミングを示します。
  • リペイントなし: 「現在の基準線レベル」に対過去の関係を見るだけなので、過去の足がリペイントすることはありません。ただし、基準線自体の値が変われば(最新足の更新時など)、計算結果はもちろん変わります。

関連記事


MQL移植シリーズ一覧に戻る