Type/to search

Драйвер ускорителя WebSocket

Template
Created: 2024-10-24 18:11:09
Last modified: 6 months ago
11
Follow
651
Followers

Ускоренная класса шаблонов на основе WebSocket

описывать:

Эта стратегия оптимизирует обработку данных в реальном времени на нескольких биржах с помощью многопоточного подключения к WebSocket. Использование подключения к WebSocket для получения глубокой книги заказов и данных о сделках на квантированной торговой платформе FMZ значительно снижает задержку получения рыночных данных и повышает производительность системы высокочастотных торгов.

Основные характеристики:

  • Поддержка нескольких биржЭта стратегия поддерживает WebSocket-соединение с несколькими биржами, такими как Binance, OKX, Bybit и Bitget, обеспечивая более быстрый и стабильный поток данных, чем традиционные опросы REST API.
  • Настраиваемая подписка: Позволяет подписаться на определенные рыночные каналы (такие как глубина, торговля и т. д.) и эффективно обрабатывать полученные данные для немедленного использования в торговых стратегиях.
  • Расширенная обработка ошибок: Встроенный механизм отслеживания ошибок и повторного подключения WebSocket для обеспечения надежности и непрерывности потока данных.
  • CRC32 проверкаДля OKX и других бирж интегрированы функции CRC32 для проверки целостности полученных данных книг заказов.

Это решение на основе WebSocket заменяет традиционные API-опросы и подходит для трейдеров, которым требуется минимизация задержек и максимизация скорости отклика рынка.

Как добраться:

  1. инициализация:использовать $.setupWebsocket() Инициализируйте соединение WebSocket с целевым обменом.
  2. подписка: Система автоматически подпишется на соответствующие каналы (такие как глубина, торговля и т. д.) для продуктов, которыми вы торгуете.
  3. Сбор данных: ПозвонивGetDepth() и GetTrades() Функция автоматически использует данные WebSocket в режиме реального времени для возврата глубины рынка и записей о транзакциях.
  4. Обработка ошибок: Политика включает механизм отслеживания, который регистрирует ошибки подключения и данных и автоматически пытается восстановить подключение в случае потери соединения.

Сценарий предназначен для работы на FMZ Quantum Platform, обеспечивая быстрый, надежный и масштабируемый доступ к рыночным данным для нескольких бирж.

javascript
function main() { $.setupWebsocket() while (true) { exchanges.map(e=>{ Log(e.GetName(), e.GetDepth()) Log(e.GetName(), e.GetTrades()) // support custom and auto subsribe Eg: e.GetDepth('ETH_USDT') }) EventLoop(100) // trigger by websocket or use Sleep control delay } }
Source
JavaScript
// @ts-check

$.setupWebsocket = function (main_exchanges) {
    let crc32 = function (r) {
        for (var a, o = [], c = 0; c < 256; c++) {
            a = c;
            for (var f = 0; f < 8; f++) a = 1 & a ? 3988292384 ^ a >>> 1 : a >>> 1;
            o[c] = a
        }
        for (var n = -1, t = 0; t < r.length; t++) n = n >>> 8 ^ o[255 & (n ^ r.charCodeAt(t))];
        return (-1 ^ n) >>> 0
    }
Comment
All comments (4)

    Warning: __Thread is deprecated. Please use threading.Thread instead.
    麻烦能否更新到threading.Thread的版本?

    6 months ago

    已更

    6 months ago

    大佬动作好快,能否加上获取K线的代码呢?感激不尽!

    6 months ago

    K线没有做websocket这个完全没必要最后一根闭合了才生效

    6 months ago
  • 1
iPhone Download
Forums
PINE Language
© 2015 - ∞ INVENTOR PTE LTD (SG)