コンテンツにスキップ

MQL移植シリーズ

このシリーズについて

「とあるMetaTraderの備忘秘録」様の記事を投稿日順にたどり、MQL4コードはMQL5へ移植し、文章で示された技術アイデアは検証可能なインジケータへ再構成するシリーズです。

単なる移植ではなく、なぜそのロジックが有効なのかMQL5での実装のポイントを詳しく解説します。


記事一覧

  • EURUSD H1に3日分のPivotと、上下2組のFiboZoneを表示したMT5実画面。中心線は金色、上側は青、下側はピンク 【移植#72】必要な日だけPivotを引く — 前日値幅で描く4つのFiboZone


    原典の計算式を確認し、Pivotの上下に「前日値幅の0.500〜0.618倍」と「1.000〜1.382倍」の帯を描きます
    表示は直近1〜20日分。前の確定日足だけを使い、日付の境目で線を区切ります

    記事を読む

  • EURUSDのH1チャート上で100msタイマーと無配信カスタム銘柄を比較し、価格時刻変化0のままTimerが進むことを確認したMT5画面 【移植#71】偽Tickを送らない — MT5タイマーの周期と取りこぼしを測る


    MT4の内部メッセージ送信や無限ループを使わず、MT5標準のOnTimer()でTick非依存の周期処理へ置き換えます
    要求周期、実測間隔、価格時刻が変わらなかった回数、統合されたTimer枠の推定値を同じ画面へ表示します

    記事を読む

  • EURUSDのH1チャート上でM1履歴の対象日時、最古日時、同期状態、最大バー数を照合したMT5画面 【移植#70】1970年ダミー足をやめる — MT5履歴を指定日まで段階取得


    1970年のダミー足や履歴ファイル改変を使わず、MT5の標準時系列APIへ置き換えました
    1回500本ずつ古い側を要求し、対象日時を覆う確定足と同期状態を2回連続で確認します

    記事を読む

  • EURUSDのM15チャートへ確定H1のアンディの雲を重ね、雲が陽転した位置を緑、陰転した位置を紫の縦線で示した検証画面 【移植#69】アンディの雲転換を縦線で記録 — 確定H1だけで陽転・陰転を追う


    確定したH1の先行スパンAとBを比べ、上下関係が入れ替わった位置だけを記録する
    雲を26本先へ表示するバー差も縦線へ反映し、見えている雲の転換位置へそろえる

    記事を読む

  • GBPJPYのM30チャートに10日分の等間隔ライン帯を灰色の帯で表示し、確定したスイング高安のうち帯の内側を水色、外側を赤の点で示した検証画面 【移植#68】5本引けばどれかは当たる — ラインの「当たり判定」が値幅の何割かを測る


    1日の値幅へ5本ラインを引き±5pipsを許容すると、値幅の半分が「当たり判定」で埋まる
    確定したスイング高安が帯へ入った割合を数え、帯が占める面積の割合と比べる

    記事を読む

  • MT5のEURUSD H1チャート下部で水色の高速QQE風ラインと金色の低速ラインを0〜100の共通スケールに重ね、50を中央に固定した検証画面 【移植#67】QQEを同じ物差しで重ねる — 50中央の高速・低速2ライン


    2つのQQEを別々に重ねると、オートスケールの違いで振幅を正しく比較できない
    RSI平滑線を1つのサブウィンドウへまとめ、0〜100固定軸の中央を50にする

    記事を読む

  • MT5のEURUSD M15チャートで確定した局所高値と安値を水色のDRAW_SECTIONで結び、マーカーをDRAW_NONEで非表示にした検証画面 【移植#66】点在シグナルを線で結ぶ — DRAW_SECTIONとDRAW_NONEの安全な切替


    点在する確定シグナルだけを1本の線で結ぶならDRAW_SECTIONを使う
    矢印や丸印を消すときは透明色にせず、描画方式をDRAW_NONEへ切り替える

    記事を読む

  • MT5のEURUSD M15チャートへ確定済みH1のアンディの雲を緑と紫で階段表示した検証画面 【移植#65】アンディの雲をMTF化 — 確定H1をM15へ安全に重ねる


    H1で計算したアンディの雲を、時刻対応を取ってM15チャートへ重ねる
    形成中のH1足は使わず、確定済みの上位足だけで階段表示または補間表示する

    記事を読む

  • MT5のEURUSD H1チャートに先行スパンを26本先へ平行移動した緑・紫のアンディの雲 【移植#64】アンディの雲をMT5へ — 一目の雲を平行移動して描く


    転換線と基準線から先行スパンA、期間高安から先行スパンBを計算する
    2本の雲境界を26本先へ平行移動し、その間を2色で塗り分ける

    記事を読む

  • MT5チャート上でFILE_COMMONへの書き込みと存在確認が成功している実働インジケータ画面 【移植#63】filesフォルダの外へ書かない — MT5共通領域の書き込みを監査


    絶対パスやDLLでMT5の外部フォルダへ書き込む設計は採用しない
    FILE_COMMONで端末間共有が可能な安全な共通領域へ書き込む

    記事を読む

  • MT5のEURUSD H1チャートに青い回帰中心線と終値をすべて含む黄色い平行チャネルを表示した検証画面 【移植#62】Linear Regressionの謎を解く — 終値をすべて含む平行チャネル


    中心線は計算区間の終値に対する線形回帰で求める
    上下線は中心線に平行で、区間内の全終値を含む幅にする

    記事を読む

  • MT5で指定日時をUnix秒へ変換し、元の日時へ戻ることを表示した検証画面 【移植#61】日時をUnix秒へ変換する — MT5のdatetimeを往復検証


    年月日時分秒をUnixエポック秒へ変換し、MT5のdatetimeとして扱う
    StructToTime()TimeToStruct()で変換後の往復一致を確認する

    記事を読む

  • MT5の口座残高・評価額をDDEではなく共通CSVへ書き出すスナップショット画面 【移植#60】DDEをやめて口座スナップショットをCSVへ — 複数MT5を表計算で集計


    旧MT4のDDEMap.dllとExcelのライブ接続をそのまま持ち込まない
    AccountInfo*で残高・評価額などを読み、共通CSVへ時刻付きで追記する

    記事を読む

  • MT5のEURUSD H1チャートに確定足クロスだけを緑と赤の矢印で表示するQQE補助インジケータの検証画面 【移植#59】QQEの矢印を確定足だけにする — メインチャートへ安全に表示


    QQEの計算線とメインチャート矢印を別インジケータへ分ける
    RSI平滑線の50クロスを、確定したバーだけで判定する

    記事を読む

  • MT5のEURUSD H1チャート下部にQQE-VT風の平滑RSIラインと50ラインクロスの上下矢印を表示した検証画面 【移植#58】QQE-VTをMT5へ — RSI平滑線とクロスをサブウィンドウで確認する


    VT/CT系QQEの狙いを、標準RSI・平滑処理・クロス表示へ分解してMT5へ移植する
    iRSI()CopyBuffer()でデータを取得し、計算不能な初期区間を無理に描画しない

    記事を読む

  • MT5のEURUSD H1チャートに停止距離の実値と仮想値を表示し、注文を送らずに監査する画面 【移植#57】MODE_STOPLEVELを書き換えない — MT5の停止距離を読み、条件だけを比較する


    旧MT4のMODE_STOPLEVELを業者ファイルへ書き戻す方法はMT5移植の対象にしない
    SYMBOL_TRADE_STOPS_LEVELSYMBOL_TRADE_FREEZE_LEVELを読み、仮想値との判定差を表示する

    記事を読む

  • MT5のEURUSD H1チャートに、アクティブタブを断定せず標準イベントだけを待つ表示を出した検証画面 【移植#56】アクティブタブを断定しない — MT5標準イベントで最後の操作チャートを追跡


    MT4のWin32 DLLによるMDIアクティブ判定を、そのままMT5へ持ち込まない
    OnChartEvent()で観測できた最後のクリック・キー入力を端末全体で共有する

    記事を読む

  • EURUSDの最新20,000ティックから30ポイント固定スプレッドのカスタム銘柄を作り、20,000件すべての再読一致を確認したMT5画面 【移植#55】古いsymbols.sel改変をやめる — 固定スプレッドのカスタム銘柄をMQL5で作る


    旧MT4の内部ファイル書き換えやオフライン起動を使わず、MT5標準のカスタム銘柄を作ります
    元ティックの時刻とBidを保ち、Askだけを指定ポイント幅へ置き換えてスプレッド条件を固定します

    記事を読む

  • EURUSDの操作用H1チャートからGBPUSD、USDJPY、AUDUSD、NZDUSDの4チャートをH4へ一括変更し、4件すべての再読一致を確認したMT5画面 【移植#54】キー送信をやめる — 複数チャートの時間足をMQL5で一括変更


    DLL、キー送信、外部常駐ツールを使わず、MT5のチャート操作APIだけで時間足をそろえます
    ChartSetSymbolPeriod()trueを完了扱いせず、変更後に全チャートの時間足を再読します

    記事を読む

  • EURUSDのH1チャートで4オブジェクト中2個の選択、トレンドラインの2アンカー、イベント更新とタイマー補完の検証合格を表示したMT5実画面 【移植#53】Delete→Undoをやめる — 選択中オブジェクトを安全に読む


    旧MT4の「一度削除してUndoする」判定を使わず、MT5のOBJPROP_SELECTEDを読みます
    毎ティック全走査せず、チャートイベントと低頻度タイマーを併用し、走査件数に上限を設けます

    記事を読む

  • 合成日足CSVの12行をMT5カスタムシンボルへ取り込み、M1とD1の往復照合、4種類の拒否テストに合格した実画面 【移植#52】HST直書きをやめる — 日足CSVをMT5カスタムシンボルへ安全に取り込む


    旧MT4のHSTバイナリを直接組み立てず、MT5のカスタムシンボルAPIへ日足CSVを渡します
    日付、数値、時系列順、重複、OHLC、出来高を先に検査し、1行でも異常なら履歴を書き換えません

    記事を読む

  • EURUSDのH1チャート上で期限切れ・別対象・再送を拒否し、6件の自己テストと注文変更なしを確認したRemote Halt Guard 【移植#51】指値注文を通信に使わない — 期限付き停止指令を検証するリモートHALTガード


    指値注文を通信メッセージにせず、HTTPSの短い応答からHALTRESUMEだけを受け取ります
    期限切れ、未来時刻、別チャンネル、別対象、古い連番は拒否し、異常な応答で停止状態を解除しません

    記事を読む

  • EURUSDのH1チャート上で12通貨のEMA方向、強気比率66.7%、80%閾値、同一確定時刻の検証合格を表示したMT5画面 【移植#50】12通貨の指標値を1枚へ — 確定足を揃えるトレンド・コンセンサス


    12通貨ペアのEMA20とEMA50を、同じH1確定時刻へ揃えて1画面に集約します
    欠損銘柄を有効数と分け、最低8銘柄が揃わない限り80%到達を成立させません

    記事を読む

  • 共通ファイルで読んだEURUSD価格とローカル価格の差、鮮度、送信元、検証結果を表示したMT5画面 【移植#49】DLL共有メモリをやめて共通ファイルへ — 2つのMT5価格を鮮度付きで比較する


    共有メモリDLLを使わず、同じPC上のMT5同士でBidとAsk、更新時刻を受け渡します
    一時ファイルからの置換、送信元・銘柄・価格・未来時刻・鮮度の検査で書きかけや取り違えを拒否します

    記事を読む

  • 任意の端末別名、口座種別、接続状態、売買許可を表示し、口座番号とサーバー名を隠したMT5識別バッジ 【移植#48】アイコン改造をやめて端末識別バッジへ — 複数MT5を色と別名で見分ける


    端末のアイコンファイルを置換せず、MT5チャートへ任意の別名と色を大きく表示します
    口座種別、接続、端末・口座・実行プログラムの売買許可を標準APIから確認できます

    記事を読む

  • EURUSD・USDJPY・GBPUSDの確定済みM1足をCSVへ一括出力し、行数・時系列・OHLCを検証したMT5画面 【移植#47】生のHSTを読まずに履歴を一括CSV化 — 3通貨×500本をCopyRatesで書き出す


    古いHSTバイナリを直接解析せず、MT5のCopyRates()から確定足を取得します
    初期設定では3通貨×500本を別々のCSVへ出力し、古い足から新しい足へ並べます

    記事を読む

  • Excel等から出力したUTF-8共有ファイルをMT5で読み、送信元・メッセージ・鮮度・読取回数を検証した画面 【移植#46】DDEをやめて共有ファイルへ — Excel→MT5の文字列受信を安全にする


    古いDDEクライアントを再現せず、Excel等が出力したUTF-8ファイルをMT5が読み取る方式へ変更しました
    更新時刻、必須ヘッダー、空欄、未来時刻、期限切れを検査し、異常なメッセージは受理しません

    記事を読む

  • EURUSDのM5チャートへM30の確定EMA・ATRバンドを青い補間帯とオレンジの階段線で重ねたMT5画面 【移植#45】MTF補間を確定足だけで再設計 — 30分足バンドを5分足へ滑らかに投影する


    30分足の値を5分足へそのまま複製すると、6本ごとに値が飛ぶ階段状の線になります
    未確定の30分足終値を過去へ埋めず、2本の確定足を次の30分区間で補間する方式へ再設計しました

    記事を読む

  • EURUSDのH1チャート上でEURUSD・GBPUSD・USDJPYのM1履歴を順番に同期し3件完了したMT5画面 【移植#44】Homeキー連打を卒業 — MT5のM1履歴を3通貨ずつ順番に同期する


    MT4時代のHomeキー疑似連打を、MT5のCopyRates()による履歴要求へ置き換えました
    3通貨を同時に走らせず、1件ずつ同期してバー数・同期状態・失敗をパネル表示します

    記事を読む

  • EURUSDのH1チャート上で起動後の通貨、時間足、チャート、Market Watch、接続、履歴を8項目監査したMT5画面 【移植#43】プロファイル指定でMT5を起動 — ワークスペースを8項目で監査する


    MT5では/profile:で既存プロファイル、/config:で詳細な起動設定を指定できます
    原典のMarketWatch=をそのまま使わず、Symbol Setの保存と起動後の実状態監査に分けます

    記事を読む

  • EURUSDのH1チャート上で数値関数32ケース、口座情報の安定読取、ログイン番号の非表示が合格したMT5画面 【移植#42】口座種別をDLLなしで判定 — 標準APIと表示プライバシーを検証する


    MQL4時代のウィンドウタイトル解析を使わず、MQL5のAccountInfoInteger()で口座種別を判定します
    数値関数の自作版は32ケースで標準関数と照合し、「書ける」と「同じ仕様」を分けて確認します

    記事を読む

  • EURUSDのH1チャート上でビット演算による加算・乗算20ケースとオーバーフロー拒否4ケースの合格を表示したMT5画面 【移植#41】「+」なしで整数を足す — ビット演算を境界値まで検証する


    XORで桁上がりを除く和、ANDと左シフトで桁上がりを作り、+なしの整数加算を再現します
    乗算はシフト加算法へ広げ、正数・負数20ケースと64bit範囲外4ケースを検証します

    記事を読む

  • EURUSDのH1チャート上で日本語識別子、原典の7文字、Unicode文字列を検証し、8バッファの合格を表示したMT5画面 【移植#40】日本語変数名は今も使える? — MQL5の仕様境界を実機で確かめる


    現行MetaEditorでは日本語の変数名・関数名と、原典で化けた7文字が0エラー・0警告で動きました
    ただし、MQL5公式仕様が識別子として明記するのは英字・数字・アンダースコアだけです

    記事を読む

  • MT5でLevel I価格とLevel II板情報の提供状況を表示し、板非対応時の安全なフォールバックを検証した画面 【移植#39】Level IIは接続先しだい — MT5で板情報の有無を確かめる


    Level IのBid・Askと、Level IIの板情報は別物です
    MT5の標準APIで板を購読し、非対応ならLevel Iだけを表示します

    記事を読む

  • MT5の価格チャートと取引ラインを隠したプライバシーシールドについて、遮蔽・復元・再遮蔽の検証合格を表示した画面 【移植#38】MT5チャートを一時的に隠す — Pキーで戻せるプライバシーシールド


    価格チャート、軸、注文ライン、ワンクリック取引などを黒いシールドで一時的に隠します
    Pキーで解除し、もう一度押すと再遮蔽します。削除時には適用前の設定へ戻します

    記事を読む

  • EURUSDのH1チャートへ東京時間9時から17時までのOHLCを5日分表示し、独立検証に合格したMT5画面 【移植#37】東京9–17時を1本の足にする — セッションOHLCをMQL5で可視化


    東京時間9:00〜17:00の確定M1足を、日ごとの始値・高値・安値・終値へ集計します
    MT4のオフライン日足を、通常チャート上のセッションボックスとしてMQL5へ再構成しました

    記事を読む

  • EURUSDの確定M1足5000本についてOHLC整合性、時刻重複、履歴ギャップ、スプレッド記録を点検したMT5画面 【移植#36】「99%」を鵜呑みにしない — バックテスト履歴の証拠をMQL5で点検する


    バックテスト画面の大きな百分率だけでなく、その数字が何を測っているかを確認します
    確定M1足5,000本のOHLC、時刻順、ギャップ、出来高、スプレッド記録を点数化せず表示します

    記事を読む

  • EURUSDの1時間足でLF単独のメール本文をCRLFへ正規化し、5ケースと8バッファの検証成功を表示したMT5画面 【移植#35】メール本文の改行を送信前に整える — SendMail用CRLFプリフライトをMQL5で作る


    LF・CR・CRLFが混在したメール本文を、送信前にCRLFへ統一します
    元記事の「失敗メールが残って後続も失敗したように見える」事例から、件名とログを対応づける大切さを読み直します

    記事を読む

  • EURUSDの1時間足でGann Swing Oscillatorのプラス・マイナス状態、転換矢印、CTSL分解パネルを表示したMT5画面 【移植#34】7行のCTSLをほどいて再構成する — Gann Swing OscillatorをMQL5へ


    VisualTraderの短いCTSL式を、高値・安値の連続更新から順番に分解します
    最後の非ゼロ信号を保持する処理を、MQL5では明示的な±1の状態遷移として再構成しました

    記事を読む

  • EURUSDの1時間足でMACDゼロクロス、確定足モード、最新SELLシグナル、通知停止状態を表示したMT5画面 【移植#33】確定足と予報を分けるメール通知 — MACDゼロクロスを同一バー1回だけ送る


    MACDのゼロラインクロスを、確定足または形成中バーのどちらで判定するか選べます
    初回の過去通知と同一バーの連打を防ぎ、通貨・時間足・価格・時刻をそろえた本文を作ります

    記事を読む

  • EURUSDの1時間足をGreen on Blackへ整え、SMA20とSMA50、7分の7の検証結果を表示したMT5画面 【移植#32】バックテスト後の確認チャートを毎回同じ見た目にする — tester.tpl向け表示プリセット


    MT5では、単体テスト後に開く確認チャートへtester.tplを適用できます
    配布インジケーターはGreen on Black、SMA20/50、設定確認パネルを一度に作ります

    記事を読む

  • EURUSDの1時間足に戦略仕様8項目と8分の8の判定を表示したMT5画面 【移植#31】EAのアイデアを実装可能な仕様にする — 8項目の要件チェックをチャート表示


    EAやインジケーターの依頼前に、売買条件を8項目へ分解して曖昧さを減らします
    未定義値や範囲外の設定があれば、MT5チャート上でNEEDS DEFINITIONと表示します

    記事を読む

  • EURUSD 1分足で指定時刻後60本の値動きと5分後・60分後・最大変動・戻り判定を表示したMT5画面 【移植#30】経済指標後60分の値動きを測る — 初動・最大変動・戻りを同じ基準で記録


    経済指標後の反応は「動いた印象」ではなく、同じ時間窓と基準価格でそろえて測ります
    発表直前のM1終値を基準に、5分後・60分後・最大上昇・最大下落・戻りを計算します

    記事を読む

  • EURUSD 1時間足の黒いMT5チャート上でFILE_COMMONの2ノード分のheartbeatを検出した画面 【移植#29】複数のMT5で状態ファイルを共有する — FILE_COMMONで安全に受け渡す


    複数のMT5で実行時データを共有するなら、まずMQL5標準のFILE_COMMONを使います
    共有するのは小さな状態ファイルだけに絞り、端末設定やMQL5フォルダ全体は結合しません

    記事を読む

  • EURUSD 1時間足で5本先へシフトしたEMA20とEMA50の間を橙色と青色の雲で塗ったMT5画面 【移植#28】シフトの違うMAの間へ雲を描く — 表示時刻をそろえてから塗りつぶす


    横シフトが違う2本のMAは、同じバッファ番号同士を結ぶだけでは表示時刻が一致しません
    共通シフトを決め、各MAの値を同じ横位置へ再配置してからDRAW_FILLINGで塗ります

    記事を読む

  • EURUSD 1時間足でOCO買い逆指値の到達と売り側キャンセルを表示したMT5画面 【移植#27】OCO両建て注文の状態遷移を可視化する — 実注文なしでキャンセル順序を検証


    基準価格の上に買い逆指値、下に売り逆指値を置いたOCO状態をチャートで再現します
    片側へ到達したら反対側ラインを消し、同一バーで両方へ到達した場合は曖昧状態として分けます

    記事を読む

  • EURUSD 1時間足で異常に長いヒゲの候補を赤と緑の矢印で示したMT5画面 【移植#26】バッドティック候補を異常ヒゲから探す — 中央値TRで要確認バーを絞る


    過去50本のTrue Range中央値を基準に、2倍以上の上ヒゲ・下ヒゲを要確認候補として表示します
    EURUSD・1時間足の直近1000本では上ヒゲ2件、下ヒゲ2件、最大2.55倍を検出しました

    記事を読む

  • EURUSD 1時間足に4時間足の確定済みLWMA版RSIとEMAシグナルを表示したMT5画面 【移植#25】RSIの平均方法を選べるようにする — SMA・EMA・SMMA・LWMAと確定MTF


    RSI内部の値上がり幅・値下がり幅を、SMA・EMA・SMMA・LWMAの4方式から選べます
    シグナル線を追加し、MTFでは確定済みの上位足だけを下位足へ表示します

    記事を読む

  • EURUSD 1時間足でLWMA版MACDの上抜けと下抜けを矢印表示したMT5画面 【移植#24】LWMA版MACDのクロスをチャートへ表示する — 確定足だけに矢印を出す


    12期間LWMAと26期間LWMAの差をMACD本線とし、9期間LWMAのシグナル線とのクロスを検出します
    形成中の0番バーを除外し、確定したバーだけへ上向き・下向き矢印を表示します

    記事を読む

  • EURUSD 1時間足で上窓と下窓を矢印とpips値で表示したMT5画面 【移植#23】チャートの窓幅をpipsで測る — 前足終値と次足始値の差を可視化


    前足の終値と次足の始値を比較し、上窓と下窓をpips単位で表示します
    直近1000本で上窓16件・下窓4件を検査し、最大13.7pipsの差を確認しました

    記事を読む

  • EURUSD 1時間足の右端に10pips間隔の黄色い価格タグを表示したMT5画面 【移植#22】ダブルゼロを価格タグで意識する — 水平線を増やさず節目を表示


    末尾にゼロが並ぶ価格を、チャートを横切る水平線ではなく右端の価格タグで表示します
    3桁・5桁銘柄の1pipを補正し、表示間隔をpips単位で指定できるMQL5版にしました

    記事を読む

  • EURUSD 1時間足の下に緑と赤の平均足を表示したMT5画面 【移植#21】平均足をサブウィンドウへ描く — 背景色で隠さずDRAW_COLOR_CANDLESで表示


    MQL4で背景色の棒を重ねていた表示を、MQL5のDRAW_COLOR_CANDLESへ置き換えました
    平均足の始値・高値・安値・終値と色番号を、合計5本のバッファでサブウィンドウへ描きます

    記事を読む

  • 12EMAと26EMAの間を赤と青の雲で塗り分けたEURUSD 1時間足 【移植#20】MAの間に雲を描く — DRAW_FILLINGで上昇・下降を塗り分ける


    12EMAと26EMAの間を塗り、短期が上なら赤、下なら青の雲として表示します
    MQL4のペアになったDRAW_HISTOGRAMを、MQL5専用のDRAW_FILLINGへ置き換えました

    記事を読む

  • Slow StochasticのクロスとWilliams %Rのしきい値到達を表示したEURUSD 1時間足 【移植#19】オシレーター通知 — Slow StochasticクロスとWilliams %R到達を確定足で知らせる


    Slow Stochasticは%Kと%Dのクロス、Williams %Rは-20/-80の外側へ入った瞬間を検出します
    形成中の足では通知せず、確定した足を新しく認識したときに一度だけポップアップと音を出します

    記事を読む

  • FirstとPreviousの参照先を4本のLWMAと2本の点線で比較したEURUSD 1時間足 【移植#18】FirstとPrevious — インジケータの参照順をMQL5で可視化


    Firstは最初、Previousは直前のインジケータを参照。
    5・10・20・30LWMAの配置順で参照先を実測します。

    記事を読む

  • CSVへ100本の確定足を定期出力するインジケータをEURUSD 1時間足で実行した結果 【移植#17】CSVスナップショット出力 — MT5の過去バーをExcelへ定期連携


    直近OHLCVを、古い順・重複なしのCSVへ定期更新。
    Excelへ渡しやすいスナップショット式を実MT5で検証します。

    記事を読む

  • ゼロライン中央固定MACD 【移植#16】ゼロライン中央固定MACD — 不可視バッファで自動スケールを上下対称にする


    最大絶対値の正負を不可視線として追加し、ゼロを中央へ固定。
    MACDの値を変えずに、MT5の自動スケールだけを上下対称にします。

    記事を読む

  • SMA基準とEMA基準のボリンジャーバンド 【移植#15】SMA基準とEMA基準のボリンジャーバンド — 中心線の違いをMT5で比較


    共通の標準偏差を使い、中心線だけをSMAとEMAで切り替えて比較。
    反応速度の差が上下バンドへどう現れるかを実チャートで確かめます。

    記事を読む

  • 3本HMA判定 【移植#14】3本HMA判定 — 色・エントリー・決済をMQL5で1本化


    MQL4では4本に分かれた3本HMAと判定を1ファイルへ統合。
    黄色の意味を定義し直し、確定足と反転時の決済も整理します。

    記事を読む

  • OnChart RCI 【移植#13】OnChart RCI — 同値の順位問題をMQL5で解き直す


    5種類のRCIが一致しなかった同値順位の問題を再検証。
    平均順位と旧版互換を切り替え、確定足でMA周辺へ表示します。

    記事を読む

  • SMMAとEMAの期間換算 【移植#12】SMMA=2×EMA−1?— 期間換算をMT5で確かめる


    SMMA(N)とEMA(2N−1)の平滑化係数を数式で確認。
    実MT5で2本を重ね、最新差と直近500本の最大差を表示します。

    記事を読む

  • ADX2Pairs 【移植#11】ADX2Pairs — 2通貨のADXでクロス円の動き出しを探す


    USDJPY・AUDUSD・AUDJPYのWilder式ADXを時刻同期。
    構成通貨の強さと、3通貨のADXが同時に上向く場面をAUDJPY上へ表示します。

    記事を読む

  • AllAverages v2.5 【移植#10】AllAverages v2.5 — 21種の移動平均を詰め込んだ名作をMT5で


    2009年に公開された伝説的インジケータ「AllAverages_v2.5」の全ロジックをMQL5に完全移植。SMA, EMAからT3, Jurik, Hull Moving Averageまで、全21種類のMAを網羅。

    記事を読む

  • OnChartオシレータ 【移植#09】OnChartオシレータ — メインチャートにRSIを重ねて表示する


    メインチャートの移動平均とATRを利用して生成したバンド内にRSIやStochasticをマッピング。
    視線の移動なく過熱感とボラティリティを把握可能。

    記事を読む

  • 他通貨重ね書き 【移植#08】他通貨重ね書き — マルチカレンシー監視


    現在表示しているチャートの上に、別の通貨ペアのチャート(ローソク足やライン)を重ねて表示。
    時間軸の同期処理により、正確な相関関係を把握可能。

    記事を読む

  • 一目の幅(水平時間差) 【移植#07】一目の幅(水平時間差) — 時間論の可視化


    価格の変動幅ではなく、「時間の経過幅」に着目。
    転換線や雲のクロスが発生してから「何本経過したか」をヒストグラム化。

    記事を読む

  • 三角裁定トレンド判定 【移植#06】三角裁定トレンド判定 — 合成通貨の歪みを狙う


    USDJPY, GBPUSD, GBPJPY の3通貨ペアのレートから「理論的なGBPJPY」を計算。
    実際のレートとの乖離(歪み)からトレンド発生を早期に検知。

    記事を読む

  • BB-Fibo 【移植#05】BB-Fibo — ボリンジャーバンド × フィボナッチ


    ボリンジャーバンドの標準偏差(σ)の代わりに、ATRにフィボナッチ係数を掛けたバンドを描画。
    相場のボラティリティ伸縮を美しく捉える。

    記事を読む

  • TickチャートMA 【移植#04】TickチャートMA — 極短期の動きを読む


    通常のタイムチャートではなく、Tick(約定)ベースのチャートをサブウィンドウに生成。
    さらにTickデータに対して移動平均線(MA)を適用。

    記事を読む

  • JPN_Time_SubZero 【移植#03】JPN_Time_SubZero — 日本時間グリッド + 未来予測


    MT5のチャートに日本時間を表示し、さらに「未来の時間」にもグリッド線を描画。
    サイクル分析や目標時間の予測に必須のツール。

    記事を読む

  • SwingPoint View 【移植#02】SwingPoint View — 直近の高値/安値を可視化


    ZigZag的な高値・安値を検出し、その価格と発生時刻をチャート上に表示。
    ダウ理論に基づくトレンド判定の補助に。

    記事を読む

  • 一目三役好転インジケータ 【移植#01】一目三役好転インジケータ — 強い売買シグナルを検出


    一目均衡表の「三役好転/三役逆転」を自動検出。
    基準線・転換線のクロス、遅行スパン、雲の位置関係を判定。

    記事を読む


MQL4→MQL5 移植のポイント

MQL4からMQL5への移植で特に注意が必要な点:

項目 MQL4 MQL5
インジケータ呼び出し iMA(..., shift) iMA(...) でハンドル取得後、CopyBuffer()
注文処理 OrderSend() CTradeクラスを使用
配列の方向 時系列がデフォルト ArraySetAsSeries()で明示的に指定
エラー処理 GetLastError() 同じだが、ResetLastError()との併用推奨

元ネタについて

とあるMetaTraderの備忘秘録

2009年〜2013年に活動されていたMQL4の技術ブログ。 膨大な量のTips、インジケータ、EAが公開されており、今なお参考になる内容が多数あります。

https://fai-fx.hatenadiary.org/


ホームに戻る


関連用語

— SPONSORED —