Pengantar Algoritma Genetika untuk Optimasi EA di MT5
Daftar Isi
Pengantar Algoritma Genetika untuk Optimasi EA di MT5
Saat menyetel parameter EA, MT5 Strategy Tester menyediakan dua mode optimasi: brute-force (mencoba semua kombinasi parameter) dan algoritma genetika (GA).
Untuk menjelajahi kombinasi yang sangat banyak dalam waktu yang realistis, algoritma genetika sudah menjadi metode standar. Artikel ini membahas dasar-dasar optimasi algoritma genetika beserta poin-poin praktis yang perlu diperhatikan.
Poin penting artikel ini
- Jika kombinasi melebihi puluhan ribu, lakukan pencarian dengan algoritma genetika (GA), bukan brute-force
- Pilih recovery factor atau Sharpe ratio sebagai metrik evaluasi, dan keluarkan solusi dengan jumlah transaksi yang sedikit
- Tentukan nilai yang diadopsi bukan dari 1 solusi dengan skor tertinggi, tetapi dari pengelompokan 10–20 solusi teratas, sensitivitas parameter, dan validasi pembagian periode
Alur Optimasi (Gambaran Keseluruhan)
| Langkah | Yang Dilakukan | Penjelasan Detail |
|---|---|---|
| 1 | Persempit parameter yang dioptimasi ke sedikit parameter inti logika | Persempit Target Optimasi |
| 2 | Lihat jumlah kombinasi, lalu putuskan brute-force atau GA | Kapan Menggunakan Brute-Force vs. Algoritma Genetika |
| 3 | Di tester, atur "Fast genetic based algorithm" dan metrik evaluasi | Pengaturan di Strategy Tester |
| 4 | Jalankan optimasi dan pantau proses konvergensi di tab "Optimization results" | Menjalankan Optimasi Algoritma Genetika |
| 5 | Singkirkan over-optimasi dengan pembagian periode, perbandingan solusi teratas, dan cek sensitivitas | Menghindari Over-Optimasi |
| 6 | Jika memakan waktu lama, persingkat dengan agen paralel atau cloud | Memanfaatkan Optimasi Paralel |
Apa Itu Algoritma Genetika?
Algoritma Genetika (Genetic Algorithm: GA) adalah metode optimasi yang meniru evolusi biologis. Secara konkret, prosesnya berjalan sebagai berikut:
- Membuat beberapa set parameter acak (individu)
- Menjalankan backtest untuk setiap individu, lalu memberikan skor berdasarkan metrik evaluasi (PF, recovery factor, dll.)
- Memilih individu dengan nilai tertinggi sebagai "induk", lalu menghasilkan generasi berikutnya melalui persilangan dan mutasi
- Proses ini diulang, sehingga setiap generasi semakin konvergen ke parameter dengan evaluasi yang lebih baik
Sementara brute-force "menyapu semua kombinasi", GA "mempersempit pencarian ke area yang tampak menjanjikan", sehingga waktu komputasi berkurang secara drastis.
Kapan Menggunakan Brute-Force vs. Algoritma Genetika
| Brute-force | Algoritma genetika (GA) | |
|---|---|---|
| Cara pencarian | Menyapu semua kombinasi | Mempersempit pencarian ke area yang tampak menjanjikan |
| Skala yang cocok | Jumlah parameter sedikit, kombinasi di bawah ribuan | Jumlah parameter banyak, kombinasi puluhan ribu ke atas |
| Waktu komputasi | Bertambah sebanding dengan jumlah kombinasi | Jauh lebih singkat secara drastis |
Misalnya, jika Anda menggerakkan 3 parameter masing-masing dengan 10 langkah, ada 1.000 kombinasi — brute-force sudah cukup. Sebaliknya, jika Anda menggerakkan 5 parameter dengan 20 langkah, ada 3,2 juta kombinasi, sehingga algoritma genetika menjadi kebutuhan yang realistis.
Pengaturan di Strategy Tester
Untuk mengaktifkan optimasi, atur hal-hal berikut di layar Strategy Tester:

- Optimasi: Pilih "Fast genetic based algorithm"
- Hasil: Pilih metrik evaluasi seperti "Balance maximum", "Custom max", atau "Recovery factor maximum"
- Tab Input Parameters: Centang parameter yang ingin dioptimalkan, lalu atur nilai awal, nilai akhir, dan langkah (step)
Cara Memilih Metrik Evaluasi
Apa yang Anda definisikan sebagai "baik" akan menentukan hasil akhir. Berikut metrik umum beserta karakteristiknya:
| Metrik | Isi | Karakteristik |
|---|---|---|
| Balance maximum (Profit) | Memaksimalkan keuntungan saja | Mengabaikan risiko, sehingga rentan terhadap over-optimasi |
| Recovery factor | Laba bersih ÷ DD maksimum | Menyeimbangkan kedua sisi |
| Sharpe ratio | Mempertimbangkan stabilitas return | Mengutamakan stabilitas |
| Custom max | Dapat didefinisikan secara bebas dalam kode EA (contoh: PF × jumlah transaksi) | Dapat dirancang sesuai tujuan |
Menggunakan recovery factor atau Sharpe ratio adalah cara paling praktis untuk menemukan parameter yang berguna sekaligus menghindari over-optimasi.
Menjalankan Optimasi Algoritma Genetika
Setelah optimasi dimulai, parameter dengan nilai evaluasi tertinggi akan muncul di tab "Optimization results" untuk setiap generasi.
Algoritma genetika MT5 secara otomatis memutar ratusan generasi, kemudian konvergen ke solusi terbaik.

Jebakan yang Sering Terjadi
| Gejala | Kemungkinan Penyebab |
|---|---|
| Konvergensi terlalu cepat | Kemungkinan rentang pencarian parameter terlalu sempit |
| Tidak konvergen sama sekali | Metrik evaluasi tidak tepat, atau terlalu banyak noise |
| Konvergen ke nilai yang jelas aneh | Solusi dengan jumlah transaksi terlalu sedikit tidak dikeluarkan |
Dengan menyematkan filter seperti "keluarkan hasil dengan jumlah transaksi di bawah 50" ke dalam fungsi evaluasi, Anda dapat menyingkirkan solusi noise dengan sampel yang tidak mencukupi.
Menghindari Over-Optimasi
Semakin banyak Anda menjalankan optimasi, semakin parameter mendekati kondisi "sempurna di masa lalu tetapi tidak berfungsi di masa depan". Berikut 4 aturan praktis untuk menghindarinya:
| Aturan | Yang Diperiksa |
|---|---|
| 1. Bagi periode data | Apakah hasil runtuh pada out-of-sample di periode akhir |
| 2. Bandingkan 10–20 hasil teratas | Apakah solusi teratas terkelompok di area yang serupa |
| 3. Periksa sensitivitas parameter | Apakah hasil tidak runtuh drastis saat digeser ±10–20% |
| 4. Pertahankan parameter yang tidak dioptimalkan | Apakah nilai tetap yang secara logis alami tetap dipertahankan |
1. Bagi Periode Data
Untuk data 10 tahun ke belakang, lakukan optimasi pada 7 tahun pertama, lalu validasi out-of-sample pada 3 tahun terakhir. Jika hasil di periode terakhir memburuk, berarti terjadi over-fitting pada periode pertama.
2. Bandingkan 10–20 Hasil Teratas
Hanya mengadopsi satu solusi terbaik sangat berisiko.
Periksa apakah solusi teratas terkelompok di area yang serupa — jika ya, adopsi parameter yang berada di sekitar tengah kelompok tersebut.
3. Periksa Sensitivitas Parameter
Gerakkan parameter kandidat sebesar ±10–20% dan periksa apakah hasilnya tidak runtuh secara dramatis. Jika runtuh, berarti solusi tersebut over-fitted pada "titik optimal yang tajam".
4. Pertahankan Parameter yang Tidak Dioptimalkan
Dengan selalu menyimpan "nilai tetap yang secara logis alami dan tidak dioptimalkan", Anda dapat mengurangi risiko over-optimasi.
Misalnya, mengoptimalkan periode EMA tetapi menetapkan multiplier ATR sebagai nilai tetap.
Memanfaatkan Optimasi Paralel
MT5 mendukung optimasi paralel menggunakan beberapa core CPU. Dengan menambah jumlah agen yang digunakan di "Tester" → "Settings", Anda dapat mempersingkat waktu komputasi.
Lebih jauh lagi, dengan menggunakan MQL5 Cloud Network, Anda bisa menjalankan optimasi skala besar menggunakan agen remote dari seluruh dunia — namun ini berbayar. Oleh karena itu, cara yang efisien adalah mempersempit rentang parameter secara lokal terlebih dahulu.
Persempit Target Optimasi
Pada dasarnya, parameter yang dioptimasi sebaiknya dibatasi pada sedikit parameter yang menjadi inti logika, seperti periode penentuan entry dan lebar stop loss.
Parameter lainnya ditetapkan sebagai "nilai alami" agar over-optimasi lebih mudah dicegah.
PF dalam backtest bisa terus naik jika Anda menjalankan lebih banyak optimasi — tetapi kemungkinan tidak berfungsi di pasar masa depan juga ikut meningkat. "Pilih angka yang biasa-biasa saja dan jalankan dalam jangka panjang" adalah solusi praktis dalam operasional nyata.
Unduh EA Gratis
EA gratis di situs ini, DONCHIAN ENGINE (USDJPY H1), dalam backtest USDJPY H1 selama 9,4 tahun (2017-2026, tick nyata Dukascopy) mencatat PF 1,50, win rate 34,5%, max DD 10,8%, dan 631 trade.
Lihat EA Gratis DONCHIAN ENGINE
Broker Rekomendasi
Agar hasil backtest dan optimasi dapat direproduksi dalam trading nyata, situs ini merekomendasikan broker yang mengutamakan kualitas eksekusi order.
Terkait
📧 Kursus email gratis (8 email) + paket 13 indikator MT5 khusus pelanggan
Segera setelah mendaftar, Anda menerima tautan unduhan paket khusus pelanggan berisi 13 indikator MT5 kami: file terkompilasi (.ex5), kode sumber, dan panduan pemasangan. Lalu 8 email tentang dasar-dasar trading algoritmik, cara membaca backtest dengan benar, dan memilih broker (satu per hari selama 5 hari pertama, lalu 7, 14, dan 30 hari setelah mendaftar). Anda juga mendapat pemberitahuan sebelum setiap kenaikan harga versi yang dijual di MQL5 Market (harga peluncuran yang naik bertahap seiring penjualan). Di situs ini EA kami gratis dengan akun riil di broker mitra.
* Privasi sangat dilindungi. Anda dapat berhenti berlangganan kapan saja.
Punya pertanyaan tentang EA atau Forex?
Anda bisa mengajukannya di forum trading Nattzy (daftar gratis). Pertanyaan di luar artikel ini juga dipersilakan — pengaturan EA, memilih broker, dan lainnya.
Tanya di Nattzy ↗