MT4のインジをMT5に移したら表示が違った — 同じロジックなのに一致しない理由と、その実測データ
こんにちは。MT4/MT5インジケーターを開発している lab.aiueoです。
自作インジケーターをMT4からMT5へ移植したとき、同じ銘柄・同じ時間足なのに表示が一致せず、半日を溶かしました。
原因が分かってみれば単純でしたが、知らないと「移植を失敗した」としか思えません。
これからMT5へ移る方には役に立つ話なので、実測したデータごと共有します。
MT4が終わります
国内業者のMT4提供終了が、現実のスケジュールとして動いています。
- JFX … 2026年8月19日で提供終了
- OANDA証券 … 2026年11月27日の取引終了をもって提供終了
海外業者ではMT4がまだ使えますし、すぐ全部が消えるわけではありません。
ただ「そのうち移る」ではなく「いつ移るか」を考える段階には入っています。
そこで問題になるのが、いま使っている道具をどうするかです。
移して、並べて、固まった
私は自作のSMCインジケーターをMT5へ移植しました。
判定のロジックには一切手を入れず、MT4にしか無い書き方をMT5用に置き換えただけです。
出来上がって、MT4とMT5を並べて同じ銘柄・同じ時間足を表示しました。
表示が違いました。
ゾーンの数が違う。
位置も微妙にずれている。
片方にあるブロックが、もう片方には無い。
半日かけてコードを見直しました。
結論から言うと、移植は間違っていませんでした。
原因は「別のサーバーを見ている」こと
同じ業者でも、MT4とMT5は別々のサーバーから価格を受け取っています。
例として、〇〇〇〇〇 FXの場合、データの保存先はこうなっていました。
・MT4 … 〇〇〇〇〇FX-02 / 〇〇〇〇〇FX-05 ・MT5 … 〇〇〇〇〇FX-MT5-01
別物です。
加えてMT5は実際のティックを保持していますが、MT4は1分足から上位足を組み立てます。
この違いもあります。
結果として、同じ時刻の同じローソク足でも、高値や安値がわずかに違います。
どのくらい違うのか、数えました
感覚で語っても仕方がないので、両方から同じ項目を書き出して突き合わせました。GBPUSD H1 での結果です。
| 項目 | MT4 | MT5 |
|---|---|---|
| パラメータ設定 | 一致 | 一致 |
| 足の時刻 | 一致 | 一致 |
| スイング検出数 | 22 | 22 |
| 構造(BOS/CHoCH) | 6 | 6 |
| Order Block | 6 | 6 |
| Breaker Block | 2 | 2 |
骨格はすべて一致しました。ではどこが違ったのか。価格そのものでした。
両方に共通して出てきた134個の価格を比べたところ、16個(約12%)で値が食い違っていました。
安値 MT4=1.35195 MT5=1.35153 ← 4.2 pips
高値 MT4=1.34778 MT5=1.34794 ← 1.6 pips
高値 MT4=1.34657 MT5=1.34658 ← 0.1 pips不一致の大半は 0.1 pip、5桁表示の1ポイント差です。
別の銘柄・別の時間足(USDCHF H4)でも測りました。共通140点のうち12点(8.6%)が食い違い、最大2.8 pipsでした。
0.1 pipで、見た目が大きく変わる理由
「それなら誤差では」と思われるかもしれません。ところがSMC系の判定は、ほぼすべてが閾値の比較でできています。
高値がスイング高値を超えたか?
終値が直近高値+バッファを超えたか?
超えたか超えていないか。真か偽か。0.1 pipの差で、この答えが反転します。
そして反転は連鎖します。構造ブレイクが1つ増えれば、その直前の足がOrder Blockとして登録される。そのOBが後に否定されればBreaker Blockに変わる。入口の1ポイントが、出口では「ゾーンが1つ増える/消える」という見た目の差になります。
これは直せません。そして直すものでもありません
原因が価格データそのものである以上、インジケーター側では直しようがありません。そして直すべきものでもありません。それぞれのプラットフォームが、それぞれのサーバーから受け取った正しい価格で、正しく計算しているだけです。
私の製品に限った話でもありません。閾値で判定するタイプのインジケーターは、すべて同じ性質を持ちます。 MT4とMT5を併用される方は、この前提を知っておくと余計な悩みを1つ減らせます。
この記事で紹介する製品がやらないこと
先に書いておきます。
売買シグナルは出しません。 エントリーの矢印は表示されません。
勝率やバックテスト成績は、表示も訴求もしません。 この記事にも数字は出していませんし、商品ページにも書いていません。
SMCの各要素を描くための分析支援ツールです。どこで入るかの判断は、使う方ご自身のものです。
続きでお答えすること
ここまでが、MT5へ移る方に知っておいてほしい前提でした。ここから先では、実際に移植した製品 SMC-Radar for MT5 の中身を書きます。
- 画面に何が表示されるのか(判定語の一覧)
- 描いたゾーンをどう自動で片付けるのか
- アラートは何をどう知らせるのか
- 実際の使い方の手順
- 動作環境と価格
- 移植の検証中に、MT4版にも元からあった不具合が見つかった話
SMC-Radar for MT5 の中身
チャートに貼るだけで、SMCの主要6要素を自動で描画し続けます。手で線を引く必要はありません。時間足を切り替えても、引き直す必要はありません。
画面に出てくるもの
| 表示 | 正式名称 | 意味 |
|---|---|---|
| BOS | Break of Structure | 直近の高値/安値を終値で超えた。トレンド継続の合図 |
| CHoCH | Change of Character | トレンドと逆方向の構造ブレイク。転換の合図 |
| OB | Order Block | ブレイク直前の逆方向の最後の足。注文が集中した価格帯 |
| FVG | Fair Value Gap | 3本の足で作られる価格の空白地帯 |
| Breaker | Breaker Block | 否定されたOBが逆向きの反転帯として働くもの |
| Premium / Discount | ― | 直近レンジの上半分が割高圏、下半分が割安圏 |
| Sweep | Liquidity Sweep | 高値/安値を一時的に抜いて戻された動き。流動性狩り |
描いたら終わり、ではありません
この製品で一番効くのは、実は描画そのものより後片付けだと思っています。
SMCを手で引いていると、チャートがどんどん散らかります。もう効いていないゾーンが残り続け、どれが生きているのか分からなくなる。
SMC-Radarは、描いたゾーンの状態を価格の動きに合わせて更新し続けます。
| 状態 | 見た目 | 意味 |
|---|---|---|
| 有効 | 指定した色(青/赤など) | まだ価格が到達していない、生きているゾーン |
| 到達済み | 暗いグレー | 価格が中心まで届いた。反応を見たあとなので優先度は下がる |
| 無効 | 削除(既定)/明るいグレー | 終値で貫かれ、根拠として否定された |
既定では、否定されたゾーンは画面から消えます。
つまり、チャートに残っているものが、いま有効な根拠 ということです。「何も表示されていない=見送る場面」という読み方ができます。
終値で貫かれたOrder Blockはただ消えるのではなく、Breaker Block として逆向きに登録され直します。支持帯が抵抗帯に変わる、という考え方をそのまま扱えます。
チャートに張り付かなくていい
5種類の出来事をアラートで知らせます。ポップアップ、スマートフォンへのプッシュ通知、サウンドに対応しています。
- OBタッチ
- Breakerタッチ
- FVGタッチ
- BOS / CHoCH の発生
- Liquidity Sweep
メッセージはこの形で届きます。
[SMC] GBPUSD H1: Bullish OB Touch (1.35120-1.35060)どの銘柄の、どの時間足で、何が起きたか。価格帯まで入っています。複数の時間足に貼っておけば、それぞれから通知が来ます。
同じゾーン・同じ足への通知は一度だけなので、価格がゾーン内で往復しても鳴り続けることはありません。
設定はすべて日本語
パラメータは36項目あります。すべて日本語で表示されます。
要素ごとの表示ON/OFF、表示件数の上限、色、アラートの種類。ひととおり調整できます。「ゾーンが多すぎる」と感じたら、Order Block / Breaker / FVG の最大表示件数をそれぞれ1〜2に下げると、最新のものだけが残ります。
使い方の流れ
私自身はこう使っています。
1. 上位足で地形を見る H4かH1を開いて、大きなゾーンがどこにあるかを確認します。直近のCHoCHが出ていれば、そこが流れの変わり目の候補です。
2. ゾーンへの接近を待つ 張り付く必要はありません。OBタッチのアラートを有効にしておけば、到達時に通知が来ます。
3. 下位足で反応を確かめる 通知が来たらM30かM15に切り替えて、そのゾーンで何が起きているかを見ます。Sweepの矢印が出た直後にCHoCHが発生していれば、根拠が重なった状態です。
4. 根拠が消えたら見送る 待っている間にゾーンが消えた、あるいはグレーになったら、その根拠はもう崩れています。追わずに次を待ちます。
動作環境
| 項目 | 内容 |
|---|---|
| 対応プラットフォーム | MetaTrader 5(Build 2485以降) |
| 対応通貨ペア | 全通貨ペア(GOLD・指数等を含む) |
| 対応時間足 | 全時間足(推奨:M15 / M30 / H1 / H4) |
| DLLの使用 | なし |
| 外部インジケーター | 不要 |
DLLを使っていないので、業者を問わず動きます。q
なぜ作ったか — MT4が終わるから
きっかけは、国内業者のMT4提供終了です。
JFXが2026年8月19日、OANDA証券が2026年11月27日でMT4の提供を終えます。他社も追随の動きがあり、国内はMT5への移行が業界全体の流れになりました。
私はMT4向けにインジケーターを作って販売しています。SMC-Radarもその1本です。使ってくださっている方がMT5へ移ったとき、同じ道具が使えないのは困るだろう、と考えました。
それで移植に着手したのですが、作ってみて初めて分かったことがいくつかありました。この記事で書いた「表示が一致しない」もそのひとつです。
もうひとつ、移植の検証中にMT4版にも元からあった不具合が見つかりました。
Premium / Discount ゾーンの色を指定する仕組みに問題があり、設定した色とは別の色で表示されていたのです。さらに、透明度を調整するパラメータが何を入れても効かない状態でした。原因は、色の指定方法が内部的に想定と違う解釈をされていたことでした。
これはMT5に移植して並べて見比べなければ、たぶん気づかないままでした。MT4版もVer1.04として同じ修正を入れ、すでに配信済みです。既存の購入者の方にも届いています。
移植は「同じものをもう一度作る」作業だと思っていましたが、実際には既存製品を点検し直す機会でもありました。
販売情報
SMC-Radar for MT5 / 3,980円(買い切り)
※公開記念のキャンペーン価格が適用されている場合があります。最新の価格は販売ページをご確認ください。
https://www.gogojungle.co.jp/tools/indicators/86667
MT4版をすでにお持ちの方へ。判定ロジックとパラメータ構成は同一です。ただしこの記事に書いたとおり、表示は完全には一致しません。別製品として買い直す形になる点は、あらかじめご承知おきください。
免責事項
本製品は、スマートマネーコンセプトの各要素をチャート上に描画する分析支援ツールです。売買シグナルの提供、投資助言、運用成果の保証を行うものではありません。
描画される内容は過去および現在の価格から機械的に算出したものであり、将来の値動きを予測するものではありません。本製品を利用した取引によって生じたいかなる損害についても、制作者は責任を負いません。投資判断はご自身の責任において行ってください。