Im using binance to get data about Ethereum. I did the single kLine response with an GET request to the API so I get the old data but now I want to keep the kLines and the price updating automaticly.
For this I need to connect with the Binance web socket. How do I do this? Im using Javascript.
Advertisement
Answer
This code opens a web socket connected with Binance. It receives data about (the symbol) ETH/USDT each 2 seconds (depth). Every 30 minutes the data sets variable “x” to true so you know when to add a line.
If you want to change the 30 minutes, symbol, depth or kline data you should check out the Binance api documentation on how to do it correctly.
// Symbol: ETH/USDT - Kline 30 minutes. var socket = new WebSocket('wss://stream.binance.com:9443/ws/ethusdt@kline_30m'); // When message received from web socket then... socket.onmessage = function (event) { // Easier and shorter. var data = JSON.parse(event.data); // "x" means: Is this kline closed? Return "true" if closed. Closed means new line to be added. if (data.k.x === true) { log("Add line."); // Adding a line with my custom function. addLine(data); } else { // Updating line with my custom function. updatePrice(data); } }