Lewati ke konten

Bot DCA

Panduan ini menjelaskan bot DCA secara menyeluruh: apa yang dilakukannya, apa arti setiap kontrol yang Anda atur, dan dalam urutan seperti apa bot memeriksa semuanya. Penjelasan sepanjang ini tidak muat di dalam aplikasi, jadi kami letakkan di sini.

Untuk gambaran singkat tentang bot secara umum, lihat Otomasi: Grid dan DCA.

Bot DCA membuka posisi, dan bila Anda mengaktifkannya, menambah posisi ketika harga bergerak melawan Anda sehingga harga rata-rata entry Anda bergeser. Posisi ditutup ketika target profit tercapai, atau ketika salah satu batas risiko yang Anda pasang tersentuh.

Ada dua hal yang perlu Anda pahami sejak awal:

  • Penambahan posisi bersifat opsional. Anda dapat menjalankan bot yang hanya mengambil satu entry per putaran, lalu mengandalkan filter untuk menentukan kapan entry itu boleh terjadi.
  • Filter dan jadwal adalah dua hal terpisah. Jadwal menentukan kapan bot boleh melihat, filter menentukan apakah bot jadi membeli. Anda dapat memakai keduanya, salah satu saja, atau tidak sama sekali.
Order pertama masuk
|
+-- harga bergerak melawan Anda sampai jarak ke-1 -> Averaging Order 1
| (harga rata-rata entry Anda bergeser)
+-- sampai jarak ke-2 -> Averaging Order 2
| ... dan seterusnya, sampai tangga habis
|
+-- harga mencapai target profit -> posisi DITUTUP, putaran selesai
+-- atau batas risiko tersentuh -> posisi DITUTUP, kerugian dibatasi

Target profit dihitung dari harga rata-rata entry Anda saat itu, bukan dari harga order pertama. Karena harga rata-rata bergeser setiap kali averaging order terisi, target profit ikut bergeser. Inilah sebabnya posisi bisa ditutup untung meskipun harga belum kembali ke titik masuk pertama Anda.

  • Order Size. Modal untuk order pertama. Angka ini adalah margin, bukan nilai posisi. Nilai posisi Anda adalah margin dikali leverage.
  • Leverage. Pengali daya beli. Memperbesar keuntungan dan kerugian dalam ukuran yang sama, dan memperdekat jarak likuidasi. Leverage juga menentukan kapan Max Drawdown Stop bekerja; lihat bagian 6.
  • Jumlah averaging order. Berapa kali bot boleh menambah posisi dalam satu putaran.
  • Take profit. Target penutupan, dihitung dari harga rata-rata entry.

Tangga averaging disusun satu kali setelah posisi pertama terbentuk, dengan titik acuan harga rata-rata entry saat itu. Setelah tersusun, bot hanya memeriksa apakah harga sudah menyentuh level berikutnya.

  • Dipicu murni oleh harga. Filter entri tidak diperiksa di sini. Jadi filter Anda mengatur pembukaan posisi, bukan penambahan di dalam posisi yang sudah berjalan.
  • Satu order per pemeriksaan. Bila harga menembus beberapa level sekaligus dalam satu gerakan cepat, bot memasang satu order per siklus pemeriksaan, sisanya menyusul. Ini disengaja agar tangga tidak habis dalam satu hentakan.
  • Ukuran bisa menaik. Bila Anda memakai pengali ukuran, order averaging pertama tetap sama persis dengan ukuran dasar yang Anda set; pengali baru bekerja mulai order kedua.
  • Jarak antar order dapat diatur dalam persen, atau mengikuti volatilitas. Mode persen menghitung seluruh tangga di muka. Mode volatilitas menyusun level berikutnya setiap kali satu order terisi.
  • On. Setelah posisi ditutup dengan profit, bot membuka putaran baru dan mengulang.
  • Off. Bot menjalankan satu putaran saja, lalu berhenti.

Mode siklus bukan sekadar tombol ulang. Ia mengubah arti jadwal Anda:

Mode siklusArti jadwal
OnJadwal hanya membuka putaran baru. Selama posisi masih terbuka, jadwal berhenti bekerja, dan penambahan hanya datang dari averaging order.
OffJadwal terus bekerja meskipun posisi masih terbuka, sehingga pembelian terjadwal menumpuk ke dalam posisi yang sama.
PilihanMenunggu jadwal?Filter
Hourly / Daily / Weekly / MonthlyYa, menunggu slot waktuOpsional. Bila diisi, harus lolos saat slot jatuh tempo
On-trigger (signal)Tidak ada jadwal sama sekaliWajib diisi. Filter adalah satu-satunya pemicu
Mati: beruntun (berkelanjutan)Tidak ada jadwal sama sekaliOpsional. Bila kosong, putaran berikutnya dibuka begitu putaran sebelumnya selesai

Dua hal yang sering membingungkan:

  • “Mati: beruntun” hanya tersedia saat mode siklus On. Tanpa siklus tidak ada putaran berikutnya untuk dibuka, sehingga kombinasi itu akan membuat bot berjalan tanpa pernah membuka posisi. Karena itu pilihannya disembunyikan.
  • Beda “On-trigger” dan “Mati: beruntun” terletak pada wajib atau tidaknya filter. Keduanya sama-sama tidak menunggu jam. Bila Anda mengisi filter pada mode berkelanjutan, perilakunya menjadi sangat mirip on-trigger.

Menentukan apakah order pertama masuk seketika saat bot diaktifkan, atau menunggu slot jadwal. Bila Anda memilih seketika, yang dilewati hanyalah jadwal, bukan filter. Bila filter Anda belum lolos, bot tetap menunggu.

Filter adalah syarat yang harus terpenuhi sebelum bot membeli. Anda dapat mengaktifkan beberapa sekaligus.

  • Kapan diperiksa. Saat bot hendak membuka posisi, dan saat pembelian terjadwal jatuh tempo. Filter tidak diperiksa pada averaging order, dan tidak ikut menentukan penutupan posisi.
  • Bila lebih dari satu aktif, secara bawaan semuanya harus lolos bersamaan. Pada paket tertinggi tersedia pilihan agar cukup salah satu yang lolos.
  • Bila indikator gagal dihitung karena data belum cukup, hasilnya dianggap tidak lolos dan bot menunggu. Bot memilih diam daripada membeli tanpa dasar.
  • Timeframe evaluasi Anda tentukan sendiri. Timeframe lebih besar membuat sinyal lebih jarang berubah, sehingga bot lebih jarang menemukan momen masuk.

Satu hal yang perlu diperhatikan: filter RSI memiliki dua watak tergantung pilihan Interval Anda. Pada On-trigger (signal), RSI berarti “beli hanya ketika benar-benar jenuh jual”. Pada pilihan interval lain, RSI berperan sebagai penyaring: “boleh beli selama tidak sedang jenuh beli”. Watak kedua membuat bot jauh lebih sering menemukan momen masuk.

Kartu ini berisi empat kontrol. Tiga di antaranya mudah tertukar.

Keduanya mengukur hal yang sama, yaitu posisi harga terhadap harga rata-rata entry Anda. Yang berbeda adalah titik acuan dan pengaruh leverage.

Hard Stop-LossMax Drawdown Stop
Titik acuanHarga rata-rata entry Anda, tetapTitik terbaik yang pernah dicapai posisi, bergerak mengikuti
Pengaruh leverageTidak dipengaruhiDibagi leverage
Bisa menutup saat untung?Tidak pernahYa
  • Hard Stop-Loss adalah lantai. Ia berada pada jarak tetap di bawah harga rata-rata entry Anda. Karena rata-rata bergeser setiap averaging order terisi, lantai ini ikut bergeser.
  • Max Drawdown Stop adalah pengaman yang mengikuti. Ia mengukur seberapa jauh posisi mundur dari titik terbaiknya. Bila posisi Anda sempat untung lalu berbalik, Max Drawdown dapat menutupnya selagi masih untung, untuk mengunci sebagian keuntungan. Hard Stop-Loss tidak pernah melakukan ini.

Batas kerugian per hari, dapat Anda set dalam dolar atau persen dari nilai akun di awal hari, dan diatur ulang setiap pergantian hari. Berbeda dari dua kontrol di atas, batas dalam dolar mengukur jumlah uang, bukan jarak harga, sehingga tidak ikut melunak ketika averaging order menggeser harga rata-rata Anda.

Plafon modal per bot, dengan dua fungsi:

  • Memotong tangga averaging. Saat tangga disusun, bot berhenti menambah level begitu total modal yang direncanakan akan melewati plafon.
  • Menghentikan bot bila plafon terlampaui. Bot berhenti membuat order baru, dan posisi yang sudah terbuka dibiarkan.

Bila salah satu langkah menghasilkan penutupan posisi, langkah berikutnya tidak dijalankan pada siklus itu.

1. Perbarui setelan bot
2. Periksa batas risiko (Max Drawdown, Daily Loss, Capital Lock)
3. Periksa Hard Stop-Loss
4. Periksa target profit
5. Periksa batas durasi putaran, bila mode siklus aktif
6. Periksa averaging order <- murni harga, tanpa filter
7. Periksa jadwal dan filter <- di sinilah filter bekerja

Urutan ini menjelaskan dua hal yang mungkin Anda amati: batas risiko selalu diperiksa sebelum pembelian, sehingga bot tidak menambah posisi pada siklus yang sama dengan siklus penutupan; dan averaging order diperiksa sebelum jadwal, sehingga bot menyelesaikan urusan posisi yang berjalan lebih dulu.

  • “Bot saya berjalan tapi tidak membeli.” Beberapa sebab yang wajar: filter belum lolos, slot jadwal belum jatuh tempo, mode siklus On dan posisi masih terbuka, atau margin bebas di akun Anda belum cukup untuk membuka putaran baru.
  • “Stop loss saya 10% tapi bot menutup lebih cepat.” Kemungkinan besar yang bekerja adalah Max Drawdown Stop, yang dibagi leverage. Lihat tabel di bagian 6.
  • “Filter saya aktif tapi bot tetap menambah posisi saat harga turun.” Averaging order tidak melewati filter.
  • “Take profit saya 5% tapi posisi tutup sebelum harga naik 5% dari entry pertama.” Target dihitung dari harga rata-rata entry yang bergeser, bukan dari entry pertama.

Ini bukan produk investasi dan tidak ada jaminan hasil.

  • Menambah posisi saat rugi memperbesar kerugian bila harga tidak berbalik. Averaging menurunkan harga rata-rata Anda, tetapi juga memperbesar ukuran posisi yang sedang merugi.
  • Pengali ukuran memperbesar kebutuhan modal dengan cepat. Tangga Anda dapat terpotong bila plafon modal tercapai lebih dulu.
  • Leverage memperbesar kerugian secepat keuntungan, dan likuidasi mungkin terjadi bila margin tidak mencukupi.
  • Strategi ini paling sulit dijalankan pada tren turun yang kuat dan berkepanjangan.
  • Hasil bergantung pada kualitas setelan Anda. Platform menjalankan persis apa yang Anda atur.