Cara bekerja dengan WebSocket dalam cTrader Algo
API cTrader Algo membolehkan pedagang dan pembangun mengakses pelbagai perkhidmatan dan sumber web melalui sambungan WebSocket. Protokol WebSocket lebih cekap daripada HTTP untuk akses rangkaian kerana ia lebih pantas dan menyokong pemindahan data masa nyata.
Dalam artikel ini dan video yang berkaitan, anda akan belajar cara menghantar dan menerima mesej melalui WebSocket.
Cipta cBot
Dalam contoh kami, kami bercadang untuk menyambung ke suapan TraderMade dan kemudian mencetak maklumat yang masuk dalam log cBot kami.
Pertama, kami navigasi ke aplikasi Algo untuk mencipta cBot baharu. Dalam tab cBots, klik butang New. Taip nama untuk cBot, seperti Contoh Web Socket, dan kemudian klik Create.

Kita kini boleh mengubah suai kod cBot untuk tujuan kita. Mari mulakan dengan menentukan WebSocketClient baharu.
1 | |
Kemudian kita memulakan Uri titik akhir kita, iaitu lokasi yang akan kita sambungkan.
1 | |
Kita perlu mengedit kaedah OnStart(), menggunakan Uri untuk menyambung ke perkhidmatan penstriman dan melanggan acara TextReceived. Acara ini dibangkitkan apabila teks sampai ke aplikasi kita melalui sambungan.
1 2 3 4 5 | |
Kita mahu mencetak mesej yang diterima dalam TextReceived.
1 2 3 4 | |
Anda boleh menyalin kod penuh di bawah:
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 butang Build atau gunakan pintasan Ctrl+B untuk membina cBot.
Klik butang Add instance untuk cBot. Pilih pilihan Locally, pilih simbol dan akaun, dan kemudian klik butang Add instance.

Navigasi ke tab Logs. Anda sepatutnya melihat beberapa mesej cBot yang mengesahkan sambungan.

Langgan suapan harga simbol
Kita kembali ke penyunting kod untuk cBot Contoh Web Socket kita dalam aplikasi Algo. Di sini, kita mahu melanggan suapan harga simbol menggunakan perkhidmatan yang baru-baru ini kita sambungkan.
Tulis kod untuk menghantar mesej langganan kepada perkhidmatan dalam kaedah OnStart() kita.
1 2 3 | |
Nota
Kami memperoleh sampel kod dan token dari laman web TraderMade.
Ubah suai arahan Print untuk menggantikan kurungan, yang tidak boleh digunakan dalam kaedah API Print().
1 | |
Akhir sekali, tutup sambungan dalam kaedah OnStop().
1 | |
Anda boleh menyalin kod penuh di bawah:
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 | |
Bina semula cBot dan kemudian mulakannya semula.
Navigasi ke tab Logs seperti yang anda lakukan sebelum ini. Sekarang, anda sepatutnya melihat harga simbol distrimkan dalam masa nyata.

Artikel ini menunjukkan kepada anda cara menggunakan WebSocket untuk menghantar dan menerima maklumat atau mesej dalam cTrader.