Backtesting cBot di cTrader
Artikel ini menjelaskan cara melakukan backtesting pada bot trading di cTrader Windows dan Mac.
Backtesting adalah alat untuk mengevaluasi cBot dengan memungkinkan mereka melakukan trading pada data pasar historis dalam kondisi tertentu yang telah ditentukan sebelumnya.
Saat melakukan backtesting, Anda dapat menjalankan instansi cBot pada pergerakan pasar masa lalu. Setelah itu, cTrader akan menghasilkan laporan terperinci tentang operasi trading yang dilakukan oleh cBot Anda dan statistik ekuitas/saldo akhir.
Catatan
Setiap tindakan trading yang dilakukan saat melakukan backtesting cBot tidak akan memengaruhi akun Anda. Backtesting tidak dimaksudkan untuk berurusan dengan dana riil. Sebaliknya, fitur ini hanya ada untuk tujuan analisis.
Untuk melakukan backtesting cBot, pilih salah satu instansinya dan beralih ke tab Backtesting.

Pengaturan backtesting
Untuk mengatur cara kerja backtesting, klik ikon roda gigi yang terletak di pojok kiri atas. cTrader akan membuka menu berikut.

Opsi dalam menu ini didefinisikan sebagai berikut. Semua parameter terkait uang (seperti modal awal) ditentukan dalam USD.
| Nama opsi | Tindakan dan deskripsi |
|---|---|
| Modal awal | Tentukan modal awal yang akan digunakan cBot Anda saat trading. |
| Komisi | Tetapkan tingkat komisi per juta unit yang diperdagangkan. |
| Data | Pilih data timeseries mana yang akan digunakan untuk menguji cBot Anda. Opsi yang tersedia adalah sebagai berikut.
|
| Spread | Pilih nilai spread yang akan diterapkan selama backtesting. Opsi berikut tersedia.
|
Contoh data M1 CSV
Untuk mengambil data trading dari mesin lokal Anda, pastikan untuk membuat berkas CSV yang dipisahkan koma yang berisi data berikut:
- Tanggal
- Perjam
- Harga pembukaan
- Harga tertinggi
- Harga terendah
- Harga penutupan
- Volume
Contoh
1 2 3 4 | |
Prosedur dan mode backtesting
Tentukan periode untuk pengujian menggunakan kontrol yang dirangkum di bawah ini:
- Gunakan penggeser interaktif di bagian atas tab Backtesting.
- Pilih nilai yang diperlukan dari menu kalender di sebelah kiri dan kanan penggeser.
- Masukkan nilai kustom (menggunakan format
DD:MM:YYYY) ke dalam bidang di kedua sisi penggeser.

Anda dapat menjalankan backtesting menggunakan mode berikut:
- Pengujian non-real-time: Bot Anda melakukan semua operasi yang diperlukan secara berurutan; setelah itu, Anda hanya memiliki akses ke hasil akhir termasuk statistik trading, grafik ekuitas, dll.
- Pengujian real-time (mode visual): Data historis yang telah Anda sediakan diteruskan ke cBot Anda pada kecepatan pemutaran tertentu yang dapat Anda sesuaikan. Hasilnya, Anda dapat melihat operasi trading saat ditempatkan. Semua statistik trading juga diperbarui pada kecepatan pemutaran yang telah Anda pilih.
Pengujian non-real-time
Setelah pengaturan selesai, klik tombol Putar di sebelah kanan penggeser. Tergantung pada panjang periode yang ditentukan dan spesifikasi mesin lokal Anda, Anda mungkin perlu menunggu beberapa menit sebelum cTrader menghasilkan hasilnya.
Backtesting real-time (mode visual)
Tentukan pengaturan yang diperlukan termasuk periode pengujian dan aktifkan bendera Mode visual yang terletak di bawah penggeser kalender.

Sesuaikan kecepatan pemutaran data dengan menyeret penggeser Kecepatan atau menggunakan menu di sebelah kanannya. Setelah Anda selesai mengatur, klik tombol Putar.
cTrader kemudian akan mulai menampilkan grafik trading untuk periode yang dipilih secara real-time, dipercepat menggunakan pengaturan kecepatan pemutaran Anda. Perhatikan bahwa Anda dapat menyesuaikan kecepatan pemutaran secara dinamis saat backtesting berlangsung.
Tergantung pada kodenya, cBot Anda juga akan melakukan operasi trading secara real-time bereaksi terhadap sinyal analisis teknikal yang muncul dalam grafik. Statistik backtesting akan diperbarui secara otomatis berdasarkan tindakan yang diambil oleh cBot Anda.
Tergantung pada periode yang Anda pilih dan kecepatan pemutaran, pengujian mode visual mungkin memakan waktu. Meskipun demikian, jika cBot Anda tidak berperilaku seperti yang diharapkan, Anda dapat menguji reaksinya terhadap berbagai kondisi pasar dengan menggunakan pengujian mode visual dan data trading kustom yang bersumber dari berkas CSV.
Backtest menggunakan grafik Renko dan bar rentang
cTrader mendukung backtesting cBot pada grafik Renko dan bar rentang. Untuk melakukan backtest seperti itu, buat instance cBot baru dan pilih grafik Renko/bar rentang sebagai grafik trading yang akan dihubungkan.

Atau, dengan instance cBot yang sudah dipilih, gunakan menu pemilih grafik di bagian atas layar dengan mengklik ikon Lainnya. Dalam menu yang muncul, pilih salah satu ambang volume yang tersedia untuk menghasilkan bata Renko atau bar rentang.

Setelah cTrader menghasilkan grafik Renko/bar rentang untuk simbol yang dipilih, beralih ke tab Backtesting. Di sana, konfigurasikan mode/pengaturan backtesting seperti biasa. Klik ikon Putar untuk melakukan backtest pada grafik yang dipilih.
Hasil backtesting
cTrader menghasilkan beberapa statistik trading untuk menampilkan hasil backtesting. Untuk melihat data ini, lanjutkan ke tab yang terletak tepat di bawah grafik trading.

Grafik ekuitas
Ketika backtesting dilakukan (terlepas dari apakah Anda menggunakan mode visual), cTrader menghasilkan grafik ekuitas dengan jumlah trading pada sumbu X dan saldo akun pada sumbu Y. Grafik ini berisi statistik berikut:
- Garis kuning menunjukkan saldo akun yang berubah dengan setiap trading.
- Zona abu-abu menyoroti bagaimana total ekuitas meningkat atau menurun tergantung pada trading yang dilakukan oleh bot Anda.
Untuk mendapatkan gambaran yang lebih baik tentang apa yang dilakukan grafik ekuitas, perhatikan contoh di atas. Ini menunjukkan bahwa bot kita telah melakukan lebih dari 290 trading selama backtesting. Dengan setiap perubahan saldo akun, kita juga dapat melihat perubahan yang sesuai dalam total ekuitas.
Statistik perdagangan
Tab Statistik trading berisi data tentang bagaimana kinerja cBot Anda selama backtesting. Tab ini mencakup bidang-bidang berikut.
| Nama bidang | Definisi |
|---|---|
| Laba bersih | Total laba bersih dari semua trading. |
| Faktor laba | Rasio yang dihitung dengan membagi total laba bersih dengan total rugi bersih. |
| Komisi | Total jumlah komisi yang dibayarkan untuk trading yang dilakukan oleh cBot Anda. |
| Drawdown saldo maksimal | Jumlah maksimum penurunan saldo. |
| Maks drawdown ekuitas | Jumlah maksimum penurunan ekuitas. |
| Total trading | Total jumlah trading yang dilakukan oleh cBot Anda. |
| Trading yang menang | Total jumlah trading yang menghasilkan laba terealisasi. |
| Maksimum trading menang berturut-turut | Jumlah terbesar trading berturut-turut yang menghasilkan laba terealisasi. |
| Trading dengan laba terbesar | Laba terealisasi terbesar yang dihasilkan oleh satu trading. |
| Trading yang kalah | Total jumlah trading yang menghasilkan kerugian terealisasi. |
| Maksimum trading kalah berturut-turut | Jumlah terbesar trading berturut-turut yang menghasilkan kerugian terealisasi. |
| Trading dengan rugi terbesar | Jumlah besar kerugian terealisasi yang dihasilkan oleh satu trading. |
| Rerata hasil trading | Rata-rata L&R terealisasi yang dihasilkan oleh semua trading. |
Posisi
Tab Posisi menampilkan semua posisi yang saat ini dibuka oleh cBot Anda. Strukturnya mirip dengan tab Posisi di tampilan Pemantau Trading biasa dan berisi data yang sama.

Klik ikon roda gigi di pojok kanan bawah untuk menyesuaikan data apa yang ditampilkan di tabel tengah.
Order
Tab Order berisi informasi tentang order yang telah ditempatkan oleh cBot Anda. Struktur dan tampilannya menyalin tab Order di tampilan utama Pemantau Trading.

Sejarah
Tab Riwayat menampilkan statistik semua deal pembukaan dan penutupan yang telah dicatat selama backtesting. Mirip dengan tab lain yang dibahas di atas, tab ini menyalin tab Riwayat di tampilan Pemantau Trading.

Peristiwa
Tab Peristiwa mencantumkan semua komunikasi terkait server dan menampilkan berbagai parameter dari peristiwa-peristiwa ini.

Log
Terakhir, tab Log menampilkan output cBot Anda selama backtesting. Daftar pesan dapat dicari sepenuhnya dan difilter berdasarkan jenis peristiwa dan instance.
