




GMMA(Guppy Multi Moving Average)の短期群が収束した箇所に自動でボックス(矩形)を描画するMT5用インジケーターです。
テクニカル分析において、GMMAの短期線が密集する状態は「エネルギーの蓄積(スクイーズ)」を意味し、その後のブレイクアウトの予兆として重視されます。
このコードの仕組みと特徴を分かりやすく解説します。
1. プログラムの全体像
このインジケーターは、以下のステップで動作します。
初期化 (
OnInit): 短期EMA(3, 5, 8, 10, 12, 15期間)の計算用ハンドルを取得します。計算と判定 (
OnCalculate):過去500本分のローソク足に対して、6本のEMAの値をチェックします。
「6本のEMAの中の最大値 - 最小値」を計算し、それが設定値(デフォルトは7ポイント)以下であれば「レンジ(収束)」と判定します。
描画: 収束が始まった時間から終わった時間までの範囲を
OBJ_RECTANGLE(矩形オブジェクト)でチャートに描画します。後片付け (
OnDeinit): インジケーターを削除した際、チャートに残ったボックスをきれいに消去します。
2. 主要なロジックの解説
収束(スクイーズ)の判定基準
ここでは、もっとも期間の短いEMAともっとも長いEMA(およびその間のすべて)が、一定の幅(InpThresholdPips)の中に収まっているかを判定しています。
ポイント:
_Pointを掛けているため、パラメーターの「7」はドル円なら 0.007円(0.7ピップス)を指します。
ボックスの描画範囲
時間軸:
range_start_time(収束開始)からtime[i](収束終了)まで。価格軸: 収束期間中のEMA群の「最高値」と「安値」をカバーするようにボックスの高さが決まります。
3. コードのメリットと注意点
メリット
視認性の向上: 裁量判断では見逃しがちな「EMAの微妙な収束」を、ピンク色のボックスで視覚化できます。
負荷対策:
lookbackを 500本に制限しているため、過去数年分のデータをすべて計算してMT5が重くなるのを防いでいます。透過設定:
InpOpacity(透明度)が設定されているため、塗りつぶしてもローソク足が見えなくなるのを防いでいます。
注意点・改善のヒント
pipsの単位: 現在のコードは「ポイント単位」です。FX業者が5桁表示(例:145.123)の場合、
7はわずか 0.7pips です。ボラティリティに合わせて、この数値を20や30に調整すると、より実用的なボックスが表示されやすくなります。再描画のタイミング:
OnCalculateの冒頭でObjectsDeleteAllを実行しているため、新しいティックが来るたびにすべてのオブジェクトを書き直します。500本程度なら問題ありませんが、計算範囲を広げる場合は負荷に注意が必要です。
For those using GogoJungle for the first timeEasy 3 steps to use the product!
At GogoJungle, we provide services to enrich your investment life for our members. In addition, product purchases are limited to members. Why not register as a member now and make use of GogoJungle!
