コンピューターはMQL4で書かれたコードを直接理解することができません。コンピューターが理解できる形式に変換してあげる必要があります。
それがコンパイルという作業です。
コンパイル手順
メタエディターを起動します。(起動方法はメタエディターの初期設定を参照)
[ナビゲータ]ウィンドウの[MQL4]-[Experts]をクリックして展開し、[Moving Average.mq4]をダブルクリックします。「.mq4」のファイルがMQL4ファイルです。メタエディターの画面上部にある[コンパイル]ボタンをクリックします。
画面下部にある[ツールボックス]ウィンドウの[エラー]タブの[詳細]欄に「0 error(s), 0 warning(s)」と表示されれば、コンパイルの正常終了です。
MT4インストール先\MQL4\Expertsフォルダ(「.mq4」と同じ階層)に「Moving Average.ex4」が作成されていることをご確認ください。「.ex4」のファイルがEAの本体になります。
「Moving Average.ex4」をチャートに挿入すれば、市販のEAと同じようにFX自動売買が行われます。
もし、自作のMQL4ファイルをコンパイルして「3 error(s), 0 warning(s)」のように、error(s)が1以上になった場合、コンパイルエラーが発生したことを表しており、コンパイル失敗です。.ex4ファイルは作成されません。エラー原因を探して、対処する必要があります。
また、「0 error(s), 4 warning(s)」のように、warning(s)が1以上になった場合、文法上好ましくないコードがあることを示しているものの、EA自体はちゃんと作られます(稼働します)。ただ、わざわざ警告してくるぐらいなので、warning(s)もできるだけ0になるようにコードを見直す方がよいでしょう。
自作のMQL4ファイルの最初のコンパイルでは、ほぼ間違いなく何らかのコンパイルエラーが発生するはずです。プログラミングに慣れた人でも、です。なので、エラーがどばーっと表示されても、落ち込まないでください。誰しもが通る道ですから。
余談ですが、コンパイルエラーはまだ良い方なんです。「ここがダメ!」って教えてくれるわけですから。エラーの出ない不具合の対応が一番辛いんです。「エラーの出ない不具合って何?」って感じだと思いますが、この話はまた別の機会に。