ex5ファイルしかないEAは改修できる?開発依頼前に確認すること
ex5ファイルしかないEAを使っていて、「このEAを少し改修したい」「ロジックを追加したい」「通知だけ付けたい」と考えることがあります。
ただし、MT5のEAでは、手元にあるファイルが ex5 だけなのか、mq5 や mqh などのソースコードもあるのかによって、対応できる範囲が大きく変わります。
ex5 は、MT5上で実行するためにコンパイルされたファイルです。一方で、mq5 や mqh は、開発者が編集するためのソースコードです。そのため、ex5ファイルだけを直接編集して、元の中身をそのまま改修することは原則としてできません。
また、第三者が作成したEAを無断で解析したり、権利者の許可なく内部ロジックを取り出したりするような対応は避ける必要があります。
この記事では、ex5ファイルしかないEAについて、改修依頼前に確認したいファイル種別、対応できる可能性がある範囲、対応が難しい範囲、代替案、提出資料、ログ確認のポイントを整理します。
なお、この記事はEA改修や開発依頼前の技術確認を目的とした内容です。特定の売買手法、推奨ロット、推奨エントリー、利益保証を行うものではありません。
この記事で確認すること
| 確認項目 | 内容 | 依頼前の確認ポイント |
|---|---|---|
| ex5 | MT5で実行するためのコンパイル済みファイルです。 | 原則として直接編集するファイルではありません。 |
| mq5 | EAやインジケーターのソースコードです。 | 改修依頼では最も重要な確認資料です。 |
| mqh | 共通関数やライブラリを分けた補助ソースです。 | mq5とセットで必要になる場合があります。 |
| setファイル | EAの入力パラメータを保存した設定ファイルです。 | 現在の設定や再現条件の確認に使います。 |
| ログ | EAの起動、注文、エラー、停止理由などの記録です。 | ExpertsログとJournalログを分けて確認します。 |
ex5ファイルとは
ex5ファイルとは、MT5でEAやインジケーターを実行するためのコンパイル済みファイルです。
通常、MT5のExpertsフォルダやIndicatorsフォルダに配置して使います。MT5上では動かせますが、MetaEditorで中身を編集するためのファイルではありません。
| ファイル | 役割 | 編集可否の目安 |
|---|---|---|
| .ex5 | MT5で実行するコンパイル済みファイルです。 | 通常は直接編集できません。 |
| .mq5 | EAやインジケーターのソースコードです。 | 改修対象になります。 |
| .mqh | 共通処理やライブラリ用のソースです。 | mq5と一緒に必要になる場合があります。 |
| .set | EAのパラメータ設定です。 | 設定確認や再現確認に使います。 |
| .log | MT5やEAの動作記録です。 | 不具合・挙動確認に使います。 |
改修を依頼する場合は、まず手元にあるファイルが ex5 だけなのか、mq5 や mqh もあるのかを確認してください。
ex5しかない場合にできないこと
ex5しかない場合、元のソースコードを直接編集する形の改修は原則としてできません。
たとえば、エントリーロジックの条件を少し変える、内部のナンピン計算を変える、決済優先順位を変える、既存関数の中身を修正する、といった作業は、通常ソースコードが必要です。
| やりたいこと | ex5のみでの対応 | 理由 |
|---|---|---|
| 内部ロジックを一部変更する | 原則難しい | 編集対象のソースコードが必要です。 |
| 決済条件を変える | 原則難しい | EA内部の判定処理を変更する必要があります。 |
| ナンピン幅や倍率の計算式を変える | 原則難しい | 内部計算ロジックの変更が必要です。 |
| パネル表示の内容を変える | 原則難しい | 画面描画処理のソース編集が必要です。 |
| EA内部の認証方式を変える | 原則難しい | 外部連携や認証処理の実装変更が必要です。 |
このような場合は、元の開発者に mq5 や mqh の提供可否を確認するか、既存EAの挙動を参考にしながら、新規EAとして再設計できるかを検討する流れになります。
ex5しかない場合でも相談できること
ex5しかない場合でも、すべての相談ができないわけではありません。
元のEAを直接改修するのではなく、現在の挙動を確認したうえで、外側から補助する方法や、新規開発として近い仕様を作る方法を検討できる場合があります。
| 相談内容 | 対応可能性 | 確認する資料 |
|---|---|---|
| 現在の挙動確認 | 相談しやすい | 取引履歴、ログ、setファイル、スクリーンショットを確認します。 |
| 動作しない原因の切り分け | 相談しやすい | Expertsログ、Journalログ、MT5環境を確認します。 |
| 似た仕様のEAを新規作成する | 条件次第で相談可能 | 希望仕様、既存挙動、必要機能を整理します。 |
| 補助ツールを別EAとして作る | 条件次第で相談可能 | 監視対象、通知条件、対象Magic Numberなどを確認します。 |
| ログや取引履歴から仕様を整理する | 相談しやすい | バックテスト履歴、運用履歴、設定値を確認します。 |
重要なのは、「既存ex5を直接書き換える」のではなく、「何を実現したいのか」「今のEAがどのように動いているのか」「新規または補助機能として実装できるか」を分けて確認することです。
mq5やmqhがある場合に確認すること
mq5やmqhがある場合は、改修できる可能性が高くなります。
ただし、ソースコードがある場合でも、コード全体の構造、includeファイル、外部ライブラリ、認証処理、WebRequest、DLL利用、外部ファイル参照などによって、確認すべき範囲は変わります。
| 確認項目 | 内容 | 依頼前の注意点 |
|---|---|---|
| mq5本体 | EAやインジ本体のソースコードです。 | 最新版かどうかを確認します。 |
| mqhファイル | 共通関数や外部部品です。 | include先が不足していないか確認します。 |
| 外部ライブラリ | DLLや外部ファイル参照です。 | 配布可否や利用条件を確認します。 |
| 認証処理 | 口座認証、ライセンス認証などです。 | 認証情報やトークンの扱いに注意します。 |
| コンパイル結果 | MetaEditor上のエラーや警告です。 | エラー行、ファイル名、メッセージを保存します。 |
改修依頼では、mq5だけでなく、参照しているmqhファイルや関連ファイルが不足していないかも重要です。
対応可否を判断するために必要な情報
ex5しかないEAについて相談する場合は、最初に現状を整理しておくと、対応可否の判断がしやすくなります。
| 情報 | 確認内容 | 理由 |
|---|---|---|
| EA名 | ファイル名、表示名、バージョンを確認します。 | 対象を取り違えないためです。 |
| 手元のファイル | ex5、mq5、mqh、set、説明書の有無を確認します。 | 改修可否の判断に必要です。 |
| 変更したい内容 | 追加、削除、修正、調査を分けて整理します。 | 改修か新規開発かを判断するためです。 |
| 現在の挙動 | どの条件でどう動いているかを確認します。 | 再現開発や補助機能の検討に必要です。 |
| 残したい挙動 | 既存のまま残したい機能を整理します。 | 仕様変更による影響を避けるためです。 |
| 困っている症状 | 動かない、決済しない、通知しないなどを整理します。 | 改修ではなく不具合切り分けの場合があります。 |
| ログ | ExpertsログとJournalログを確認します。 | エラーや注文失敗の確認に必要です。 |
| 検証条件 | 銘柄、時間足、口座、MT5ビルド、期間を確認します。 | 再現条件を揃えるためです。 |
改修ではなく新規開発になるケース
ex5しかない場合、希望内容によっては「既存EAの改修」ではなく「新規開発」に近い対応になることがあります。
特に、内部ロジックを変えたい場合や、既存EAの判断条件を詳細に変更したい場合は、元のソースコードがないと直接改修できないため、仕様を整理したうえで新しく作る形を検討します。
| 依頼内容 | 扱い | 理由 |
|---|---|---|
| エントリーロジックを変更したい | 新規開発寄り | 内部判定条件の再設計が必要です。 |
| ナンピン計算を変更したい | 新規開発寄り | 追加幅、倍率、停止条件の設計が必要です。 |
| 決済ロジックを変更したい | 新規開発寄り | TP/SL、建値、トレーリング、決済優先順位の設計が必要です。 |
| 通知だけを追加したい | 補助EAで検討できる場合があります。 | 既存EAの状態を外側から監視できる可能性があります。 |
| 取引履歴をCSV化したい | 補助ツールで検討できる場合があります。 | 履歴やポジション情報を別ツールで取得できる場合があります。 |
新規開発になる場合でも、既存EAの取引履歴やログ、スクリーンショット、設定値があると、仕様整理の参考になります。
依頼前に用意するとよい資料
開発相談や改修相談をする前に、以下の資料を整理しておくと確認が進めやすくなります。
| 資料 | 内容 | 注意点 |
|---|---|---|
| ファイル一覧 | ex5、mq5、mqh、set、説明書の有無を整理します。 | フォルダ構成も分かると確認しやすくなります。 |
| 希望する改修内容 | 何を追加・変更・削除したいかを整理します。 | 「今と何を変えたいか」を具体化します。 |
| 残したい動作 | 既存EAで変えたくない挙動を整理します。 | 改修影響を避けるために重要です。 |
| setファイル | 現在使っているEA設定です。 | 口座情報や個人情報を含めないよう注意します。 |
| Expertsログ | EA側の動作ログです。 | 起動、認証、注文、エラーを確認します。 |
| Journalログ | MT5全体の操作・注文・接続ログです。 | 取引環境やエラー確認に使います。 |
| スクリーンショット | 設定画面、エラー画面、チャート状態です。 | 口座番号などは必要に応じて伏せます。 |
| バックテスト条件 | 銘柄、時間足、期間、スプレッド、モデルを整理します。 | 実運用条件と混同しないようにします。 |
ログで確認したいこと
ex5しかない場合でも、ログから現在の挙動やエラーの一部を確認できることがあります。
特に、EAが起動しているか、認証で止まっていないか、スプレッドや時間制限で見送りになっていないか、注文エラーが出ていないかを確認します。
| ログ項目 | 確認内容 | 見る場所 |
|---|---|---|
| 起動ログ | EAがチャートに正常に読み込まれているか確認します。 | Expertsログ |
| 認証ログ | ライセンス認証や口座認証で止まっていないか確認します。 | Expertsログ |
| 注文ログ | OrderSend、注文失敗、retcodeなどを確認します。 | Expertsログ / Journalログ |
| エラーログ | GetLastError、trade disabled、market closedなどを確認します。 | Expertsログ / Journalログ |
| 取引履歴 | エントリー、決済、ロット、Magic Numberを確認します。 | MT5の履歴タブ |
| 停止理由 | 時間帯、スプレッド、証拠金、外部制御などを確認します。 | EAログ |
権利・ライセンス面で確認すること
第三者が作成したEAを扱う場合は、権利や利用条件の確認も重要です。
購入したEA、配布されたEA、別の開発者が作ったEAなどでは、改修、再配布、解析、二次利用が制限されている場合があります。開発相談の前に、利用規約やライセンス条件を確認してください。
| 確認項目 | 内容 | 注意点 |
|---|---|---|
| 権利者 | 誰が作成・販売・配布したEAか確認します。 | 無断改変や無断解析は避けます。 |
| 利用規約 | 改修や二次利用が許可されているか確認します。 | 禁止事項がある場合があります。 |
| ソース提供可否 | mq5やmqhを提供してもらえるか確認します。 | 元の開発者への確認が必要な場合があります。 |
| 再配布可否 | 改修後ファイルを他者へ渡せるか確認します。 | 個人利用限定の可能性があります。 |
| 認証方式 | ライセンス認証や口座制限の有無を確認します。 | 認証回避を目的とした依頼は避けます。 |
対応可否は、技術面だけでなく、権利面、利用条件、依頼内容によって変わります。
相談前チェック表
| チェック項目 | 確認内容 |
|---|---|
| 手元にあるファイル種別を確認した | ex5、mq5、mqh、set、説明書の有無を確認します。 |
| ソースコードの有無を確認した | mq5やmqhがあるか、元の開発者へ確認できるか整理します。 |
| 変更したい内容を整理した | 追加、削除、修正、調査を分けて書き出します。 |
| 残したい既存挙動を整理した | 変えたくないロジックや設定を確認します。 |
| 再現条件を整理した | 銘柄、時間足、口座タイプ、MT5ビルド、期間を記録します。 |
| Expertsログを確認した | EA起動、認証、注文、エラーの有無を確認します。 |
| Journalログを確認した | MT5全体の注文、接続、取引許可状態を確認します。 |
| setファイルを保存した | 現在のEA設定を再現できるように保存します。 |
| 権利や利用条件を確認した | 改修、再配布、二次利用の可否を確認します。 |
| 新規開発になる可能性を理解した | ex5しかない場合は、直接改修ではなく再設計になる場合があります。 |
FAQ
ex5ファイルしかないEAは改修できますか?
ex5ファイルだけを直接編集して、元のEAをそのまま改修することは原則としてできません。改修には通常、mq5やmqhなどのソースコードが必要です。
ソースコードがない場合でも相談できますか?
相談できる場合があります。ただし、既存EAの直接改修ではなく、挙動確認、ログ確認、補助ツール作成、新規開発として近い仕様を設計する形になる場合があります。
ex5を解析して中身を取り出すことはできますか?
権利者の許可がない解析や逆コンパイルに該当する対応は避ける必要があります。まずは元の開発者や販売元にソースコードの提供可否や改修可否を確認してください。
改修ではなく新規開発になるのはどんな場合ですか?
エントリーロジック、決済ロジック、ナンピン計算、認証処理、パネル表示など、EA内部の処理を変更したい場合は、新規開発に近い扱いになることがあります。
相談前に何を用意すればよいですか?
手元のファイル一覧、変更したい内容、残したい挙動、setファイル、Expertsログ、Journalログ、スクリーンショット、検証条件を整理しておくと確認しやすくなります。
バックテスト結果だけで依頼できますか?
バックテスト結果だけでは仕様を特定できない場合があります。設定値、ログ、取引履歴、希望する変更内容をあわせて整理してください。
関連ページ
ex5ファイルしかないEAの改修可否を確認する時は、ソースコードの有無だけでなく、コンパイル、決済ロジック、ログ確認、見積依頼前の資料整理もあわせて確認すると整理しやすくなります。
| 関連ページ | 確認ポイント |
|---|---|
| EA開発の見積依頼前に整理すること|仕様書・ログ・setファイル・検証条件 | 既存EAの改修相談前に、仕様書、ログ、setファイル、検証条件を整理する時に確認します。 |
| MQL5のコンパイルエラー修正を依頼する前に確認すること|エラー行・include・BOM | mq5やmqhがある場合に、コンパイルエラーやinclude不足を確認する時に使います。 |
| EAの決済ロジックだけを改修したい時に整理すること|TP/SL・建値・トレーリング・一括決済 | 既存EAのエントリー条件は変えず、決済ロジックだけを改修したい場合に確認します。 |
| EAのログ出力を増やしたい時に整理すること|Experts・Journal・CSV・通知 | ex5しかない場合でも、現在の挙動や不具合をログから整理したい時に確認します。 |
まとめ
ex5ファイルは、MT5で実行するためのコンパイル済みファイルです。通常、ex5だけを直接編集して既存EAを改修することはできません。
改修を依頼する場合は、mq5やmqhなどのソースコードがあるかを最初に確認してください。ソースがない場合は、既存EAの直接改修ではなく、挙動確認、ログ確認、補助ツール作成、新規開発としての再設計を検討する流れになります。
相談前には、手元にあるファイル、変更したい内容、残したい挙動、setファイル、Expertsログ、Journalログ、スクリーンショット、検証条件を整理しておくと確認が進めやすくなります。
また、第三者が作成したEAでは、利用規約、ライセンス、改修可否、ソース提供可否も重要です。権利者の許可がない解析や逆コンパイルに該当する対応は避け、技術面と権利面を分けて確認してください。
