Relocate Python EA helpers under MQL5

This commit is contained in:
Hiroaki86
2026-05-28 03:11:33 +09:00
parent fa3394415d
commit 3d853fa67a
13 changed files with 1303 additions and 31 deletions
+10 -2
View File
@@ -85,7 +85,7 @@
- Python output: `trend_state.txt`
- Done marker: `process_done_trend.txt`
- Running marker: `process_running_trend.txt`
- Batch file: `C:\ea_py\bat\get_trend_reply.bat`
- Batch file: `<TerminalDataPath>\MQL5\python_for_ea\bat\get_trend_reply.bat`
### H1 Entry Candidate Generation
@@ -93,7 +93,9 @@
- Python output: `target_prices.txt`
- Done marker: `process_done_entry.txt`
- Running marker: `process_running_entry.txt`
- Batch file: `C:\ea_py\bat\get_entry_reply.bat`
- Batch file: `<TerminalDataPath>\MQL5\python_for_ea\bat\get_entry_reply.bat`
During `OnInit()`, the EA resolves `MQL5\python_for_ea` from `TerminalInfoString(TERMINAL_DATA_PATH)` and builds absolute batch-file paths. Each batch file resolves the Python project root from its own location, so runtime execution no longer depends on `C:\ea_py`.
`target_prices.txt` must contain 13 lines:
@@ -175,6 +177,12 @@ New entries are allowed only when all conditions below are satisfied:
## 10. Changelog
### 2026-05-27
- Moved the Python helper application specification from `C:\ea_py` to `MQL5\python_for_ea` under the MT5 data folder.
- Updated the EA startup path model so batch paths are built from `TerminalInfoString(TERMINAL_DATA_PATH)`, and the external process working directory is derived from the batch-file location.
- Updated Python path discovery so the default MT5 linkage is the adjacent `MQL5\Files` directory, with `MT5_FILES_DIR` or `MT5_DATA_PATH` available for explicit overrides.
### 2026-05-13
- Added a Python-side H1 EATR distance guard that invalidates candidates farther than `max(H1 EATR * 0.65, 5.00)` from the current price before they are passed to MT5.
+10 -2
View File
@@ -93,7 +93,7 @@
- Python出力: `trend_state.txt`
- 完了フラグ: `process_done_trend.txt`
- 実行中フラグ: `process_running_trend.txt`
- 起動バッチ: `C:\ea_py\bat\get_trend_reply.bat`
- 起動バッチ: `<TerminalDataPath>\MQL5\python_for_ea\bat\get_trend_reply.bat`
### H1エントリー価格生成
@@ -101,7 +101,9 @@
- Python出力: `target_prices.txt`, `target_zones.txt`
- 完了フラグ: `process_done_entry.txt`
- 実行中フラグ: `process_running_entry.txt`
- 起動バッチ: `C:\ea_py\bat\get_entry_reply.bat`
- 起動バッチ: `<TerminalDataPath>\MQL5\python_for_ea\bat\get_entry_reply.bat`
EAは `OnInit()``TerminalInfoString(TERMINAL_DATA_PATH)` から `MQL5\python_for_ea` を解決し、各batファイルの絶対パスを組み立てる。batファイルは自身の位置からPythonプロジェクトルートを解決するため、`C:\ea_py` には依存しない。
`target_prices.txt` は13行構成とする。
@@ -200,6 +202,12 @@ Pythonは `target_prices.txt` と `target_zones.txt` の両方を書き終えて
## 10. 変更履歴
### 2026-05-27
- Python補助アプリの配置を `C:\ea_py` からMT5データフォルダ配下の `MQL5\python_for_ea` へ移行する仕様に変更した。
- EA側は `TerminalInfoString(TERMINAL_DATA_PATH)` からbatパスを組み立て、外部プロセスの作業ディレクトリはbatファイルの配置から導出するようにした。
- Python側は `MQL5\python_for_ea` の親にある `MQL5\Files` を既定の連携先として自動検出し、必要に応じて `MT5_FILES_DIR` または `MT5_DATA_PATH` で上書きできる仕様にした。
### 2026-05-24
- Python側で `target_zones.txt` を追加出力し、既存 `target_prices.txt` と両方を書き終えてから `process_done_entry.txt` を作成する仕様にした。