Langkau tajuk talian

Cara mengoptimumkan cBot

Dalam cTrader, adalah mungkin untuk mencipta cBot dengan sebarang bilangan parameter yang boleh disesuaikan yang mempengaruhi tingkah laku mereka seperti tahap perlindungan pesanan atau volum pesanan lalai. Ini menimbulkan persoalan tentang bagaimana pedagang boleh menentukan nilai optimum parameter ini dengan tepat. Nasib baik, cTrader menawarkan alat terbina dalam yang boleh mengendalikan pengoptimuman, menjimatkan masa berharga pedagang.

Dalam panduan pengguna ini, kita memberi tumpuan kepada cara pengguna boleh mengoptimumkan cBot mereka dan menunjukkan mengapa pengoptimuman cBot penting untuk mana-mana pembangun Algo.

Bagaimana pengoptimuman cBot berfungsi

Fikirkan pengoptimuman sebagai satu siri ujian belakang. Setiap lulus ujian belakang berlaku pada data yang sama tetapi menggunakan nilai yang berbeza untuk sebarang parameter yang dikodkan dalam cBot.

Pertimbangkan cBot yang boleh bertindak balas kepada kes apabila purata bergerak tempoh pantas dan perlahan bersilang antara satu sama lain (purata bergerak pantas menyilang purata bergerak perlahan). Kita mahu dapat menyesuaikan berapa banyak tempoh pantas dan perlahan cBot menerima data.

Oleh itu, cBot kita harus mempunyai dua parameter berikut.

1
2
3
4
5
[Parameter("Slow Periods", Group = "Moving Average", DefaultValue = 10)]
public int SlowPeriods { get; set; }

[Parameter("Fast Periods", Group = "Moving Average", DefaultValue = 5)]
public int FastPeriods { get; set; }

Untuk menentukan nilai parameter optimum, kita perlu menguji secara meluas bagaimana cBot berfungsi dalam pelbagai keadaan pasaran dan apabila diberi nilai yang berbeza untuk dua parameter di atas. Jika kita melakukan ujian ini secara manual, ia akan mengambil masa yang lama tanpa memberikan set keputusan yang mudah ditafsirkan.

Nasib baik, kita boleh membuat cTrader menjalankan ujian ini secara automatik, dan pada kesimpulannya, memberikan kita nilai parameter tertentu yang membolehkan cBot mencapai hasil yang terbaik. Proses ini dikenali sebagai pengoptimuman cBot.

Akses pengoptimuman cBot

Untuk mengakses pengoptimuman cBot, lakukan tindakan berikut.

Pertama, pilih contoh cBot yang anda ingin optimumkan. Jika perlu, cipta contoh baharu dengan mengklik ikon tambah dan memilih simbol, atau memilih Tambah contoh dalam menu konteks yang dibuka dengan mengklik ikon Lagi.

Selepas itu, beralih ke tab Pengoptimuman yang terletak tepat di sebelah kanan tab Ujian Belakang. Skrin tengah dalam tab ini sepatutnya kelihatan seperti berikut.

Konfigurasikan tetapan pengoptimuman dan parameter cBot

Memandangkan pengoptimuman adalah satu siri ujian belakang, anda boleh mengkonfigurasi tetapan yang sama seperti yang anda lakukan untuk ujian belakang biasa. Untuk berbuat demikian, klik ikon roda gigi dan ubah nilai dalam menu yang baru dibuka.

Untuk memilih parameter tepat yang perlu dioptimumkan oleh cTrader, klik butang Parameter yang terletak betul-betul di sebelah kanan ikon roda gigi.

Dalam sub-bahagian ini, dayakan atau nyahdayakan bendera di sebelah kiri setiap nama parameter untuk memasukkan/mengecualikan parameter ini daripada proses pengoptimuman. Perhatikan bahawa parameter Tempoh masa hadir untuk semua cBot tanpa mengira konfigurasi mereka.

Kita mahu pengoptimuman menentukan nilai optimum tempoh perlahan dan pantas yang akan dipertimbangkan oleh cBot kita pada permulaan. Walau bagaimanapun, kita belum mahu mencuba jenis purata bergerak yang lain.

Tentukan kriteria dan algoritma pengoptimuman

Adalah mungkin untuk menentukan kriteria tepat yang akan digunakan oleh cTrader untuk memilih nilai parameter optimum antara laluan ujian belakang yang akan dijalankannya.

Untuk berbuat demikian, klik butang Kriteria yang diwakili oleh ikon garis menaik. Anda akan melihat bahagian berikut.

Tetapan untuk setiap kriteria termasuk dua menu. Dalam menu di sebelah kiri, pilih sama ada kriteria harus diminimumkan atau dimaksimumkan. Dalam menu di sebelah kanan, pilih kriteria yang harus diminimumkan atau dimaksimumkan daripada set pilihan yang telah ditentukan. Kriteria baharu boleh ditambah dengan mengklik Tambah kriteria.

Dalam tangkapan skrin di atas, kita mahu cTrader memaksimumkan keuntungan bersih kita dan bilangan dagangan yang menguntungkan yang dibuat oleh cBot kita. Pada masa yang sama, kita mahu meminimumkan peratusan pengurangan ekuiti maksimum.

Untuk ringkasnya, artikel ini tidak meliputi kriteria pengoptimuman tersuai dan kaedah GetFitness(). Untuk mengetahui lebih lanjut mengenainya, rujuk dokumentasi teknikal kami.

Untuk memilih algoritma pengoptimuman tertentu, klik butang Algoritma di sebelah kanan butang Kriteria. Sub-bahagian berikut akan dibuka.

Algoritma carian menyeluruh sangat tepat tetapi memerlukan banyak sumber. Apabila pilihan Grid dipilih, cTrader mencipta grid semua nilai parameter yang mungkin dan menjalankan semua ujian belakang yang diperlukan untuk mengujinya. Walaupun proses ini menyeluruh, ia boleh mengambil masa.

Mujurlah, cTrader menyertakan pilihan Algoritma genetik. Algoritma ini meniru pemilihan semula jadi dengan menganggap setiap laluan sebagai individu, parameter cBot sebagai gen, dan tahap kesesuaian dengan kriteria pengoptimuman sebagai kebolehsuaian. Algoritma genetik berhenti sebaik sahaja ia mengesan bahawa sebarang perubahan pada nilai parameter tertentu akan menghasilkan pulangan yang semakin berkurangan kepada keberkesanan cBot.

Memandangkan algoritma genetik kurang memerlukan sumber berbanding carian menyeluruh namun masih menghasilkan keputusan yang tepat, kami mengesyorkan untuk memilih kaedah pengoptimuman ini.

Peruntukkan sumber dan laksanakan pengoptimuman cBot

Untuk melaksanakan pengoptimuman cBot, pilih julat data sejarah yang akan digunakan oleh cTrader untuk menjalankan laluan ujian belakang. Untuk berbuat demikian, gunakan peluncur kalendar di bahagian atas tab Pengoptimuman atau menu di sebelah kiri dan kanan.

Perhatikan bahawa pengoptimuman adalah proses yang memerlukan banyak sumber dan mungkin mengambil masa untuk diselesaikan. Memandangkan kita mahu menerima keputusan dengan agak cepat, kita akan memilih satu tahun sebagai tempoh pengoptimuman.

cTrader juga membolehkan penentuan peratusan tepat sumber CPU yang diperuntukkan untuk proses pengoptimuman. Untuk menyesuaikan tetapan ini, klik butang Sumber di sebelah kiri menu kalendar paling kiri.

Dalam bahagian yang baru muncul, seret peluncur untuk meningkatkan atau mengurangkan penggunaan CPU.

Selepas selesai memperuntukkan sumber, anda sepatutnya bersedia untuk meneruskan pengoptimuman. Untuk berbuat demikian, klik butang Main di sebelah kanan menu kalendar paling kanan. Selepas cTrader memuat data sejarah, anda akan melihat laluan pengoptimuman ditambah ke skrin tengah dalam masa nyata.

Di bahagian atas grid, anda juga akan melihat bilangan laluan semasa, masa yang telah berlalu, dan masa pengoptimuman yang tinggal.

Sebarang laluan yang telah selesai akan ditandakan dengan tanda semak hijau. Semua laluan di mana cBot anda telah mencapai henti rugi sebaliknya akan ditandakan dengan tanda semak kelabu.

Nota

Anda boleh menyimpan dan memuatkan keputusan pengoptimuman, yang membolehkan anda membawanya ke peranti yang berbeza.

Tafsir dan gunakan hasil pengoptimuman

Dalam grid tengah, cTrader akan memaparkan beberapa metrik untuk setiap laluan ujian belakang termasuk bilangan dagangan yang menguntungkan yang dibuat oleh cBot anda dan peratusan pengurangan ekuiti maksimum.

Yang perlu diberi perhatian khusus ialah lajur Kesesuaian yang memaparkan skor kesesuaian untuk setiap laluan. Anggap skor kesesuaian sebagai metrik yang menilai tahap di mana laluan telah memaksimumkan/meminimumkan kriteria pengoptimuman yang anda pilih. Skor kesesuaian yang lebih tinggi menunjukkan tahap kesesuaian yang lebih tinggi dengan kriteria ini.

Untuk memilih laluan dengan skor kesesuaian tertinggi dengan cepat, cukup dayakan bendera Pilih secara automatik laluan terbaik yang terletak tepat di atas grid tengah. Perhatikan bahawa anda boleh mendayakan bendera Pilih secara automatik laluan terbaik semasa pengoptimuman berlaku, dan cTrader akan mencari nilai parameter terbaik yang mungkin secara dinamik.

Seperti yang anda lihat dalam lajur Kesesuaian, laluan nombor 33 memberikan skor kesesuaian terbaik yang mungkin berbanding semua laluan lain.

Kita boleh klik Guna di sebelah laluan 33 dengan selamat, dan nilai parameter yang digunakan semasa laluan ini akan segera digunakan pada contoh cBot kita.

Nilai lalai untuk parameter Tempoh perlahan dan Tempoh pantas masing-masing adalah 10 dan 5.

Seperti dalam kes ujian belakang, paparan Pantau Dagangan akan menyediakan carta ekuiti dan statistik dagangan terperinci yang meringkaskan tindakan yang diambil oleh cBot kita semasa laluan tertentu. Perhatikan bahawa carta ekuiti hanya dipaparkan untuk 20 laluan terbaik dari grid tengah.

Garis Baki dan Ekuiti yang meningkat secara berterusan hanya mengukuhkan fakta bahawa laluan 33 memberikan nilai parameter yang diperlukan untuk cBot kita berfungsi dengan berkesan.

Ringkasan

Secara ringkas, pengoptimuman cBot adalah alat yang berkuasa untuk memastikan bahawa penasihat dagangan automatik anda dikonfigurasi dengan betul. Kami sangat mengesyorkan untuk menjalankan beberapa pusingan pengoptimuman dengan kriteria yang berbeza untuk mendapatkan idea tentang nilai parameter yang terbaik untuk sebarang cBot yang telah anda bangunkan sendiri atau peroleh daripada pembangun lain.