Instalasi Freqtrade sebenarnya tidak sulit. Bagian yang lebih penting adalah membuat lingkungan yang dapat direproduksi, memisahkan data riset dari credential, dan memastikan bot pertama kali berjalan dalam dry-run.
Panduan ini menggunakan pendekatan Python virtual environment. Docker juga didukung, tetapi apa pun metodenya, prinsip keamanan dan struktur konfigurasinya tetap sama.
Persiapan Sistem
Sebelum memasang Freqtrade, siapkan Git, Python versi yang didukung, compiler dan library sistem yang dibutuhkan, serta ruang penyimpanan untuk data historis. Periksa dokumentasi resmi karena versi Python yang didukung dapat berubah.
Untuk lingkungan Linux atau WSL, pola kerjanya adalah membuat direktori proyek lalu virtual environment:
mkdir freqtrade-workspace
cd freqtrade-workspace
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pipSetelah itu instal Freqtrade sesuai metode resmi. Verifikasi hasil instalasi:
freqtrade --version
freqtrade --helpGunakan executable dari virtual environment yang sama setiap kali menjalankan bot. Ini mencegah konflik paket antara proyek.
Membuat User Directory
Kode aplikasi dan data pengguna sebaiknya dipisahkan. Freqtrade menyediakan perintah untuk membuat struktur user_data:
freqtrade create-userdir --userdir user_dataDirektori ini umumnya menampung:
strategies/untuk file strategi.data/untuk candle historis.backtest_results/untuk hasil backtest.hyperopt_results/untuk hasil optimasi.config.jsonuntuk konfigurasi bot.
Jangan masukkan credential exchange, database dry-run, atau log ke repositori publik. Gunakan .gitignore, environment variable, atau file konfigurasi privat yang tidak di-commit.
Membuat Konfigurasi Pertama
Wizard konfigurasi dapat dijalankan dengan:
freqtrade new-config --config user_data/config.jsonUntuk tahap awal, pilih dry-run. Contoh struktur minimalnya:
{
"max_open_trades": 3,
"stake_currency": "USDT",
"stake_amount": 20,
"dry_run": true,
"dry_run_wallet": 1000,
"trading_mode": "spot",
"exchange": {
"name": "binance",
"key": "",
"secret": "",
"pair_whitelist": ["BTC/USDT", "ETH/USDT"]
},
"pairlists": [{"method": "StaticPairList"}]
}Nama exchange dan pair di atas hanya contoh. Pastikan format pair sesuai mode market yang dipakai.
Memahami Parameter Kritis
dry_run
Nilai true berarti order disimulasikan. Ini harus menjadi pilihan awal. Dry-run tetap menggunakan data pasar berjalan, sehingga Anda dapat menguji sinyal dan alur operasional tanpa dana riil.
stake_amount
Parameter ini mengatur modal per posisi. Nilai unlimited membuat bot membagi saldo sesuai jumlah posisi maksimum dan logika strategi. Bagi pemula, angka tetap lebih mudah diaudit.
max_open_trades
Parameter ini membatasi jumlah posisi bersamaan. Nilainya memengaruhi pemakaian modal, korelasi, dan hasil backtest. Jangan mengubahnya saat membandingkan dua eksperimen.
trading_mode dan margin_mode
Gunakan spot terlebih dahulu jika belum memahami leverage. Futures membutuhkan pair seperti BTC/USDT:USDT, margin mode, aturan short, funding fee, dan perlindungan likuidasi.
Pairlist
Mulailah dengan pair likuid dan daftar statis. Pairlist dinamis memang praktis, tetapi dapat menciptakan perbedaan universe antara backtest dan live jika tidak disimulasikan dengan benar.
Menjaga API Key Tetap Aman
Untuk dry-run dan backtest, API trading sering tidak diperlukan. Ketika suatu saat membuat API key live:
- Aktifkan izin membaca dan trading saja.
- Jangan pernah mengaktifkan withdrawal.
- Gunakan IP whitelist jika exchange mendukungnya.
- Simpan key di environment atau secret manager.
- Pisahkan key eksperimen dari akun utama.
- Rotasi key jika pernah muncul di terminal bersama, log, atau Git.
Jangan menganggap repositori privat selalu aman. Riwayat Git dapat menyimpan secret meskipun barisnya kemudian dihapus.
Menambahkan Strategi Awal
Buat template strategi:
freqtrade new-strategy \
--strategy SimpleStarter \
--template minimal \
--userdir user_dataPastikan strategi terbaca:
freqtrade list-strategies \
--config user_data/config.json \
--userdir user_dataStatus strategi harus OK. Error import, dependency, atau class name perlu diselesaikan sebelum mengunduh data dan backtest.
Mengaktifkan FreqUI Secara Aman
FreqUI disajikan melalui API server. Untuk penggunaan pada mesin yang sama, bind ke loopback:
"api_server": {
"enabled": true,
"listen_ip_address": "127.0.0.1",
"listen_port": 8080,
"username": "ganti-username",
"password": "gunakan-password-kuat"
}Jalankan webserver tanpa bot trading:
freqtrade webserver \
--config user_data/config.json \
--userdir user_dataJangan mengekspos port API langsung ke internet. Jika akses jarak jauh dibutuhkan, gunakan VPN, SSH tunnel, atau reverse proxy dengan autentikasi dan TLS.
Checklist Instalasi
Sebelum melanjutkan, pastikan:
- Versi Freqtrade dapat ditampilkan.
user_dataterbentuk dan memiliki permission yang benar.- Config valid dan
dry_runbernilaitrue. - Credential tidak disimpan dalam Git.
- Strategi muncul dengan status
OK. - Pair dan trading mode konsisten.
- API server hanya dapat diakses dari jaringan yang memang diperlukan.
Penutup
Instalasi yang rapi mengurangi banyak masalah pada tahap berikutnya. Simpan konfigurasi riset, dry-run, dan live secara terpisah. Catat versi Freqtrade serta dependency agar hasil eksperimen dapat direproduksi.
Artikel selanjutnya akan membedah struktur strategi Freqtrade—mulai dari indikator hingga entry, exit, ROI, dan stoploss—sehingga konfigurasi yang baru dibuat memiliki aturan trading yang dapat diuji.
Bacaan lanjutan
Selalu mulai dari dry-run. Contoh konfigurasi perlu disesuaikan dengan versi Freqtrade dan kebijakan exchange yang digunakan.




