Deribit交易所 websocket API 连接范例

Posted botvsing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Deribit交易所 websocket API 连接范例相关的知识,希望对你有一定的参考价值。

Deribit websocket API 连接范例,使用javascript语言,策略运行在FMZ发明者量化平台。

源码地址:https://www.fmz.com/strategy/147765

 

var client = null
var deribitAcc =                                // 可以设置个全局对象保存 token 

function WS_GetAccount()                         // 获取账户 某个币种 的资产信息
    var msg = 
        "jsonrpc": "2.0",
        "id": 2515,
        "method": "private/get_account_summary",
        "params": 
            "currency": "ETH",
            "extended": true
        
    

    client.write(JSON.stringify(msg))
    var ret = client.read()
    Log(ret, "#FF0000")


function WS_GetToken()                           // 认证 ,并且获取 token 
    var msg = 
        "jsonrpc": "2.0",
        "id": 9929,
        "method": "public/auth",
        "params": 
            "grant_type": "client_credentials",
            "client_id": "XXXXXXX",                             // 申请 API KEY 时获取
            "client_secret": "XXXXXXXXXXXXXXXXXXXXXXXXXX"       // 申请 API KEY 时获取
        
    
    while (1) 
        client.write(JSON.stringify(msg))
        var ret = client.read()
        try 
            var jsonObj = JSON.parse(ret)
            if (jsonObj) 
                deribitAcc.accessToken = jsonObj.result.access_token
                deribitAcc.refToken = jsonObj.result.refresh_token
                break
            
         catch (e) 
            Log("error:", e)
        
    
    Log("更新 deribitAcc accessToken , refToken:", deribitAcc)


function WS_Depth()                                      // 访问 get_order_book 公共 频道,获取 订单薄深度数据
    var msg = 
        "jsonrpc": "2.0",
        "id": 8772,
        "method": "public/get_order_book",
        "params": 
            "instrument_name": "BTC-PERPETUAL",           // 指定,获取 BTC 永续合约的深度数据
            "depth": 5
        
    

    client.write(JSON.stringify(msg))
    var ret = client.read()
    Log("depth : ", ret)


function main() 
    client = Dial("wss://www.deribit.com/ws/api/v2")
    WS_GetToken()

    WS_GetAccount()
    WS_Depth()



function onexit() 
    Log("关闭 ws 连接")
    client.close()

  

以上是关于Deribit交易所 websocket API 连接范例的主要内容,如果未能解决你的问题,请参考以下文章

如何将 websocket 推送 api 输出写入文本文件?

通过 websocket 问题进行币安流交易

使用 Python 通过 WebSockets 访问 API

WebSocket API Reference

Netty+WebSocket 获取火币交易所数据项目

如果使用 CloudFlare,如何提高 API 响应速度