Select Language

インフルエンサー頂上決戦

アマギフ3,000円が当たる

【MT4/MT5】インディケータを作成する方法

MetaTrader4(MT4)/MetaTrader5(MT5)でインディケータを作成するには、メタエディターと呼ばれるプログラミングツールを利用し、MT4/MT5専用のプログラミング言語であるMQL4/MQL5を使って、プログラムを記述します。

ここでは、MT4/MT5でインディケータを作成する方法について説明します。

MT4/MT5それぞれの説明は、タブ切替でご確認いただけます。

mt4
mt5

手順1

メニューバーの「ツール」をクリックし、「メタエディター」を選択します。

オプション画面を開く オプション画面を開く

手順2

メタエディターが起動するので、メニューバーから「新規作成」ボタンをクリックします。

メタエディターを起動 メタエディターを起動

手順3

「カスタムインディケータ」を選択し、「次へ」ボタンをクリックします。

カスタムインディケータを作成 カスタムインディケータを作成

手順4

作成するインディケータの名称・著作者・表示させるリンク、また必要に応じてパラメータを設定し、「次へ」ボタンをクリックします。名前以外の項目は空にしても問題ありません。

また、これ以降に入力・設定する内容は、後からコード上で追加・変更・削除を行うことが可能です。

カスタムインディケータのプロパティ設定 カスタムインディケータのプロパティ設定

番号

項目名

説明

1

名前

作成するインディケータの名称を指定します。

2

著作者

作成するインディケータの著作者を記載します。

3

リンク

表示させるリンクを入力します。

point 名前と著作者の情報は設定画面に表示される

登録した名称・著作者・リンクの情報は、インディケータの設定画面に表示されます。

手順5

使用するイベントハンドラ(特定のタイミングで自動的に実行される関数)を設定します。

イベントハンドラを設定 イベントハンドラを設定

番号

項目名

説明

1

OnCalculate
(... ,open,high,low,close)

OnCalculate(...,open,high,low,close)は、ティックが更新された時に実行されます。時刻・始値高値安値終値ティックボリューム・ボリューム・スプレッドといった値を使用して、ティック更新時に実行するプログラムを記述できます。

2

OnCalculate
(...,prices)

OnCalculate(...,prices)は、ティックが更新されたときに実行されます。インディケータの設定画面において、「パラメータ」タブの「適用価格」でユーザーが選択した価格を使用して、ティック更新時のプログラムを記述できます。

3

OnTimer

OnTimerは、指定した時間ごとに動作する関数です。時間は後から、コード上で指定・変更できます。

4

OnChartEvent

OnChartEventは、チャートでのイベントを処理する関数です。チャート上でオブジェクトの作成・削除・移動・編集など、イベントが発生する際に実行されます。

手順6

インディケータをサブウインドウに表示する場合は、「サブウインドウに表示」のチェックボックスにチェックを入れます。サブウインドウの最小値と最大値を設定する場合は、「最小値」「最大値」のチェックボックスにチェックを入れ、最小値と最大値を指定します。

カスタムインディケータの描画プロパティを設定 カスタムインディケータの描画プロパティを設定

手順7

インディケータにオブジェクトを使用する場合は、「追加」ボタンをクリックします。「ラベル」にオブジェクトの名称を入力し、「タイプ」でオブジェクトの種類を、「カラー」でオブジェクトの色を指定してください。設定が完了したら、「完了」ボタンをクリックします。

オブジェクトの追加設定 オブジェクトの追加設定

手順8

MQL4言語でプログラムを記述します。

MQL4プログラムを記述 MQL4プログラムを記述

手順9

プログラムを記述し終えたら、ツールバーの「コンパイル」ボタンをクリックします。

コンパイルを実行 コンパイルを実行

手順10

コンパイルが完了すると、「ナビゲータ」欄に作成したインディケータが反映されます。

コンパイル完了 コンパイル完了

手順11

メタエディターを閉じてMT4に戻り、「ナビゲータ」に作成したインディケータが反映されていることを確認します。

ナビゲータに作成したインディケータが反映 ナビゲータに作成したインディケータが反映

手順1

メニューバーの「ツール」をクリックし、「MetaQuotes 言語エディタ」を選択します。

MetaQuotes 言語エディタ MetaQuotes 言語エディタ

手順2

メタエディターが起動します。メニューバーの「新規作成」ボタンをクリックします。

メタエディターが起動 メタエディターが起動

手順3

「カスタムインディケータ」を選択し、「次へ」ボタンをクリックします。

メタエディターが起動 メタエディターが起動

手順4

作成するインディケータの名称・著作者・表示させるリンク、また必要に応じてパラメータを設定し、「次へ」ボタンをクリックします。名前以外の項目は空にしても問題ありません。

また、これ以降に入力・設定する内容は、後からコード上で追加・変更・削除を行うことが可能です。

メタエディターが起動 メタエディターが起動

番号

項目名

説明

1

名前

作成するインディケータの名称を指定します。

2

著作者

作成するインディケータの著作者を記載します。

3

リンク

表示させるリンクを入力します。

point 名前と著作者の情報は設定画面に表示される

登録した名称・著作者・リンクの情報は、インディケータの設定画面に表示されます。

名前と著作者の情報は設定画面に表示 名前と著作者の情報は設定画面に表示

手順5

使用するイベントハンドラ(特定のタイミングで自動的に実行される関数)を設定します。

イベントハンドラ イベントハンドラ

番号

項目名

説明

1

OnCalculate
(...,open,high,low,close)

OnCalculate(...,open,high,low,close)は、ティックが更新された時に実行されます。時刻・始値高値安値終値ティックボリューム・ボリューム・スプレッドといった値を使用して、ティック更新時に実行するプログラムを記述できます。

2

OnCalculate
(...,prices)

OnCalculate(...,prices)は、ティックが更新されたときに実行されます。インディケータの設定画面において、「パラメータ」タブの「適用価格」でユーザーが選択した価格を使用して、ティック更新時のプログラムを記述できます。

3

OnTimer

OnTimerは、指定した時間ごとに動作する関数です。時間は後から、コード上で指定・変更できます。

4

OnChartEvent

OnChartEventは、チャートでのイベントを処理する関数です。チャート上でオブジェクトの作成・削除・移動・編集など、イベントが発生する際に実行されます。

手順6

インディケータをサブウインドウに表示する場合は、「サブウインドウに表示」のチェックボックスにチェックを入れます。サブウインドウの最小値と最大値を設定する場合は、「最小値」「最大値」のチェックボックスにチェックを入れ、最小値と最大値を指定します。

サブウインドウに表示 サブウインドウに表示

手順7

インディケータにオブジェクトを使用する場合は、「追加」ボタンをクリックします。「ラベル」にオブジェクトの名称を入力し、「タイプ」でオブジェクトの種類を、「カラー」でオブジェクトの色を指定してください。設定が完了したら、「完了」ボタンをクリックします。

インディケータにオブジェクトを使用する場合 インディケータにオブジェクトを使用する場合

手順8

MQL5言語でプログラムを記述します。

MQL5プログラム MQL5プログラム

手順9

プログラムを記述し終えたら、ツールバーの「コンパイル」ボタンをクリックします。

ツールバーの「コンパイル」ボタン ツールバーの「コンパイル」ボタン

手順10

コンパイルが完了すると、「ナビゲータ」欄に作成したインディケータが反映されます。

インディケータが反映 インディケータが反映

手順11

メタエディターを閉じてMT5に戻り、「ナビゲータ」に作成したインディケータが反映されていることを確認します。

インディケータが反映 インディケータが反映

Date

作成日

2021.04.08

Update

最終更新

2026.03.17

中丸 貴仁 | Takayoshi Nakamaru

マニュアル制作コンサルタント歴12年 経営学修士(MBA)

arrow
中丸 貴仁

マニュアル制作会社フィンテックスにて、マニュアルに関する様々な顧客課題解決に従事。
金融系からエンターテインメント系まで様々な経験から幅広い業務知識を得て、「分かりやすいマニュアル」のあるべき姿を提示。
複数の大企業で、外部マニュアル制作プロジェクトマネージャーを兼務している。

【企業情報】
http://www.fintecs.co.jp/profile/

監修者情報

高木 明 | Akira Takagi

システムエンジニア・MetaTraderアドミニストレータ

arrow
高木 明

2014年、ブラジルUninove大学 コンピュータ科学科を卒業し、その後、様々なシステム開発に携わる。
2019年にFXサービス立ち上げに開発者として参加。その後、MetaTraderのプラグインおよびAPIの開発にも従事。MetaQuotes社認定の、MetaTrader5 Administratorの資格を保持しており、開発だけでなく、コンサルティングやアドバイザーとしても活躍している。

この記事は、お役に立ちましたか?

ご覧いただきありがとうございます。Myforexでは、記事に関するご意見・ご感想をお待ちしています。
また、海外FX・仮想通貨の経験が豊富なライター様も随時募集しております。

お問い合わせ先 [email protected]

貴重な意見をいただきありがとうございます。
貴重な意見をいただきありがとうございます。
関連記事

【MT4/MT5】EA・インディケータの設定を変更する方法【MT4/MT5】EA・インディケータの設定を変更する方法

【MT4/MT5】EA・インディケータの設定を変更する方法

date2025.11.05 update2026.03.17


MetaTrader4(MT4)/MetaTrader5(MT5)では、チャートに適用したエキスパートアドバイザ(EA)や、インディケータの設定をいつでも変更することが可能です。設定によって取引戦略に応じた動作を実現し、表示の見た目も変更できます。

【MT4/MT5】EA・インディケータ設定ファイルの作成・読込方法【MT4/MT5】EA・インディケータ設定ファイルの作成・読込方法

【MT4/MT5】EA・インディケータ設定ファイルの作成・読込方法

date2025.10.03 update2026.03.24


MetaTrader4(MT4)/MetaTrader5(MT5)には、カスタマイズしたインプット設定を簡単に保存・復元できるよう、設定ファイルを作成・読込する機能があるため、EAやインディケータを適用する度に多くの設定を変更する手間が省けます。

【MT4/MT5】カスタムインディケータをインストールする方法【MT4/MT5】カスタムインディケータをインストールする方法

【MT4/MT5】カスタムインディケータをインストールする方法

date2023.03.14 update2026.03.17


MetaTrader4(MT4)/MetaTrader5(MT5)では、標準搭載されているテクニカル指標(インディケータ)以外にも、お好みのインディケータをインストールすることができます。ユーザーが自分でインストールするインディケータは、「カスタムインディケータ」と呼ばれています。

【MT4/MT5】エキスパートアドバイザ(EA)のバックテストレポートを保存する方法【MT4/MT5】エキスパートアドバイザ(EA)のバックテストレポートを保存する方法

【MT4/MT5】エキスパートアドバイザ(EA)のバックテストレポートを保存する方法

date2022.04.04 update2026.03.24


MetaTrader4(MT4)/MetaTrader5(MT5)で、エキスパートアドバイザ(EA)のバックテストレポートを保存する方法について説明します。MT4/MT5では、ストラテジーテスター機能を利用して自動売買プログラムのバックテストを行うことが可能です。

【MT4/MT5】エキスパートアドバイザ(EA)をバックテストする方法【MT4/MT5】エキスパートアドバイザ(EA)をバックテストする方法

【MT4/MT5】エキスパートアドバイザ(EA)をバックテストする方法

date2022.04.04 update2026.03.22


MetaTrader4(MT4)/MetaTrader5(MT5)のストラテジーテスター機能では、エキスパートアドバイザ(EA)と呼ばれる、自動売買プログラムのバックテストを行うことができます。ここでは、MT4/MT5にて、エキスパートアドバイザ(EA)をバックテストする方法を説明します。

【MT4/MT5】トレンドラインを表示・設定する方法【MT4/MT5】トレンドラインを表示・設定する方法

【MT4/MT5】トレンドラインを表示・設定する方法

date2021.04.12 update2026.03.24


MetaTrader4(MT4)/MetaTrader5(MT5)では、相場の流れとなるトレンドの方向性や、勢い、相場のサイクルを見極める際の分析ツールとして、トレンドライン、角度によるトレンドライン、サイクルラインをチャートに表示することができます。


免責事項:Disclaimerarw

当サイトの、各コンテンツに掲載の内容は、情報の提供のみを目的としており、投資に関する何らかの勧誘を意図するものではありません。
これらの情報は、当社が独自に収集し、可能な限り正確な情報を元に配信しておりますが、その内容および情報の正確性、完全性または適時性について、当社は保証を行うものでも責任を持つものでもありません。投資にあたっての最終判断は、お客様ご自身でなさるようお願いいたします。

本コンテンツは、当社が独自に制作し当サイトに掲載しているものであり、掲載内容の一部または、全部の無断転用は禁止しております。掲載記事を二次利用する場合は、必ず当社までご連絡ください。

  • Facebook
  • Twitter
  • LINE

Myforexでは、このウェブサイトの機能向上とお客様の利便性を高めるためにクッキー使用しています。本ウェブサイトでは、当社だけではなく、お客様のご利用状況を追跡する事を目的とした第三者(広告主・ログ解析業者等)によるクッキーも含まれる可能性があります。 クッキーポリシー

クッキー利用に同意する
share
シェアする
Line

Line

Facebook

Facebook

X

Twitter

キャンセル
close
promotion
今すぐ参加する

次回から表示しない