Type/to search

Pilote d'accélérateur WebSocket

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

Une bibliothèque de modèles accélérée basée sur WebSocket

décrire:

Cette stratégie permet d'optimiser le traitement des données en temps réel de plusieurs bourses grâce à une connexion WebSocket multi-threading. L'utilisation de la connexion WebSocket dans la plate-forme de trading quantifiée FMZ pour obtenir des données de livraison et de transaction en profondeur réduit considérablement le délai d'obtention des données de marché et améliore les performances du système de trading haute fréquence.

Caractéristiques principales :

  • Prise en charge de plusieurs échangesCette stratégie prend en charge les connexions WebSocket de plusieurs échanges tels que Binance, OKX, Bybit et Bitget, offrant un flux de données plus rapide et plus stable que les sondages REST API traditionnels.
  • Abonnement personnalisable:Permet l'abonnement à des canaux de marché spécifiques (tels que la profondeur, le trading, etc.) et le traitement efficace des données reçues pour une utilisation immédiate par les stratégies de trading.
  • Gestion avancée des erreurs:Mécanisme intégré de suivi des erreurs et de reconnexion WebSocket pour garantir la fiabilité et la continuité du flux de données.
  • Vérification CRC32Pour OKX et d'autres plateformes, la fonctionnalité de vérification CRC32 est intégrée pour garantir l'intégrité des données du carnet de commandes reçues.

Cette solution basée sur WebSocket remplace les sondages API traditionnels et s'adresse aux traders qui ont besoin de minimiser les délais et de maximiser la rapidité de réponse du marché.

Instructions:

  1. initialisation:utiliser $.setupWebsocket() Initialisez la connexion WebSocket à l’échange cible.
  2. abonnement:Le système s'abonnera automatiquement aux canaux pertinents (tels que la profondeur, le trading, etc.) pour les produits que vous négociez.
  3. Acquisition de données: En appelantGetDepth() et GetTrades() Fonction, utilise automatiquement les données WebSocket en temps réel pour renvoyer la profondeur du marché et les enregistrements de transactions.
  4. Gestion des erreurs:La politique inclut un mécanisme de suivi qui enregistre les erreurs de connexion et de données et tente automatiquement de se reconnecter si la connexion est perdue.

Ce script est conçu pour fonctionner sur la plate-forme de quantification FMZ, offrant un accès rapide, fiable et extensible aux données de marché pour plusieurs échanges.

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)