Langkah 1: Dapatkan Kredensial Akun MT5
Kalau belum punya akun, paling gampang mulai dari akun demo dulu (gratis, tidak perlu KTP/verifikasi):
- Buka website broker (misal HSB, Monex, atau kalau cuma mau demo internasional bisa IC Markets/Exness demo)
- Cari menu "Buka Akun Demo" / "Demo Account"
- Isi form → kamu akan dapat email berisi:
- Login (nomor akun, contoh: 51234567)
- Password (investor/master)
- Server (contoh: "ICMarkets-Demo02" atau "MonexTrading-Demo") — ini sering terlupa tapi WAJIB persis sama
Langkah 2: Install & Login MT5
1. Download installer MT5 dari broker (bukan dari MetaQuotes langsung, karena tiap broker punya server list beda)
2. Jalankan installer, tunggu sampai selesai, MT5 otomatis kebuka
3. Kalau muncul jendela login, isi:
- Login: nomor akun kamu
- Password: password akun kamu
- Server: ketik nama server persis (kalau tidak muncul di dropdown, klik "Scan" atau ketik manual)
4. Klik Login. Kalau berhasil, di pojok kanan bawah MT5 akan muncul nama server + status koneksi (garis hijau/biru bergerak = data streaming masuk)
Cara cek MT5 benar-benar konek: buka salah satu chart (misal EURUSD), kalau candle terus update secara live, berarti sudah konek ke server.
Langkah 3: Cari Lokasi Instalasi MT5 (penting untuk Python)
Python perlu tahu di mana file `terminal64.exe` berada kalau ada lebih dari satu MT5 terinstal:
1. Klik kanan shortcut MT5 di Desktop → Open file location
2. Catat path lengkapnya, contoh: `C:\Program Files\MonexTrading MT5\terminal64.exe`
3. Kalau cuma ada satu MT5 di komputer, biasanya tidak perlu path ini — Python akan auto-detect
Langkah 4: Setting Wajib di MT5 (sering terlewat)
Buka `Tools` (menu atas) → `Options` → tab Expert Advisors:
- ✅ Allow automated trading
- ✅ Allow DLL imports
- ✅ Allow imports of external experts
Klik OK.
Lalu di toolbar utama MT5 (bukan menu, tapi baris ikon di atas), cari tombol "AutoTrading" (ikon play/tombol). Klik sampai warnanya hijau. Kalau merah, semua request dari Python/EA akan ditolak dengan error.
Langkah 5: Tambahkan Symbol ke Market Watch
Kalau pair yang mau kamu pakai (misal EURUSD) tidak muncul di panel kiri (Market Watch):
1. Klik kanan di panel Market Watch → Symbols (atau tekan `Ctrl+U`)
2. Di jendela yang muncul, cari "EURUSD" di kotak search
3. Klik kanan pair itu → Show
4. Pastikan sekarang muncul di Market Watch dengan harga bid/ask yang update
Kalau skip langkah ini, `copy_rates_range()` dari Python akan mengembalikan `None` meskipun koneksi berhasil.
Langkah 6: Install Python (kalau belum ada)
1. Download dari python.org/downloads (pilih versi 3.10-3.12, package `MetaTrader5` kadang belum support versi paling baru)
2. Saat instalasi, WAJIB centang "Add python.exe to PATH" di halaman pertama installer
3. Cek berhasil: buka Command Prompt (`Win+R` → ketik `cmd`), lalu:
python --version📋 Salin Kode
Harus muncul versi Python, bukan error "not recognized"
Langkah 7: Install Package yang Dibutuhkan
Extract `forex-lgbm.zip` ke folder, misal `C:\Users\NamaKamu\forex-lgbm`. Buka Command Prompt, arahkan ke folder itu:
cd C:\Users\NamaKamu\forex-lgbm
pip install -r requirements.txt📋 Salin Kode
Tunggu sampai semua terinstall (MetaTrader5, pandas, numpy, lightgbm, scikit-learn).
Langkah 8: Test Koneksi (paling penting)
Dengan MT5 dalam keadaan terbuka dan sudah login, jalankan:
python -c "import MetaTrader5 as mt5; print('Init:', mt5.initialize()); print(mt5.account_info()); print(mt5.terminal_info())"📋 Salin Kode
Hasil yang benar akan terlihat seperti ini:
Init: True
AccountInfo(login=51234567, balance=10000.0, leverage=100, ...)
TerminalInfo(community_account=False, connected=True, ...)📋 Salin Kode
Kalau `Init: False`, cek error code-nya:
python -c "import MetaTrader5 as mt5; mt5.initialize(); print(mt5.last_error())"📋 Salin Kode
Tabel Troubleshooting Detail
Pesan Error Arti Solusi
--- --- ---
`(-10005, 'IPC timeout')` MT5 tidak merespons Pastikan MT5 benar-benar terbuka (bukan cuma proses background), restart MT5
`(-10003, 'IPC not connected')` Python tidak menemukan MT5 Tambahkan `path="C:/.../terminal64.exe"` di `mt5.initialize()`
`(1, 'Success')` tapi `account_info()` return `None` Belum login ke akun Login manual dulu di MT5
`copy_rates_range` return `None` Symbol belum di-show, atau rentang tanggal di luar history broker Cek Market Watch, kurangi rentang tanggal
`ModuleNotFoundError: No module named 'MetaTrader5'` Package belum terinstall / salah environment Python `pip install MetaTrader5` lagi, pastikan pip yang dipakai sama dengan python yang jalanin script
Python 64-bit vs MT5 32-bit mismatch Jarang tapi bisa terjadi Install ulang MT5 versi 64-bit dari broker
Langkah 9: Kalau Test Berhasil → Jalankan Pipeline Asli
python 01_download_data.py --symbol EURUSD --timeframe H1 --from-date 2020-01-01 --to-date 2026-07-30📋 Salin Kode
Kalau di titik manapun kamu stuck, kirim ke saya:
1. Perintah persis yang kamu jalankan
2. Pesan error/output lengkap yang muncul
Biar saya bisa diagnosa persis di step mana masalahnya.