Optimisasi cBot di cTrader
Artikel ini menjelaskan cara mengoptimalkan bot trading di cTrader Windows dan Mac.
Terkadang sulit untuk menentukan set parameter awal yang optimal untuk sebuah cBot. Untungnya, cTrader menawarkan fitur optimisasi cBot bawaan. Optimisasi mengambil kode Anda dan menjalankannya beberapa kali dengan setiap putaran berdasarkan berbagai nilai parameter. Kemudian, fitur ini menyajikan Anda serangkaian hasil yang dapat disesuaikan yang dapat Anda gunakan untuk menentukan konfigurasi parameter optimal.
Untuk menggunakan fitur ini, pilih sebuah instans cBot dan beralih ke tab Optimisation.

Setelah itu, tentukan periode backtesting untuk optimisasi dengan menggunakan kalender dropdown atau dengan menarik slider.

Pengaturan optimisasi
Karena optimisasi pada dasarnya hanyalah serangkaian backtesting, Anda dapat menentukan pengaturan backtesting serupa dengan yang dilakukan di tab Backtesting.
Parameter optimisasi
Klik tombol Parameters di sebelah kiri slider kalender. Anda akan melihat jendela berikut.

Di dalamnya, centang bendera di sebelah parameter cBot yang ingin Anda optimisasi. Parameter Timeframe tersedia untuk semua cBot.
Kriteria optimisasi
Tekan tombol Criteria yang terletak di sebelah kanan tombol Optimisation parameters. cTrader akan membuka tab berikut.

Kriteria optimisasi menentukan bagaimana algoritma optimisasi mengurutkan hasil Anda setelah backtesting. Anda dapat memilih di antara opsi berikut:
- Standard - serangkaian kriteria yang telah ditentukan sebelumnya yang dapat Anda tujukan untuk diminimalkan atau dimaksimalkan. Untuk melakukan ini, pilih kriteria dari menu dropdown di sebelah kanan dan pilih arah optimisasi di menu terkait di sebelah kiri. Untuk menambahkan kriteria baru, klik Add criterion.
- Custom - kriteria kustom yang ditentukan dalam kode cBot Anda menggunakan metode
GetFitness()seperti yang ditunjukkan dalam contoh di bawah ini.
1 2 3 4 5 | |
1 2 3 4 5 6 | |
Perhitungan multi-kriteria
Jika beberapa kriteria digunakan untuk menghitung efektivitas parameter, cTrader akan menggunakan semuanya secara setara untuk menghitung nilai fitness untuk proses optimisasi.
Secara khusus, platform mengalikan nilai semua kriteria yang memaksimalkan dan secara terpisah mengalikan nilai semua kriteria yang meminimalkan. Selanjutnya, platform membagi nilai perkalian absolut untuk kriteria yang memaksimalkan dengan nilai yang sama untuk kriteria yang meminimalkan.
Pseudocode berikut menunjukkan secara tepat bagaimana nilai fitness multi-kriteria dihitung.
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Metode
Klik tombol Method (ditampilkan sebagai GA atau # tergantung pada opsi yang dipilih). Dalam menu di bawah ini, pilih metode optimisasi mana yang digunakan oleh platform.

Opsi berikut tersedia:
- Genetic Algorithm - algoritma meniru proses evolusi biologis. Silakan lihat bagian terpisah untuk deskripsi detailnya.
- Grid (#) - algoritma secara berurutan melakukan backtest pada setiap kemungkinan set parameter.
Catatan
Menurut perkiraan kami, algoritma genetika jauh lebih cepat untuk menemukan nilai parameter optimal.
Sumber daya
Klik tombol Resources untuk memilih persentase beban CPU Anda yang dialokasikan untuk backtesting. Geser slider untuk mengatur persentase penggunaan CPU.
Semakin banyak sumber daya yang Anda alokasikan, optimisasi akan semakin cepat selesai. Namun, Anda mungkin melihat penurunan kinerja saat menggunakan aplikasi lain.

Perhatikan bahwa sumber daya CPU juga dapat disesuaikan selama proses optimisasi itu sendiri.
Memulai dan mengelola prosedur optimisasi
Untuk melanjutkan optimisasi, klik tombol Play di sebelah kanan slider kalender. Tergantung pada sumber daya mesin Anda, pengaturan optimisasi, dan kompleksitas cBot, optimisasi mungkin memerlukan waktu.
Bar UI tepat di bawah slider kalender akan memberikan informasi tentang jumlah proses backtesting yang telah selesai, waktu yang telah berlalu dan perkiraan waktu yang tersisa.

Layar tengah di tab Optimisation, sementara itu, akan memberikan grid real-time yang berisi informasi tentang semua proses backtesting yang telah diselesaikan oleh algoritma.

Untuk menerapkan set parameter yang diuji selama proses tertentu, klik tombol Apply. Tombol ini hanya aktif jika tidak ada prosedur optimisasi yang sedang berjalan.
Atau, centang bendera Autoselect the best pass di sudut kiri atas agar cTrader secara otomatis memilih proses (dan parameter) yang telah mencapai hasil terbaik sesuai dengan kriteria optimisasi yang Anda tentukan.
Hasil optimisasi
Setelah optimisasi selesai, tabel tengah akan menampilkan daftar akhir semua proses backtesting dan hasilnya.
Tabel ini memiliki kolom-kolom berikut. Karena grid dapat dikonfigurasi sepenuhnya, kolom-kolom ini dapat digeser dan dipindahkan atau dinonaktifkan sama sekali setelah mengklik kanan tabel dan membatalkan pilihan mereka dari menu kontekstual.
| Bidang | Definisi |
|---|---|
| Proses | Nomor proses. |
| Fitness | Nilai yang menunjukkan seberapa baik proses tersebut sesuai dengan kriteria optimisasi. |
| Ekuitas | Total ekuitas pada akhir proses. |
| Saldo | Total saldo pada akhir proses. |
| Laba bersih | Selisih antara saldo akhir dan saldo awal. |
| Trading | Total jumlah posisi tertutup. |
| Trading yang menang | Total jumlah trading yang untung yang dicapai selama proses. |
| Trading yang kalah | Total jumlah trading yang rugi yang dicapai selama proses. |
| Faktor laba | Rasio total laba/total rugi. |
| *Maks drawdown ekuitas (%) | Persentase maksimum drawdown ekuitas. |
| Drawdown saldo maksimal (%) | Persentase maksimum drawdown saldo. |
| Maks drawdown ekuitas | Drawdown ekuitas maksimum yang ditentukan dalam mata uang deposit akun. |
| Drawdown saldo maksimal | Drawdown saldo maksimum yang ditentukan dalam mata uang deposit akun. |
| Rerata hasil trading | Rata-rata laba untuk semua trading yang dilakukan selama proses. |
| Parameter proses | Klik tombol Apply di kolom ini untuk menerapkan parameter dari proses ini ke cBot Anda. |
Pilih proses untuk melihat statistik terperinci tentangnya di tampilan di bawah grid tengah.
Tujuh tab pertama dalam tampilan ini memberikan informasi yang sama seperti tab yang sama di jendela Backtesting. Tab Pass parameters unik untuk optimisasi.
Parameter proses
Tab Parameter proses menyediakan informasi berikut.

cTrader akan menyorot semua parameter yang dioptimalkan dengan warna hijau sementara parameter tetap (tidak diaktifkan di menu Parameter) akan tetap tidak disorot.
Menyimpan dan memuat hasil optimisasi
cTrader juga memungkinkan untuk menyimpan dan memuat hasil optimisasi ke dan dari file .optres yang disimpan secara lokal.
Catatan
File .optres hanyalah kumpulan pasangan kunci-nilai dengan kunci yang mewakili berbagai pengaturan dan metrik optimisasi.
Kiat
Anda dapat menggunakan file .optres untuk terus menyempurnakan cBot Anda di beberapa mesin lokal tanpa kehilangan kemajuan apa pun. Anda juga dapat memasukkan data dari file ini ke alat AI generatif untuk mencoba mendeteksi pola apa pun dalam proses yang telah diselesaikan oleh cBot Anda.
Untuk menyimpan hasil optimisasi, tunggu hingga proses selesai dan klik ikon Simpan. Dalam dialog penjelajah file, ketik nama file dan simpan file tersebut.
Untuk memuat hasil optimisasi, klik ikon Muat dan pilih file yang diperlukan di jendela penjelajah file.
