Cara bekerja dengan WebSocket di cTrader Algo
API cTrader Algo memungkinkan trader dan pengembang untuk mengakses berbagai layanan web dan sumber daya melalui koneksi WebSocket. Protokol WebSocket lebih efisien daripada HTTP untuk akses jaringan karena lebih cepat dan mendukung transfer data real-time.
Dalam artikel ini dan video terkaitnya, Anda akan belajar cara mengirim dan menerima pesan melalui WebSocket.
Buat cBot
Dalam contoh kita, kami bermaksud untuk terhubung ke feed TraderMade dan kemudian mencetak informasi yang masuk di log cBot kita.
Pertama, kita navigasikan ke aplikasi Algo untuk membuat cBot baru. Di tab cBots, klik tombol New. Ketikkan nama untuk cBot, seperti Web Sockets Example, lalu klik Create.

Sekarang kita dapat memodifikasi kode cBot untuk tujuan kita. Mari kita mulai dengan mendefinisikan WebSocketClient baru.
1 | |
Kemudian kita menginisialisasi Uri endpoint kita, yang merupakan lokasi yang akan kita hubungi.
1 | |
Kita perlu mengedit metode OnStart(), menggunakan Uri untuk terhubung ke layanan streaming dan berlangganan ke event TextReceived. Event ini dipicu setiap kali teks mencapai aplikasi kita melalui koneksi.
1 2 3 4 5 | |
Kita ingin mencetak pesan yang diterima di TextReceived.
1 2 3 4 | |
Anda dapat menyalin kode lengkapnya di bawah ini:
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 29 30 31 32 33 34 35 36 37 | |
Klik tombol Build atau gunakan pintasan Ctrl+B untuk membangun cBot.
Klik tombol Add instance untuk cBot. Pilih opsi Locally, pilih simbol dan akun, lalu klik tombol Add instance.

Navigasikan ke tab Logs. Anda seharusnya melihat beberapa pesan cBot yang mengonfirmasi koneksi.

Berlangganan feed harga simbol
Kita kembali ke editor kode untuk cBot Web Sockets Example kita di aplikasi Algo. Di sini, kita ingin berlangganan feed harga simbol menggunakan layanan yang baru saja kita hubungi.
Tulis kode untuk mengirim pesan langganan ke layanan di metode OnStart() kita.
1 2 3 | |
Catatan
Kami mendapatkan contoh kode dan token dari situs web TraderMade.
Modifikasi perintah Print untuk mengganti tanda kurung, yang tidak dapat digunakan dalam metode Print() API.
1 | |
Terakhir, tutup koneksi di metode OnStop().
1 | |
Anda dapat menyalin kode lengkapnya di bawah ini:
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 29 30 31 32 33 34 35 36 37 38 39 40 41 | |
Bangun ulang cBot dan kemudian mulai lagi.
Navigasikan ke tab Logs seperti yang Anda lakukan sebelumnya. Sekarang, Anda seharusnya melihat harga simbol yang dialirkan secara real-time.

Artikel ini menunjukkan kepada Anda cara menggunakan WebSocket untuk mengirim dan menerima informasi atau pesan di cTrader.