बाइन एंडो मुद्रा वेबसॉकेट बाजार प्राप्त करने का उदाहरण - पायथन

लेखक:स्कॉटलीक, बनाया गयाः 2021-06-15 20:16:47, अद्यतन किया गयाः

एफएमजेड के साथ लगभग 2 महीने, कुछ रणनीतियों की कमाई अच्छी है, यह आवश्यक लगता है कि समुदाय के लिए एक छोटा सा योगदान करने के लिए, अब वेबसॉकेट के उदाहरणों को देखने के लिए बहुत कुछ नहीं है, एक उदाहरण के लिए योगदान करने के लिए सदस्यता लें मल्टीस्ट्रीम बहु मुद्रा वेबसॉकेट बाजार प्राप्त करें, तुलना में सरल, बाजार प्राप्त करें, लूप में बाजार प्रिंट json।

मल्टी-कॉइनसी हेजिंग लीवरेज की रणनीति में उपयोग किए जाने वाले इंटरफेस में रेस्ट की तुलना में तेजी से प्रतिक्रिया होती है, यदि एक ही समय में कई सिक्के कारोबार किए जाते हैं, तो अंतर काफी बड़ा होता है, उम्मीद है कि मदद मिलेगी।

#websocket 更新 行情
# {
#   "e":"bookTicker",     // 事件类型
#   "u":400900217,        // 更新ID
#   "E": 1568014460893,   // 事件推送时间
#   "T": 1568014460891,   // 撮合时间
#   "s":"BNBUSDT",        // 交易对
#   "b":"25.35190000",    // 买单最优挂单价格
#   "B":"31.21000000",    // 买单最优挂单数量
#   "a":"25.36520000",    // 卖单最优挂单价格
#   "A":"40.66000000"     // 卖单最优挂单数量
# }
def on_msg(msg) : #更新行情

    if msg is not None and len(msg)>0:
        bookTicker = json.loads(msg)
    else:
        # Log('book tick msg is none')
        return

    Log(bookTicker)

def main():
    SetErrorFilter("502:|503:|tcp|character|unexpected|network|timeout|WSARecv|Connect|GetAddr|no such|reset|http|received|EOF|reused|Unknown")
   
    trade_symbols = 'TRX,ZEC,DENT,BLZ,ENJ,ZIL,MANA,ONT,XMR,ICX,SC,THETA,CVC,BAT,STMX,VET,IOST,NEO,MTL,DASH,KNC,ZRX,IOTA'.split(',')

    ary_symbol_streams = []

    for i in range(len(trade_symbols)):
        symbol = trade_symbols[i].lower()
        stream_client = Dial(f"wss://fstream.binance.com/ws/{symbol}usdt@bookTicker|reconnect=true")
        ary_symbol_streams.append(stream_client)
    while (true):

        for item in ary_symbol_streams:
            #-2读取最新数据
            msg = item.read(-2)
            on_msg(msg)



अधिक

परिश्रम करनाडायल करें (("wss://stream.binance.com:9443/stream?streams=btcusdt@aggTrade/ethusdt@aggTrade/axsusdt@aggTrade/ltcusdt@aggTrade/dogeusdt@aggTradeके लिए पुनः कनेक्ट=सत्य");

स्कॉटलीकशुरुआत में यह इस तरह से लिखी गई थी, यह सुविधाजनक थी, लेकिन सभी सिक्कों के टिक एक कतार में थे, जो मेरी रणनीति के लिए बहुत अच्छा नहीं था।

घासबिनान के लिए WSS सदस्यता एक यूआरएल के साथ शुरू की जा सकती है, बीच में / कनेक्शन के साथ

वूसनकृपया बताएं कि क्या कोई आसान तरीका है कि हम 100 से अधिक पोस्ट की गई कीमतों की गहराई को वास्तविक समय में प्राप्त कर सकें?