Backtest Trading System
Backtest = ngetes sistem trading kamu dengan data harga historis. Tujuannya: tahu apakah sistem punya edge sebelum mempertaruhkan modal di akun live. Tanpa backtest, kamu trade dengan harapan, bukan dengan data. Halaman ini menjelaskan 3 metode backtest, sample size yang valid, dan jebakan yang harus dihindari.
Penting: backtest yang baik tidak menjamin profit di live — tapi backtest yang buruk hampir pasti diikuti rugi live. Anggap backtest sebagai filter minimum, bukan jaminan.
Kenapa harus backtest?
- Validasi edge — kamu tahu sistem ini secara historis punya expectancy positif (atau negatif).
- Familiarisasi setup — mata kamu jadi terbiasa kenali pattern setup-mu di chart real.
- Validasi parameter — SL/TP/R:R yang optimal berdasar data, bukan tebakan.
- Hardening psikologis — kamu sudah "melihat" 5 loss berturut-turut di backtest, jadi tidak panik saat terjadi di live.
Take-away: trader pro tidak pernah trade sistem yang belum mereka backtest minimal 100 trade.
Metode 1 — Manual Backtest (TradingView Replay)
Paling akurat untuk strategi yang berbasis discretion (price action, supply/demand). Caranya di TradingView:
- Buka chart pair + TF (mis. EUR/USD H4) di TradingView.
- Klik tombol Bar Replay di toolbar (ikon panah putar).
- Pilih titik awal di chart (mis. 1 tahun ke belakang).
- Klik Play dengan kecepatan slow — atau klik Next Bar manual.
- Setiap bar baru muncul: analisa setup, buat keputusan entry/skip seolah real-time.
- Catat hasil tiap trade: entry, SL, TP, outcome (TP/SL/BE), R-multiple.
Penting: jangan tergoda scroll ke depan (lihat future bar) sebelum buat keputusan. Itu disebut look-ahead bias — backtest jadi tidak valid.
Take-away: 50-100 trade manual replay = data set yang cukup untuk validasi awal sistem discretion.
Metode 2 — Strategy Tester MT5
Cocok untuk strategi mekanis (indikator-based) yang bisa diprogram jadi Expert Advisor (EA):
- Buka MT5 → menu View → Strategy Tester (Ctrl+R).
- Pilih EA, pair, TF, periode tanggal, dan mode (Every tick, 1 minute OHLC, Open prices).
- Klik Start. MT5 simulasi semua trade dari periode tersebut.
- Setelah selesai, tab Report menampilkan: Net profit, Profit factor, Max drawdown, Total trades, Win rate, dll.
- Tab Graph menampilkan equity curve.
Keuntungan: cepat (1 tahun data dalam menit), objektif (tidak ada bias manusia).
Kerugian: butuh skill coding MQL5 (atau beli EA), tidak cocok untuk strategi discretion, hasil bisa misleading kalau kondisi spread/slippage tidak realistis.
Metode 3 — Spreadsheet Backtest
Hybrid: kamu trade di chart secara manual, tapi catat semua hasil di spreadsheet untuk analisis statistik:
Kolom minimum spreadsheet:
- Tanggal / pair / TF / setup name
- Entry price / SL price / TP price
- Outcome (TP/SL/BE/manual close)
- Pip P/L / R-multiple
- Screenshot link (opsional)
Setelah 50-100 baris, hitung:
- Win rate = win / total
- Avg R = total R ÷ total trades
- Profit factor = total gain ÷ total loss (target > 1.5)
- Max drawdown = R worst losing streak × R
Sample size minimum
Berapa trade cukup untuk validasi?
- 30 trade = preview saja, masih banyak noise.
- 50 trade = minimum untuk evaluate baseline.
- 100 trade = standar industri untuk confidence statistik.
- 200+ trade = ideal, walau memakan waktu (mungkin 3-6 bulan data).
Kalau hasil 100 trade menunjukkan win rate 55% dengan R:R 1:1.5 (expectancy +0.275R/trade), kamu punya basis kuat. Kalau cuma 20 trade dengan hasil bagus, mungkin luck — perpanjang sample size.
Take-away: belajar trader pro tertangkap edge palsu karena sample kecil. 100 trade adalah harga yang harus dibayar untuk certainty.
Common pitfalls — hindari ini
1. Curve-Fitting (Over-optimization)
Tweak parameter (RSI 14 → 13.5, SL 30 → 27.5, dll.) sampai backtest hasilnya "sempurna". Padahal kamu cuma mengikuti data historis. Sistem yang di-curve-fit selalu gagal di forward test.
Cara hindari: gunakan parameter round numbers (RSI 14, bukan 13.5), backtest di multiple pair untuk konsistensi.
2. Look-Ahead Bias
Saat manual backtest, "menyontek" future bar sebelum buat keputusan. Hasil terlihat super bagus karena kamu beruntung tahu apa yang akan terjadi.
Cara hindari: gunakan Bar Replay TradingView yang sembunyikan future bar; commit keputusan secara verbal/tulisan sebelum next bar.
3. Hindsight Cherry-Picking
Cuma catat trade yang profit, lupa catat yang loss. Atau "trade yang setup-nya kurang valid" tidak dihitung. Hasil backtest jadi sangat positif tapi tidak realistis.
Cara hindari: catat setiap setup yang masuk kriteria, terlepas hasil profit/loss.
4. Lupa biaya spread, komisi, slippage
Backtest "raw" tanpa biaya = expectancy lebih tinggi dari realita. Komisi $7/lot, spread 1-2 pip, dan slippage 1-3 pip pada market order — semuanya menggerus profit.
Cara hindari: kurangi 3-5 pip dari profit setiap trade di spreadsheet sebagai allowance biaya.
5. Backtest di 1 pair saja
Sistem yang profit di EUR/USD belum tentu profit di GBP/USD. Backtest minimal di 2-3 pair untuk pastikan edge bukan pair-specific.
Forward Test — Validasi Live (Demo)
Setelah backtest 100 trade dengan hasil positif, jangan langsung live. Lakukan forward test:
- Buka akun DEMO baru (bersih, $1.000).
- Trade sistem persis seperti backtest, eksekusi real-time.
- Target minimum 30-50 trade demo.
- Bandingkan win rate & R-multiple demo vs backtest. Beda < 20% = sistem valid. Beda > 30% = ada gap (mungkin eksekusi emosional, atau backtest curve-fit).
Forward test = jembatan antara teori (backtest) dan praktik (live). Banyak trader gagal karena loncat dari backtest ke live tanpa forward test.
Walk-Forward Analysis (Lanjutan)
Untuk strategi mekanis: bagi data jadi in-sample (optimasi parameter) dan out-of-sample (validasi):
- Bulan 1-6: in-sample. Optimasi parameter.
- Bulan 7: out-of-sample. Test parameter di data yang belum dilihat.
- Geser window: bulan 2-7 in-sample, bulan 8 out-of-sample. Dst.
Walk-forward yang konsisten profit di out-of-sample = sistem yang punya edge nyata, bukan curve-fit. Detail di Algorithmic Trading.
Mini-skenario: backtest 50 trade EUR/USD
Setup: breakout-pullback EUR/USD H4. Periode: 6 bulan terakhir. Sample: 50 setup yang valid (dari kriteria entry 5 layer).
Hasil spreadsheet:
- Total trade: 50
- Win: 22 (44%)
- Loss: 28 (56%)
- Average win: +2.1R (TP 1:2 - 1:2.5)
- Average loss: -0.95R (kadang BE close manual)
- Total R:
(22 × 2.1) - (28 × 0.95) = 46.2 - 26.6 = +19.6R - Expectancy:
19.6 / 50 = +0.39R per trade - Max drawdown: 4 loss beruntun = -4R
- Profit factor: 46.2 / 26.6 = 1.74 (target > 1.5 ✓)
Validasi: expectancy positif, profit factor sehat, max DD masih dalam toleransi (4R = 4% akun kalau risk 1%/trade). Sistem layak forward test di demo.
Setelah 30 trade forward test demo: win rate 42% (mirip 44%), avg R 1:1.9 (mirip 1:2.1). Sistem konsisten — siap live dengan modal kecil.
Take-away: data spreadsheet ngomong lebih jelas dari feeling. Ikuti angka, bukan opini.
Insight Trader Profesional
Ernie Chan (penulis Quantitative Trading, ex-Morgan Stanley) sering menekankan: "Alpha decays. A strategy that worked in 2020 may not work in 2026. Continuous validation is mandatory."
Aturan operasional pro:
- Backtest sebelum live, tanpa exception. Sistem yang belum di-test = perjudian.
- Re-backtest setiap 6-12 bulan. Kondisi pasar berubah; sistem yang dulu profit bisa jadi flat sekarang.
- Multiple sample = robustness. Backtest di 3+ pair, 2+ TF. Sistem yang konsisten di semua = lebih reliable.
- Compare drawdown live vs backtest. Kalau DD live > 1.5× DD backtest, sistem mulai breakdown — pause & investigasi.
- Walk-forward > static backtest. Sistem yang lulus walk-forward jauh lebih tahan dari sistem yang cuma lulus backtest sekali.
Backtest bukan event sekali — itu siklus berkelanjutan. Trader pro spending 30% waktu mereka di backtest & analisis sistem, bukan di klik order.
Checklist sebelum live trade dengan sistem
- Sudah backtest minimal 100 trade?
- Expectancy positif (> +0.2R per trade)?
- Profit factor > 1.5?
- Max drawdown < 15% (untuk risk 1% per trade)?
- Sudah forward test 30+ trade di demo, hasil konsisten dengan backtest?
- Sudah test di minimal 2 pair berbeda?
- Sudah include biaya spread/komisi dalam perhitungan?
- Aku siap stick dengan sistem walau 4-5 loss beruntun (di max DD)?
Selesai seri Build Trading System
Sekarang kamu punya kerangka untuk:
- Tulis sistem trading sendiri (Pengantar).
- Bangun aturan entry yang objektif (Aturan Entry).
- Eksekusi exit dengan disiplin (Aturan Exit).
- Validasi edge dengan backtest (halaman ini).
Lanjut ke implementasi: Recording Historical Trades dan Stick to The Rules.
Seri Build Trading System: Pengantar · Aturan Entry · Aturan Exit · Backtest