MT4のEAは自作することができますが、2022年現在デコンパイル対策は必要なのでしょうか。結論から言うと、現在ではMT4のEAはデコンパイル出来ないようになっています。
デコンパイルとは、EAからソースコードファイルを復元させることで、デコンパイルできてしまうとEAのロジックを含むソースコード全てが盗まれてしまう可能性があります。2014年以前のMT4のEAでは、このデコンパイルが比較的かんたんにできてしまう仕様だったため、悪質なデコンパイルサイトが横行していました。EAは知識財産に当たるため、著作権の侵害です。EA開発者はデコンパイルしてソースコードを盗まれないようにする対策が求められていました。EA自体にプロテクターを掛けるといった対策が一般的でしたが、中にはプログラマーがプロテクター解除を受注しているケースもあったようです。
しかしそれに対しMT4側も著作権保護のために対策を取りました。2014年に行われたbuild610へのアップデート以降は、デコンパイルができないような仕様になりました。現在のMT4のメタエディタで作成したEAは、コンパイルして保存すればデコンパイルはできません。それにより無料・有料でデコンパイルを受けていたサイトは現在ではほぼ確認できません。
ではEAのソースコードは全く見れなくなってしまったのでしょうか。EAのソースコードは、EA開発者自身がオープンソースとして公開している場合に限り確認することができます。日本では一部のみ公開や、コードが完全にコピーされないように工夫されているものが多いです。海外のMT4のEA掲示板では、完全オープンソースのEAも多く掲示されているので、プログラミングの練習を行いたい方は一度掲示板を覗いてみてください。オープンソースのものであれば、自己流にコードを組みなおすこともできます。