MQL5 Free EA – Verifikasi dengan backtesting 24 "Moving Average Crossover"

MQL5 EA gratis

Dalam seri “Verifikasi dengan backtesting", kami memverifikasi kinerja EA gratis yang terdaftar di komunitas MQL5 dari hasil backtesting. Kami harap ini akan membantu Anda memilih EA.

* Pendaftaran keanggotaan (gratis) diperlukan untuk mengunduh EA dan indikator dari komunitas MQL5, jadi mari kita buat akun dengan merujuk ke artikel ini!

Edisi ke-24 adalahMoving Average Crossover“.

Tentang Moving Average Crossover

EA ini tampaknya merupakan EA uji eksperimental, dan hasil yang baik tidak dapat diharapkan kecuali minimalisasi berhasil. Oleh karena itu, saya ingin mengambil kesempatan ini untuk memperkenalkan salah satu metode optimasi “Forward optimization".

Mengutip dari laman resmi MQL5 (terjemahan)

Robot ini bekerja dengan persilangan moving averages. Moving average digunakan terutama untuk mengikuti tren, strategi crossing moving average memiliki tujuan utama untuk memanfaatkan pergerakan bullish dan bearish yang besar.

Semua parameter dapat diedit dan mudah digunakan, ini adalah proyek eksperimental.

Perdagangan “Moving Average Crossover"

Logika EA ini sederhana: masuk dengan dua persilangan rata-rata bergerak (jangka pendek dan jangka panjang) dan keluar dengan nilai Take Profit / Stop Loss (TP / SL) yang ditetapkan.

  • Golden cross (sinyal beli): ketika rata-rata bergerak jangka pendek melintasi dari bawah ke atas (melintasi) rata-rata bergerak jangka panjang.
  • Dead cross (sinyal jual): ketika moving average jangka pendek menerobos dari atas ke bawah (crosses) moving average jangka panjang.

Namun, karena tampaknya tidak ada fungsi untuk menutup perdagangan pada sinyal yang berlawanan (cross), kita perlu mengoptimalkan TP / SL juga.

Metode pengoptimalan (Forward optimization)   

Untuk menerapkan metode pengoptimalan yang diperkenalkan kali ini, perlu dipahami karakteristik EA sampai batas tertentu. Juga, harap dicatat bahwa ada beberapa prasyarat.

  1. Ada beberapa parameter yang dapat dimodifikasi, dan mengubah nilai numerik pada dasarnya tidak mengubah logika.
  2. Saat mengoptimalkan, kami ingin melakukan backtesting dengan “harga terbuka saja", sehingga diharapkan EA tidak memiliki fungsi seperti trailing.
    Tidak ada yang tidak dapat dilakukan bahkan dengan “All Ticks", tetapi secara realistis sulit karena butuh waktu untuk menguji.
  3. Dalam arti yang sama, diinginkan bahwa backtest dari EA itu sendiri cepat.

Memulai Penguji Strategi

Pertama, luncurkan penguji strategi dari menu MT5 dan pilih “Forward optimization".

Mengonfigurasi Penguji Strategi

  1. Pasangan mata uang: EURUSD#
  2. Jangka waktu: H1 * Kali ini, berdasarkan hasil tes pendahuluan, EURUSD dan H1
  3. Periode: 2013.01.01- 2022.12.31
  4. Pengaturan periode maju: 1/2 (dapat diubah sesuai kebutuhan)
    * Karena periode pengujian diatur ke 2013.01.01 – 2022.12.31, periode pengoptimalan adalah 1/2 dari paruh pertama (2013.01.01 – 2017.12.31) dan paruh kedua 1/2 (2018.01.01 – 2022.12.31) adalah periode maju (pengujian berdasarkan hasil pengoptimalan).
  5. Data historis yang digunakan: Harga terbuka saja
  6. Metode optimasi: Algoritma genetika
  7. Peringkat pengoptimalan: Urutan
    Faktor Keuntungan * Dalam hal ini, kami menggunakan Faktor Keuntungan maks, tetapi indikator lain mungkin lebih baik. 

Parameter Pengaturan

  • Parameter EA adalah sebagai berikut:
  • lot: Banyak
  • TakeProfit: Ambil Keuntungan
  • stoploss: Stop Loss
  • SlowAverage_MediaLenta: Periode moving average jangka panjang
  • FastAverage_MediaRapida: Periode moving average jangka pendek MetodoMM_Slow_Lenta: Jenis moving average jangka panjang
  • MetodoMM_Fast_Rapida: Jenis moving average jangka pendek
  • Kali ini, kami akan mengoptimalkan empat item ini: take profit, stop loss, dan periode moving average jangka panjang dan jangka pendek.

Masukkan angka di Start-Step-Stop agar parameter dapat dioptimalkan. Saya pikir kisaran nilai input lebih baik dengan nilai yang tidak terlalu menyimpang mengingat cara berdagang.

Dalam contoh take profit pada tabel di atas, itu berarti backtesting dengan mengubah parameter satu per satu (5, 6, 7, 8,…, 249, 250) dari 5 ~ 250.

Ada 246 kombinasi take profit, 97 stop loss, dan 226 dan 71 periode moving average jangka panjang dan jangka pendek, dengan total 246 x 97 x 226 x 71 = 382.889.562.

Namun, alih-alih menjalankan semua sekitar 400 juta backtests, kami menggunakan algoritma genetika untuk menggabungkannya ke dalam kondisi dengan kinerja yang baik dan membatasi berapa kali.

Lakukan backtesting

Ketika Anda menekan tombol “Start" di sudut kanan bawah, periode optimasi pertama kali backtested. Setelah itu, tes periode maju dimulai secara otomatis.

  • Periode optimasi: 2013.01.01 – 2017.12.31

Karena kami menyaring dengan Faktor Keuntungan maks, plot dengan warna hijau gelap menunjukkan faktor keuntungan yang lebih tinggi dan kinerja yang lebih baik.

  • Periode Maju: 2018.01.01 – 2022.12.31

Tes periode maju diuji menggunakan parameter yang dioptimalkan dalam backtest yang dijelaskan di atas.

Backtest (optimasi) dan meneruskan hasil tes 

  • Jika Anda memiliki intuisi yang baik, Anda mungkin telah menyadarinya hanya dengan melihat gambar di atas.

Ini adalah hasil dari menyortir faktor keuntungan dari backtest (bingkai biru) dalam urutan menurun. Angka-angka dalam bingkai merah di sebelah kiri adalah hasil ketika maju (virtual) dilakukan dengan pengaturan parameter yang sama dengan backtest.

Bahkan jika Anda berkinerja baik di backtest (periode optimasi), Anda dapat melihat bahwa itu benar-benar negatif dalam tes maju berikutnya.

Backtesting dengan parameter yang dioptimalkan

Kurva untung dan rugi adalah sebagai berikut:

Periode optimasi: 2013.01.01 – 2017.12.31
Periode Maju: 2018.01.01 – 2022.12.31
  • Sulit dipercaya bahwa grafik diuji dengan parameter yang sama, tetapi inilah kenyataannya.

Periode optimasi dan periode maju, bagaimana kondisi untuk kedua belah pihak?

Hasilnya tidak terlalu bagus, tetapi mereka ada dalam hasil optimasi.

Jika operasi telah dimulai pada 2018.01.01, saya tidak berpikir parameter di atas dapat dipilih, tetapi jika telah dipilih, dapat dikatakan bahwa itu positif setelah itu. Namun, kami tidak dapat menjamin bahwa hasil yang sama akan terjadi di masa depan. Penting untuk menentukan hasil optimasi.

Sedangkan untuk optimasi Forward, ada baiknya Anda menguasainya sebagai salah satu tekniknya!

NOZAX

Broker MT5 FX yang akan datang [NOZAX] → → → Klik di sini untuk detailnya!

Posted by GOMA