Dry-run adalah jembatan antara backtest dan live. Strategi menerima data pasar berjalan dan mensimulasikan order, sehingga banyak masalah operasional dapat ditemukan tanpa dana riil.
Apa yang Diuji Dry-Run?
Dry-run membantu mengevaluasi:
- Apakah candle dan pair diperbarui tepat waktu.
- Apakah sinyal muncul sesuai logika.
- Apakah stake dan leverage sesuai rencana.
- Apakah order serta stop dibuat.
- Apakah database menyimpan trade.
- Apakah callback bekerja setelah restart.
- Apakah notifikasi dan monitoring tersedia.
Dry-run tidak sepenuhnya mereplikasi fill live. Ia tetap merupakan simulasi, tetapi lebih dekat ke kondisi operasional daripada backtest.
Konfigurasi Dasar
{
"dry_run": true,
"dry_run_wallet": 1000,
"initial_state": "running",
"api_server": {
"enabled": true,
"listen_ip_address": "127.0.0.1",
"listen_port": 8080,
"username": "operator",
"password": "password-kuat"
}
}Gunakan modal simulasi, pair, max open trades, dan risk setting yang sama dengan rencana live agar observasi relevan.
Menjalankan Bot Dry-Run
freqtrade trade \
--config user_data/config-dry.json \
--userdir user_data \
--strategy MyStrategy \
--db-url sqlite:///user_data/trades-dryrun.sqlite \
--logfile user_data/logs/freqtrade-dryrun.logGunakan database terpisah untuk setiap eksperimen penting. Jangan mencampur trade beberapa strategi tanpa label yang jelas.
Menjalankan FreqUI Tanpa Bot Trading
Jika hanya ingin melihat hasil dan API:
freqtrade webserver \
--config user_data/config-dry.json \
--userdir user_dataMode webserver tidak menjalankan loop trading. Ini berguna untuk meninjau data atau backtest setelah dry-run dihentikan.
Keamanan FreqUI
Jangan bind ke 0.0.0.0 kecuali benar-benar memahami jaringan dan firewall. Loopback 127.0.0.1 adalah default aman untuk mesin lokal.
Untuk akses remote:
- Gunakan VPN atau SSH tunnel.
- Terapkan TLS pada reverse proxy.
- Gunakan password unik yang panjang.
- Batasi IP.
- Jangan mengekspos OpenAPI tanpa kebutuhan.
- Rotasi JWT secret dan websocket token.
FreqUI dapat memberi kontrol bot; perlakukan aksesnya seperti akses trading.
Apa yang Dipantau?
Status dan Heartbeat
Pastikan proses aktif, state sesuai, dan candle terbaru tidak stale. Alert jika heartbeat hilang.
Open Trades
Periksa entry tag, leverage, stake, open rate, stop, profit, dan durasi. Bandingkan dengan estimasi strategi.
Rejected Signals
Sinyal dapat ditolak karena slot penuh, cooldown, minimum stake, atau konfirmasi entry. Jumlah penolakan besar dapat menjelaskan perbedaan dari backtest.
Log
Cari error exchange, timeout, dataframe kosong, stop gagal, dan warning data. Log seharusnya cukup informatif tanpa membocorkan credential.
Resource Mesin
Pantau CPU, RAM, disk, dan ukuran database. Startup candle besar pada banyak pair dan timeframe dapat meningkatkan beban.
Membandingkan Dry-Run dengan Backtest
Catat sinyal pada periode yang sama. Perbedaan dapat berasal dari:
- Candle belum final.
- Harga entry berbeda.
- Limit order tidak terisi.
- Pairlist berubah.
- Data historis diperbarui.
- Callback state berbeda.
- Latency atau restart.
Jangan mengharapkan transaksi identik, tetapi pola frekuensi, risiko, dan distribusi hasil seharusnya dapat dijelaskan.
Berapa Lama Dry-Run?
Gunakan jumlah trade dan regime, bukan hanya kalender. Target awal 60–100 trade memberi sampel lebih baik daripada beberapa hari. Strategi lambat dapat membutuhkan beberapa bulan.
Dry-run harus melewati:
- Hari volatil dan tenang.
- Posisi menang serta rugi.
- Restart terencana.
- Koneksi terputus.
- Penggunaan slot maksimum.
- Trigger stop dan protection.
Drill Operasional
Lakukan latihan:
1. Stop bot secara aman.
2. Restart dan rekonsiliasi open trade.
3. Uji notifikasi error.
4. Simulasikan data stale.
5. Pastikan backup database dapat dipulihkan.
6. Jalankan prosedur emergency exit.
Kriteria Lulus Dry-Run
- Tidak ada error berulang.
- Stake, leverage, dan stop sesuai desain.
- State risiko bertahan setelah restart.
- Deviasi dari backtest dapat dijelaskan.
- Alert dan backup bekerja.
- Sampel trade memadai.
- Drawdown aktual masih dalam batas.
- Operator mampu menghentikan sistem dengan cepat.
Penutup
Dry-run bukan formalitas. Tahap ini menguji apakah strategi yang bagus di atas kertas dapat hidup sebagai sistem yang stabil.
Artikel berikutnya menyatukan seluruh proses ke dalam checklist sebelum live dengan dana riil.
Bacaan lanjutan
Dry-run mengurangi risiko finansial, tetapi hasilnya tetap bukan jaminan performa live.




