Lompat ke isi
PelitaTradeMANUAL ALAT

Bab F · Membuat EA

Cara membuat EA forex: dari aturan tertulis ke kode MQL4/MQL5, plus batas EA generator dan robot di Android

Edisi 28 September 2026 · Redaksi PelitaTrade

Perhatian · produk berisiko tinggi

Transaksi valas dan CFD berjalan dengan leverage, sehingga gerak harga yang kecil sanggup menguras seluruh saldo akun, bahkan dalam hitungan menit. Mayoritas pelaku ritel pada produk semacam ini justru menutup tahun dengan rugi. Lembar ini menerangkan cara kerja alat, bukan ajakan membuka posisi, dan tidak ada alat, robot, atau master yang dapat menjamin hasil.

Membuat robot trading tidak dimulai dari kode, melainkan dari aturan yang cukup jelas untuk dipahami mesin. Lembar ini memandu cara membuat EA forex dari kalimat aturan, ke MetaEditor, ke kode MQL4 dan MQL5 yang mengikuti sintaks resminya, lalu ke pengujian. Di akhir, kami jelaskan apa yang bisa dan tidak bisa dilakukan EA generator serta “robot di Android”.

Isi kotak — siapkan dulu

  • K1Terminal MetaTrader versi desktop beserta MetaEditor.
  • K2Akun demo untuk menempelkan EA hasil kompilasi.
  • K3Satu aturan tertulis yang bisa dijawab ya/tidak oleh komputer.
  • K4Pengetahuan dasar variabel dan kondisi if; lampiran OnInit/OnTick membantu.
Dokumen transparan dan panel berisi baris kode di atas alas bergaya kristal
Kode sumber adalah dokumen; baca ulang seperti Anda membaca kontrak.

Tahap nol: menulis aturan yang bisa dihitung

Kalimat “beli saat tren naik” tidak bisa dieksekusi komputer. Ubah menjadi pertanyaan yang jawabannya pasti, misalnya “apakah harga bid lebih tinggi dari rata-rata sederhana 20 candle terakhir?”. Setiap kata sifat (kuat, jenuh, bagus) harus diganti angka atau perbandingan. Tulis juga kapan program tidak boleh melakukan apa pun.

Dari kalimat ke kondisi
Kalimat awalVersi yang bisa dihitung
Harga sedang naikBid > MA sederhana 20 candle pada timeframe grafik
Jangan terlalu sering transaksiMaksimal satu posisi per simbol dengan magic number yang sama
Rugi jangan besarStop loss 30 pips dan ukuran lot dari hitungan risiko per transaksi

Cara membuat expert advisor MT4 di MetaEditor

  1. Buka MetaEditor

    Dari terminal MT4, buka MetaEditor lewat ikon di toolbar atau tombol F4. Situs resmi MT4 menyebut MetaEditor sebagai lingkungan bawaan untuk mengembangkan strategi dalam MQL4, lengkap dengan debugger.

  2. Buat berkas Expert Advisor baru

    Pilih pembuatan berkas baru, jenis Expert Advisor (template), lalu beri nama. MetaEditor menyimpan berkas .mq4 di folder Experts dan membuat kerangka fungsi kosong.

  3. Tulis kode di dalam kerangka

    Isi fungsi OnInit, OnTick, dan OnDeinit. Contoh lengkap ada tepat di bawah daftar langkah ini.

  4. Kompilasi dan baca pesan galat

    Tekan tombol Compile (F7). Jika ada galat, panel bawah menunjukkan baris dan penyebabnya. EA baru muncul di Navigator terminal setelah kompilasi berhasil.

  5. Tempelkan ke grafik akun demo

    Seret EA dari Navigator ke grafik, periksa tab Inputs, dan pastikan tombol perdagangan otomatis di toolbar aktif bila EA memang dirancang membuka order.

Contoh code EA forex: versi MQL4 dan MQL5

Dua contoh berikut melakukan hal yang sama: setiap tick, program membandingkan harga bid dengan moving average lalu menulis hasilnya di pojok grafik. Tidak ada perintah order di dalamnya, sehingga aman dicoba.

Contoh edukasi, bukan strategi siap pakai — MQL4 (ea mq4)
//+------------------------------------------------------------------+
//| PelitaContoh.mq4 - contoh edukasi, bukan strategi siap pakai     |
//| EA ini TIDAK membuka order; hanya menulis keterangan di grafik.  |
//+------------------------------------------------------------------+
#property strict

input int PeriodeMA = 20;   // periode moving average

int OnInit()
  {
   if(PeriodeMA < 1)
      return(INIT_PARAMETERS_INCORRECT);
   return(INIT_SUCCEEDED);
  }

void OnDeinit(const int reason)
  {
   Comment("");
  }

void OnTick()
  {
   double ma = iMA(NULL, 0, PeriodeMA, 0, MODE_SMA, PRICE_CLOSE, 0);
   string posisi = (Bid > ma) ? "di atas" : "di bawah";
   Comment("Bid ", DoubleToString(Bid, Digits), " berada ", posisi, " MA", PeriodeMA);
  }

Di MQL4, fungsi iMA langsung mengembalikan nilai rata-rata. Variabel bawaan Bid dan Digits berisi harga terbaru dan jumlah desimal simbol. INIT_PARAMETERS_INCORRECT menolak input yang tidak masuk akal sebelum EA berjalan.

Contoh edukasi, bukan strategi siap pakai — MQL5
//+------------------------------------------------------------------+
//| PelitaContoh.mq5 - contoh edukasi, bukan strategi siap pakai     |
//| EA ini TIDAK membuka order; hanya menulis keterangan di grafik.  |
//+------------------------------------------------------------------+
input int PeriodeMA = 20;   // periode moving average

int handleMA = INVALID_HANDLE;

int OnInit()
  {
   handleMA = iMA(_Symbol, _Period, PeriodeMA, 0, MODE_SMA, PRICE_CLOSE);
   if(handleMA == INVALID_HANDLE)
     {
      Print("Handle MA gagal dibuat, kode galat ", GetLastError());
      return(INIT_FAILED);
     }
   return(INIT_SUCCEEDED);
  }

void OnDeinit(const int reason)
  {
   if(handleMA != INVALID_HANDLE)
      IndicatorRelease(handleMA);
   Comment("");
  }

void OnTick()
  {
   double ma[];
   if(CopyBuffer(handleMA, 0, 0, 1, ma) != 1)
      return;
   double bid = SymbolInfoDouble(_Symbol, SYMBOL_BID);
   string posisi = (bid > ma[0]) ? "di atas" : "di bawah";
   Comment("Bid ", DoubleToString(bid, _Digits), " berada ", posisi, " MA", PeriodeMA);
  }

Di MQL5, dokumentasi resmi menjelaskan bahwa iMA mengembalikan handle indikator, atau INVALID_HANDLE bila gagal. Nilainya diambil dengan CopyBuffer. Handle dibuat sekali di OnInit dan dilepas di OnDeinit, bukan dibuat ulang setiap tick.

Menguji hasilnya

Situs resmi MT4 menjelaskan Strategy Tester sebagai alat untuk menguji dan mengoptimalkan robot dengan data historis sebelum dipakai di pasar nyata, termasuk mode visual yang memperlihatkan EA bekerja di grafik. Cara membaca laporannya dijelaskan di lampiran membaca laporan backtest.

EA generator MT4 dan MT5: apa yang sebenarnya dihasilkan

Dokumentasi MetaEditor menyebut MQL5 Wizard dapat membuat templat program dan robot siap pakai; trader cukup memilih modul sinyal, manajemen dana, dan trailing stop, lalu kodenya dibuat otomatis. Di luar itu ada aplikasi EA forex generator pihak lain yang menyusun blok logika secara visual.

Yang dikerjakan dan tidak dikerjakan generator
DikerjakanTidak dikerjakan
Menulis kerangka dan sintaks yang benarMemastikan aturan Anda punya dasar yang masuk akal
Menggabungkan modul sinyal yang sudah adaMenguji ketahanan di kondisi pasar berbeda
Mempercepat eksperimenMenghilangkan kebutuhan membaca kode hasilnya

Cara membuat robot forex di Android: batasnya

Pencarian “cara membuat robot forex di Android” biasanya berakhir pada kekecewaan. Halaman fitur seluler resmi MT4 menyebut grafik, order, alat analisis, riwayat, chat, dan notifikasi, tanpa MetaEditor dan tanpa menjalankan EA. Jadi alurnya: tulis dan uji di komputer, jalankan EA di terminal desktop, lalu pantau posisinya dari ponsel. Aplikasi pihak ketiga yang mengaku “menjalankan robot di HP” perlu diperiksa ekstra: siapa yang memegang kata sandi akun Anda?

Perhatian

Membuat EA sendiri tidak membuatnya lebih aman. Banyak EA buatan sendiri gagal karena lupa menangani order yang ditolak, spread yang melebar, atau posisi ganda. Jalankan di akun demo cukup lama sebelum mempertimbangkan hal lain.

Tanya jawab singkat

Apakah saya bisa membuat robot trading tanpa bisa coding?
Bisa, lewat MQL5 Wizard di MetaEditor atau EA generator lain yang menyusun kode dari pilihan modul. Namun Anda tetap perlu memahami logika yang dihasilkan, karena kesalahan aturan tidak hilang hanya karena kodenya dibuat otomatis.
Apa beda berkas .mq4 dan .ex4?
Berkas .mq4 adalah kode sumber yang bisa dibaca dan diubah. Berkas .ex4 adalah hasil kompilasi yang dijalankan terminal dan tidak bisa dibaca sebagai teks.
Bisakah membuat robot forex di Android?
Halaman fitur seluler resmi MT4 tidak mencantumkan MetaEditor maupun menjalankan EA. Menulis, mengompilasi, dan menguji EA dilakukan di versi desktop. Ponsel cocok untuk memantau posisi yang dibuka EA dari komputer.
Apakah contoh kode di lembar ini bisa dipakai trading?
Tidak. Kedua contoh sengaja dibuat tanpa perintah order agar aman dipelajari. Keduanya hanya menunjukkan struktur EA dan cara membaca data indikator.

Lembar berikutnya