Here is an article on how to simplify the current Ethereum data only loading 1h klines:
Simplify the Ethereum flow data: Step by step guide
With regard to real -time market data, simplicity is key. In this article, we will show you how to optimize your Ethereum flow data only carrying the necessary 1h klines.
Why 1h Klins enough
Thanks to the large number of available tickers and markets, too many data can be impressive. However, 1h Klines provides a good balance between coverage and storage requirements. When focusing only on Top N 1h Klines on Ticker, it obtains a more detailed vision of market activity without excessive storage.
Websockts to transmit data
To simplify the flow data process, use websockets with the Ethereum supplier (for example, Binance). Websockts allows two -way communication between its application and the supplier server. This allows you to print data updates from your client (in this case, the web application) on the server.
Step by step guide
- Set your websockt connection
: Create a websockt connection with the Ethereum supplier using your API documentation.
- Define the Kline Obtain parameters: Enter tickers and time intervals for which you want to obtain klines (for example, 1h).
۳
Use the Built -in transmission options for websockts : If there are new data available, use the “onmessageto boost your customer's latest data.
۴.
Here are several sample codes in JavaScript using websocks with API Binance:
JavaScript
Const websockt = require ('ws');
Const wss = new websockt.server ({port: 8080});
// define the tickers and time intervals you want to obtain for the klines for
Const by Tikers = ['eth', 'BTC'];
CONST INTERVAL = {H: 1};
// Function to filter unnecessary data
Gettopnklines function (WS, Tickers) {
Const klines = {};
// Load the Top N Klines Ticker on the Ticker
WS.ON ('Message', (Data) => {
Const {ticker, kline} = json.pse (data);
If (! KLINES [TICKER]) {
KLINES [TICKER] = [];
}
Klines [ticker] .push (kline);
});
// filter medium values
Object.values (klines) .Foreach ((klinesarray) => {
Const Middleindex = Math.floor (klinesarray.legth / 2);
If (Middleindex> 0 && Middleindex
KLINESARRAY.SPPLUE (Middleindex, 1);
}
});
Return Object.fromenries (Object.entries (Klines) .Map ((Ticker, Array]) => [Ticker, Array]);
}
Ws.on ('error', (error) => console.error (error));
Ws.on ('close', () => console.log ('websocks connection closed'));
Wss.listen (8080, () => {
Console.log ('Server Websockt Server listens to Porte 8080');
});
`
Conclusion
You can simplify the process of obtaining Ethereum flow data without sacrificing coverage or storage requirements. This approach will help you stay organized and focused on market activity that is important for its application. Happy codification!
بدون نظر