Beranda > Blog > Desain Log EA: Cara Merekonstruksi Insiden

Operasional EADebugging

Desain Log EA: Cara Merekonstruksi Insiden

Dipublikasikan: 2026-11-12Waktu baca: sekitar 2 menit
⏱ Artikel ini mencerminkan informasi per tanggal publikasinya. Angka kinerja EA (PF, DD, imbal hasil tahunan) berubah seiring trading live dan validasi ulang — periksa yang terbaru di halaman EA. Lihat hasil EA terbaru →
Daftar Isi (6)
  1. Kesimpulan: EA tanpa log tidak bisa diperiksa saat terjadi insiden
  2. Mengapa butuh tiga jenis log
  3. Nilai keputusan: tanpa angka, tak bisa dibedakan dari "kebetulan"
  4. Alasan skip: paling sering dihilangkan, padahal paling penting
  5. Eksekusi: mencatat apa yang terjadi di luar EA
  6. Apa yang ditulis dalam satu baris: contoh format
  7. Prosedur pengecekan bagi pengguna EA
  8. Batasan dan hal yang perlu diperhatikan
  9. Ringkasan

Kesimpulan: EA tanpa log tidak bisa diperiksa saat terjadi insiden

Kesimpulannya saya tulis di awal. Log EA minimal harus mencatat tiga hal, masing-masing satu baris: "nilai yang dipakai untuk keputusan", "alasan tidak melakukan entri", dan "hasil eksekusi". Dengan ketiganya, transaksi yang tak terduga maupun kondisi "tidak terjadi apa-apa" bisa direkonstruksi di kemudian hari. Tanpa log, baik saat rugi maupun saat jumlah transaksi tetap 0, Anda tidak bisa memisahkan apakah penyebabnya logika EA, pasar, atau sisi broker.

Kami sendiri mengembangkan EA, dan pernah mengalami dua situasi: ditolong oleh log, dan buntu karena log tidak cukup sehingga penyebabnya tak pernah ketemu. Artikel ini membahas seperti apa "log yang baik" dari sudut pandang pihak yang menjalankan EA.

Perbandingan Broker Direkomendasikan →

🎁 Unduh EA Gratis

📧 Kursus email gratis (8 email) + paket 13 indikator MT5 khusus pelanggan

* Privasi sangat dilindungi. Anda dapat berhenti berlangganan kapan saja.

Mengapa butuh tiga jenis log

Satu keputusan EA secara garis besar mengalir seperti ini: "menghitung nilai → menilai kondisi → mengirim order → order tereksekusi". Untuk menemukan di tahap mana hasilnya menyimpang dari harapan, setiap tahap harus punya catatan.

Jenis logContoh isiPertanyaan yang bisa dijawab
Nilai keputusanWaktu bar yang sudah close, nilai indikator, threshold, spread"Mengapa masuk di situ?"
Alasan skipKondisi mana yang membuat entri dilewati (di luar jam, spread melebihi batas, posisi sudah ada, dll.)"Mengapa tidak masuk?"
EksekusiHarga yang diminta, harga eksekusi, slippage, return code, nomor tiket"Apakah tereksekusi sesuai target?"

Nilai keputusan: tanpa angka, tak bisa dibedakan dari "kebetulan"

Log yang hanya menulis "sinyal buy muncul" hampir tidak berguna. Tanpa tahu seberapa jauh nilai indikator dari threshold, kita tidak bisa menilai apakah kondisinya terpenuhi tipis-tipis atau terpenuhi dengan jelas. Catat juga selalu bar mana (waktu bar yang sudah close) yang dipakai untuk keputusan.

Alasan skip: paling sering dihilangkan, padahal paling penting

Kebanyakan EA hanya menulis log saat masuk pasar. Padahal pertanyaan yang paling sering muncul saat operasional adalah "kok sama sekali tidak entri". Jika alasan skip ada di log, kita bisa memastikan apakah itu skip yang sesuai spesifikasi, atau akibat salah setting atau selisih waktu server.

MEGAMAX DONCHIAN kami, dalam forward test di akun demo Exness, belum mencatat transaksi apa pun (0 transaksi) per 11 November 2026. Alasan skip-nya belum bisa kami pastikan, dan kami tidak akan menebak-nebak di sini. Namun dalam situasi seperti ini, ada tidaknya log alasan skip sangat menentukan seberapa besar usaha yang dibutuhkan untuk memeriksanya. 0 transaksi bukan berarti performanya buruk, tetapi sebelum log dibaca, kami juga belum bisa menyebutnya "skip yang normal".

Eksekusi: mencatat apa yang terjadi di luar EA

Apakah order ditolak, atau tereksekusi tetapi dengan slippage besar, itu persoalan yang terpisah dari logika EA. Dengan menyimpan return code dan harga eksekusi, masalah EA dan masalah broker atau koneksi bisa dipisahkan.

Apa yang ditulis dalam satu baris: contoh format

Kami merangkum satu keputusan dalam satu baris dengan format tetap agar mudah dicari kemudian.

[EVAL] bar=2026.11.10 14:00 sig=BUY val=1.234 th=1.200 spread=18 -> ENTRY
[SKIP] bar=2026.11.10 15:00 reason=SPREAD spread=45 max=30
[FILL] ticket=123456 req=152.340 fill=152.346 slip=6 ret=10009

Poin-poin penulisannya:

  • Beri tag jenis di awal baris (EVAL / SKIP / FILL) agar mudah ditemukan dengan grep atau pencarian
  • Tulis waktu bar sebagai waktu "bar yang sudah close dan dipakai untuk keputusan" (dengan asumsi itu waktu server)
  • Tulis alasan dengan kode baku, bukan kalimat (SPREAD, TIME, POSITION, dan seterusnya)
  • Jangan mencatat di setiap tick; cukup di saat keputusan diambil

Jika dicatat setiap tick, ukuran log akan membengkak dalam waktu singkat, menekan kapasitas disk, dan baris yang penting tertimbun. Prinsip dasarnya: "satu kali saat bar close".

Prosedur pengecekan bagi pengguna EA

Jika Anda menjalankan EA, periksa dengan urutan berikut agar penyebabnya lebih cepat ketemu.

  1. Di tab "Experts" MT5, pastikan EA memang menulis lognya sendiri
  2. Cari baris EVAL pada waktu transaksi yang tak terduga, lalu lihat nilai keputusan dan threshold-nya
  3. Untuk periode tanpa entri, lihat baris SKIP dan hitung alasan mana yang paling sering muncul
  4. Di baris FILL, periksa selisih harga yang diminta dengan harga eksekusi, serta return code
  5. Cocokkan waktunya dengan tab "History" (catatan dari sisi broker)

Untuk meninjau ulang pengaturan, lihat Cara setting EA, dan untuk membangun lingkungan yang berjalan terus-menerus, lihat Info VPS.

Batasan dan hal yang perlu diperhatikan

Log bukan solusi segalanya. Kami tulis apa adanya.

  • Yang tidak ditulis di log tidak akan diketahui. Kejadian yang tidak diantisipasi pengembang memang tidak akan tercatat.
  • Log belum tentu benar. Jika kode yang menulis log itu sendiri punya bug, nilai yang tercatat bisa salah.
  • Log tidak menunjukkan apakah keputusan pasarnya bagus. Yang terlihat hanyalah "apakah EA berjalan sesuai spesifikasi", bukan apakah spesifikasi itu bisa menghasilkan profit.
  • Mencatat terlalu banyak juga sumber masalah. Log berukuran besar menekan kapasitas, dan pembacanya lebih mudah melewatkan hal penting.
  • Arti log di backtest, akun demo, dan akun real berbeda. Strategy tester tidak mereproduksi slippage dan penolakan order seperti kondisi sebenarnya, jadi saat membandingkan log eksekusi, anggaplah lingkungannya berbeda.

Ringkasan

  • Catat tiga jenis log, "nilai keputusan", "alasan skip", dan "eksekusi", masing-masing satu baris
  • Yang paling sering dihilangkan adalah log alasan skip, padahal itu yang paling berguna saat menyelidiki penyebab EA "tidak bergerak"
  • Dengan tag dan kode alasan yang baku, log bisa dicari dan dihitung belakangan
  • Keluarkan log satu kali per bar yang close, bukan setiap tick
  • Log hanya menunjukkan "apakah EA berjalan sesuai spesifikasi"; apakah bisa profit membutuhkan verifikasi terpisah

Tips operasional MT5 lainnya kami rangkum di Pengetahuan EA dan MT5.

📧 Kursus email gratis (8 email) + paket 13 indikator MT5 khusus pelanggan

* 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 ↗

Komentar & pertanyaan