MQL4プログラミングにおけるエラーとは、作成したプログラムが正常に動作しない事を言い、大きく分けると以下の2つに分かれます。
- コンパイルエラー
- EA稼働中のエラー
コンパイルとは、自分が書いたプログラムをコンピューターが実行可能なファイルに変換する機能です。
コンパイルの段階で実行できないと判断した場合、コンパイルエラーとなり使用できません。
またコンパイルできたとしても正常に動かない場合もあります。
プログラミングで出現する代表的なエラー
MQL4のプログラミングで出現する代表的なエラーと以下の4つが挙げられます。
- 変数が定義されていない
- {}の位置が合わない
- 全角スペースが入ってしまっている
- ;(セミコロン)の付け忘れ
変数が定義されていない

このエラーの意味は、一番上なら「eprice2という変数が定義されていないのに文中で使われています」という意味になります。
プログラミングでは一度変数の定義というものを行ってから、変数を使っていく流れになります。
変数が定義されていないのにつかわれている場合、上のようなエラーが出てしまいます。
{}の数が合わない時

{}が抜けている場合は、上記のようなエラーが出てしまいます。
『{』の方はあるのに、『}』が抜けている場合などに上記のエラーは発生します。
全角スペースがはいっている

全角スペースが入っていてもエラーが起こります。
基本的には全角スペース以降より下の文にエラーメッセージが出ます。
そのためエラーメッセージの一番上の行付近に全角スペースが入ってしまっている可能性が高いです。
セミコロン(;)の付け忘れ

全角スペースと同じエラーで、セミコロン(;)の付け忘れでもエラーは出ます。
各文の終わりにセミコロンを付ける必要がありますが、セミコロンを付け忘れると、付け忘れた文より後ろでエラーメッセージが表示されます。
EA稼働中のエラーコード(Error codes)
EAの稼働中にも以下の様にエラーが発生する場合があります。

MQL4は仕様通りに作成しても、取引所が絡んだエラーが発生することがあります。
その場合、エラー番号を下記公式HPで確認して修正する必要があります。
※対応言語は英語、中国語、ロシア語の3つで日本語には対応していませんので翻訳機能使用するか、MQL4エラーコードなどで検索する必要があります。