2014年のアップデート以前のMT4は、あまりにもシステムがシンプルだったため、EAがかんたんにデコンパイルできてしまっており、それが問題でした。デコンパイルとは、EAファイルの保護を解除し、中のソースコードを読み取れる状態にすることです。MT4のEAははじめmq4ファイルで作成されます。mq4ファイルは編集可能なファイルです。その後コンパイルという保護作業を経て、編集不可能なex4ファイルに変換されます。デコンパイルはこのex4ファイルをmq4ファイルに戻し、ソースコードを解読可能な状態にする作業を指します。
デコンパイルができてしまうと何が問題かと言うと、EAがそっくりそのまま盗まれてしまう可能性があるということです。優秀なEAの中身を盗み、少し改良して自分のEAとして売り出したり、中にはそのままコピーして転売したりするようなことも起きていたようです。
そういった問題が相次いだため、MT4にはアップデートが加えられ、かんたんにデコンパイルできないように改良されました。それ以降はEAもデコンパイルできなくなり、中身が盗まれることもなくなりました。以前はEAをデコンパイルするシステムやデコンパイルを請け負う人もインターネット上で散見されましたが、現在では見なくなりました。現在では、MT4のメタエディタでEAを作成し、最後に「コンパイル」ボタンを押せばそれだけで解読不能のファイルにすることができます。ソースコードを保護された状態に変換できるので、開発者も安心してEAを世に出すことができます。昔は何らかのデコンパイル対策が必須でしたが、今ではその心配はありません。
完成されたソースコードが必要な場合は、もともとオープンソースとして公開されているソースコードを利用するか、MT4のメタエディタに搭載されているサンプルEAを活用することになります。