Operasi trading cBot
Dalam panduan ini, kami menjelaskan secara rinci operasi trading utama yang dapat Anda jalankan menggunakan cBot yang dikembangkan melalui Algo API.
Berikut adalah beberapa operasi yang didukung untuk cBot:
- Mengirim order pasar.
- Memasang order pending.
- Memodifikasi order pending dan posisi terbuka.
- Menutup posisi dan membatalkan order.
- Berlangganan ke peristiwa trading (posisi, order, dan aktivitas terkait).
Kirim order pasar
Order pasar dikirim ke server trading ketika metode ExecuteMarketOrder() dipanggil. Setelah membuat cBot baru, Anda dapat menambahkan metode ini dengan beberapa properti order pasar yang ditentukan (simbol, volume, take profit, stop loss, dll.). Contoh di bawah ini memasang order pasar ketika cBot dimulai.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | |
1 2 3 4 5 6 7 8 9 10 | |
Kiat
Dalam contoh tersebut, beberapa parameter order sengaja dibiarkan tidak terdefinisi "". Periksa Referensi untuk tanda tangan dan urutan semua parameter ExecuteMarketOrder().
Setelah membangun cBot dan menambahkan instance, Anda akan melihat bahwa order pasar dengan parameter yang ditentukan telah dieksekusi pada awal. Tab Posisi dan Log di panel Pemantau Trading menampilkan entri posisi dan log yang sesuai.
Pasang order pending
cTrader mendukung tiga jenis order pending, yaitu order stop, order limit, dan order stop-limit. Untuk memasang order pending pada awal, Anda dapat mengganti order pasar dengan cuplikan kode berikut dalam contoh cBot sebelumnya.
1 2 3 | |
1 2 3 | |
Kiat
Untuk memeriksa parameter metode dengan cepat, mulailah mengetik nama metode dan tanda kurung buka. Anda akan melihat pop-up IntelliSense dengan informasi tambahan.

Kiat
Jika Anda mengklik metode/parameter di cTrader Algo dan menekan F1, panel bantuan di sebelah kanan jendela kode akan menampilkan hasil pencarian yang cocok. Jika kursor teks tetap berada di luar jendela kode dan Anda menekan F1, jendela Pusat Bantuan akan muncul untuk membantu Anda.
Anda akan melihat catatan berikut di panel Pemantau Trading setelah berhasil membangun dan menjalankan cBot.
Modifikasi order pending dan posisi terbuka
Ketika order pending ditempatkan, mereka tersedia dalam koleksi PendingOrders cBot Anda. Melalui koleksi ini, Anda dapat mengakses dan memodifikasinya. Order pending yang ada dapat dimodifikasi dengan menyesuaikan level stop loss mereka sebagai berikut.
1 2 3 4 5 6 7 8 9 10 11 | |
1 2 3 4 5 6 7 8 | |
Tab Log panel Pemantau Trading menampilkan bahwa ketiga order pending berhasil dimodifikasi segera setelah ditempatkan.

Setelah berbagai jenis order berhasil dieksekusi, posisi akan dibuka untuk akun Anda. Semua posisi terbuka tersedia dalam koleksi Positions cBot Anda. Sama seperti memodifikasi order pending dalam contoh sebelumnya, Anda dapat memodifikasi posisi terbuka. Karena order pasar adalah cara tercepat untuk membuka posisi, mari tambahkan metode OnBar() dengan tindakan modifikasi posisi ke cBot pertama dalam panduan ini.
1 2 3 4 5 6 7 | |
1 2 3 4 | |
Seperti yang tercermin dalam log, posisi terbuka dimodifikasi pada bar pertama yang dibuka.

Tutup posisi dan batalkan order
Anda dapat menemukan contoh cBot di bawah ini yang menutup semua posisi terbuka dan membatalkan semua order pending pada hari Jumat pukul 11:00 (UTC) dengan memanggil metode OnTick().
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | |

Berlangganan ke peristiwa trading
cTrader memungkinkan pengembang algoritma untuk berlangganan ke peristiwa trading dan memantau aktivitas trading, tidak peduli apakah ini telah dimulai oleh cBot atau secara manual. Ini dicapai dengan mendengarkan peristiwa yang tersedia dalam dua koleksi yang ditunjukkan sebelumnya, Positions dan PendingOrders.
Ada tiga peristiwa yang tersedia untuk posisi:
OpenModifiedClosed
Mereka dipicu ketika Anda membuka, memodifikasi, dan menutup posisi di akun Anda, masing-masing.
Dalam cuplikan kode di bawah ini, ketiga peristiwa dideklarasikan dalam metode OnStart() dan metode yang akan dipanggil ditugaskan. Ini akan secara otomatis membuat tanda tangan kode untuk kita gunakan. Setelah itu, pernyataan Print() ditambahkan ke masing-masing metode peristiwa.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Baik itu Anda atau cBot yang melakukan peristiwa Open, Modified dan Closed, algoritma akan meresponsnya setiap kali dengan pesan yang dicetak seperti yang ditunjukkan dalam log di bawah ini.

Demikian pula, Anda dapat berlangganan ke peristiwa yang terkait dengan order pending. Ada empat peristiwa yang tersedia untuk order pending:
CreatedModifiedFilledCancelled
Keempat peristiwa dideklarasikan dalam metode OnStart(), dan penangan peristiwa ditambahkan sebagai berikut.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | |
Jika berlangganan ke peristiwa yang terkait dengan order pending, cBot akan bereaksi terhadap aktivitas trading manual dan terprogram.

Ringkasan
Sebagai kesimpulan, cTrader membekali pengembang algoritma dengan arsenal operasi trading yang mengesankan yang dapat dijalankan oleh cBot. Dengan menerapkannya secara terampil, Anda dapat mengejar strategi trading yang disesuaikan dan canggih.



