Jenis parameter di cTrader algo
Dalam artikel ini dan video terkaitnya, kami akan mendemonstrasikan bagaimana Anda dapat mendeklarasikan dan menggunakan parameter yang dapat disesuaikan dalam cBot dan indikator Anda. Kami akan mengembangkan indikator sederhana dan menunjukkan cara mengonfigurasi parameter dari UI cTrader. Kami juga akan menjelaskan jenis parameter apa yang dapat Anda gunakan dalam cBot atau indikator cTrader dan mengilustrasikan bagaimana parameter tersebut dideklarasikan dan digunakan dalam kode Anda.
Parameter yang dapat disesuaikan
Parameter yang dapat disesuaikan adalah nilai yang dapat dikonfigurasi saat menambahkan, memulai, atau menggunakan algoritma. Parameter ini memungkinkan Anda dan pengguna lain untuk menyesuaikan perilaku cBot, indikator, dan plugin tanpa mengubah kode sumber.
Menggunakan parameter dalam cBot, indikator, dan plugin
- Untuk cBot, Anda dapat mengonfigurasi variabel atau pengaturan yang memengaruhi eksekusi, seperti level Stop Loss dan Take Profit.
- Untuk indikator, Anda dapat mengonfigurasi variabel yang memengaruhi output indikator, seperti periode yang dipertimbangkan atau sumber data yang akan digunakan.
- Untuk plugin, Anda dapat menggunakan variabel konfigurasi, seperti opsi UI atau kunci API, yang menentukan bagaimana plugin berinteraksi dengan antarmuka atau layanan eksternal.
Seperti yang telah dijelaskan sebelumnya, cTrader mendukung jenis parameter berikut:
intdoublestringboolDataSeriesTimeFrameenumColorDateTimeDateOnlyTimeSpanSymbolSymbol[](multi-symbol)Enum[](multi-enum)TimeFrame[](multi-period)
Catatan
Algoritma Python menggunakan parameter yang dapat disesuaikan yang dideklarasikan dalam file .cs mereka.
Buat indikator sederhana dengan parameter
Untuk mendemonstrasikan bagaimana Anda dapat menggunakan parameter dalam indikator kustom, kami akan membuat indikator baru dan menamainya Standard Deviation.
Untuk menghitung standar deviasi, pertama-tama kita perlu menghitung moving average dari harga. Selanjutnya, kami akan mendeklarasikan parameter yang diperlukan untuk indikator moving average, dimulai dengan periode moving average.
1 | |
Properti publik apa pun yang memiliki salah satu jenis yang didukung dapat menjadi parameter indikator. Untuk mengubah properti MaPeriod kami menjadi parameter, yang perlu kami lakukan adalah menambahkan deklarasi yang diperlukan.
1 2 | |
Atribut Parameter menginstruksikan cTrader untuk menampilkan properti ini sebagai parameter di panel parameter indikator menggunakan nama yang ditentukan ("MA Period").
Seperti yang ditunjukkan di bawah ini, atribut Parameter juga memungkinkan Anda untuk mendefinisikan beberapa properti parameter seperti nama yang ditampilkan, nilai default, grup di mana parameter ini akan ditempatkan, nilai maksimum dan minimum, serta langkah perubahan parameter saat tombol panah atas dan bawah ditekan (hanya untuk nilai numerik).
1 2 | |
Sekarang kami akan menambahkan sisa parameter yang diperlukan untuk indikator moving average. Parameter MaType akan membantu kami menentukan jenis moving average. Ini adalah enum yang akan muncul sebagai menu dropdown di UI cTrader.
1 2 | |
Parameter Source akan memberi pengguna opsi untuk menentukan sumber data untuk indikator moving average kami. Parameter ini bertipe DataSeries.
1 2 | |
Setelah parameter yang diperlukan dideklarasikan, kami akan mendefinisikan dan menginisialisasi moving average kami.
1 2 3 4 5 6 | |
Pada titik ini, kami siap untuk mengimplementasikan perhitungan untuk standar deviasi kami. Template kode default sudah berisi properti Output yang dapat kami gunakan untuk menampilkan hasil perhitungan.
1 2 | |
Terakhir tetapi tidak kalah penting, kami akan mengimplementasikan perhitungan standar deviasi dalam metode Calculate().
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Jika kami menambahkan indikator kami ke grafik, kami akan melihat semua parameter kami di jendela Tambahkan instance.
Tambahkan parameter tambahan
Dengan standar deviasi kami yang telah selesai, kami juga dapat menambahkan garis horizontal yang akan berfungsi sebagai ambang batas visual untuk indikator. Untuk tujuan ini, kami perlu menambahkan beberapa parameter lagi.
Yang pertama adalah parameter boolean yang akan menentukan apakah garis kami akan ditampilkan atau tidak.
1 2 | |
Parameter LineLevel akan memungkinkan kami menentukan level harga di mana garis harus digambar.
1 2 | |
Kami juga akan menambahkan parameter yang memungkinkan pemilihan warna garis.
1 2 | |
Dengan semua parameter yang diperlukan, kami dapat menulis kode untuk menggambar garis pada grafik tempat indikator kami terpasang.
1 2 3 4 | |
Jika kami membangun indikator lagi dan menambahkan instance baru, kami akan dapat menyembunyikan/menampilkan garis, memindahkannya ke atas atau ke bawah, dan memilih warna yang kami inginkan sebagai warna garis.
Seperti yang ditunjukkan dalam contoh di bawah ini, parameter juga dapat digunakan untuk memastikan bahwa indikator kami hanya ditampilkan saat ditambahkan ke grafik untuk rentang waktu tertentu.
1 2 | |
Dalam metode Initialize() kami akan memeriksa rentang waktu grafik tempat indikator kami terpasang. Jika tidak sama dengan nilai parameter TF, kami akan mencegah indikator ditampilkan.
1 2 3 4 5 6 7 8 9 10 11 12 | |
Kami berharap panduan ini bermanfaat dalam memahami parameter dan cara kerjanya dalam trading algo cTrader.