/// <summary>
        /// cross margin sub orders
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void CrossSubOrders(string contractCode, _OnSubOrdersResponse callbackFun, string cid = _DEFAULT_CID)
        {
            string   ch     = $"orders_cross.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "sub", topic = ch
            };

            Sub(JsonConvert.SerializeObject(opData), ch, callbackFun, typeof(SubOrdersResponse));
        }
        /// <summary>
        /// isolated margin sub trigger order
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void IsolatedSubTriggerOrder(string contractCode, _OnSubTriggerOrderResponse callbackFun, string cid = _DEFAULT_CID)
        {
            string   ch     = $"trigger_order.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "sub", cid = cid, topic = ch
            };

            Sub(JsonConvert.SerializeObject(opData), ch, callbackFun, typeof(SubTriggerOrderResponse));
        }
        /// <summary>
        /// isolated margin unsub positions
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="cid"></param>
        public void IsolatedUnsubPositions(string contractCode, string cid = _DEFAULT_CID)
        {
            string   ch     = $"positions.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };

            Unsub(JsonConvert.SerializeObject(opData), ch);
        }
        /// <summary>
        /// isolated margin sub positions
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void IsolatedSubPositions(string contractCode, _OnSubPositionsResponse callbackFun, string cid = _DEFAULT_CID)
        {
            string   ch     = $"positions.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "sub", topic = ch
            };

            Sub(JsonConvert.SerializeObject(opData), ch, callbackFun, typeof(SubPositionsResponse));
        }
        /// <summary>
        /// cross margin unsub orders
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="cid"></param>
        public void CrossUnsubOrders(string contractCode, string cid = _DEFAULT_CID)
        {
            string   ch     = $"orders_cross.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };

            Unsub(JsonConvert.SerializeObject(opData), ch);
        }
        /// <summary>
        /// unsub accounts
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="cid"></param>
        public void UnsubAccounts(string contractCode, string cid = _DEFAULT_CID)
        {
            string   ch     = $"accounts.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };

            Unsub(JsonConvert.SerializeObject(opData), ch);
        }
        /// <summary>
        /// cross margin sub accounts
        /// </summary>
        /// <param name="marginAccount"></param>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void CrossSubAcounts(string marginAccount, _OnSubAccountsResponse callbackFun, string cid = _DEFAULT_CID)
        {
            string   ch     = $"accounts_cross.{marginAccount}";
            WSOpData opData = new WSOpData {
                op = "sub", cid = cid, topic = ch
            };

            Sub(JsonConvert.SerializeObject(opData), ch, callbackFun, typeof(SubAccountsResponse));
        }
Exemple #8
0
        /// <summary>
        /// unsub contract info
        /// </summary>
        /// <param name="symbol"></param>
        /// <param name="cid"></param>
        public void UnsubContractInfo(string symbol, string cid = _DEFAULT_CID)
        {
            string   ch     = $"public.{symbol}.contract_info";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };

            Unsub(JsonConvert.SerializeObject(opData), ch);
        }
        /// <summary>
        /// sub accounts
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void SubAcounts(string contractCode, _OnSubAccountsResponse callbackFun, string cid = _DEFAULT_CID)
        {
            string   ch     = $"accounts.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "sub", cid = cid, topic = ch
            };

            Sub(JsonConvert.SerializeObject(opData), ch, callbackFun, typeof(SubAccountsResponse));
        }
Exemple #10
0
        /// <summary>
        /// sub orders
        /// </summary>
        /// <param name="symbol"></param>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void SubOrders(string symbol, _OnSubOrdersResponse callbackFun, string cid = _DEFAULT_CID)
        {
            string   ch     = $"orders.{symbol}";
            WSOpData opData = new WSOpData {
                op = "sub", topic = ch
            };

            Sub(JsonConvert.SerializeObject(opData), ch, callbackFun, typeof(SubOrdersResponse));
        }
Exemple #11
0
        /// <summary>
        /// unsub orders
        /// </summary>
        /// <param name="symbol"></param>
        /// <param name="cid"></param>
        public void UnsubOrders(string symbol, string cid = _DEFAULT_CID)
        {
            string   ch     = $"orders.{symbol}";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };

            Unsub(JsonConvert.SerializeObject(opData), ch);
        }
        /// <summary>
        /// cross margin unsub accounts
        /// </summary>
        /// <param name="marginAccount"></param>
        /// <param name="cid"></param>
        public void CrossUnsubAccounts(string marginAccount, string cid = _DEFAULT_CID)
        {
            string   ch     = $"accounts_cross.{marginAccount}";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };

            Unsub(JsonConvert.SerializeObject(opData), ch);
        }
        /// <summary>
        /// unsub funding rate
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="cid"></param>
        public void UnsubFundingRate(string contractCode, string cid = _DEFAULT_CID)
        {
            string   ch     = $"public.{contractCode}.funding_rate";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };

            Unsub(JsonConvert.SerializeObject(opData), ch);
        }
        /// <summary>
        /// unsub trigger order
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="cid"></param>
        public void UnsubTriggerOrder(string contractCode, string cid = _DEFAULT_CID)
        {
            string   ch     = $"trigger_order.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };

            Unsub(JsonConvert.SerializeObject(opData), ch);
        }
        /// <summary>
        /// sub funding rate
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void SubFundingRate(string contractCode, _OnSubFundingRateResponse callbackFun, string cid = _DEFAULT_CID)
        {
            string   ch     = $"public.{contractCode}.funding_rate";
            WSOpData opData = new WSOpData {
                op = "sub", cid = cid, topic = ch
            };

            Sub(JsonConvert.SerializeObject(opData), ch, callbackFun, typeof(SubFundingRateResponse));
        }
        /// <summary>
        /// unsub liquidation orders
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="cid"></param>
        public void UnsubLiquidationOrders(string contractCode, string cid = _DEFAULT_CID)
        {
            string   ch     = $"public.{contractCode}.liquidation_orders";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };

            Unsub(JsonConvert.SerializeObject(opData), ch);
        }
        /// <summary>
        /// sub liquidation orders
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void SubLiquidationOrders(string contractCode, _OnSubLiquidationOrdersResponse callbackFun, string cid = _DEFAULT_CID)
        {
            string   ch     = $"public.{contractCode}.liquidation_orders";
            WSOpData opData = new WSOpData {
                op = "sub", topic = ch
            };

            Sub(JsonConvert.SerializeObject(opData), ch, callbackFun, typeof(SubLiquidationOrdersResponse));
        }
Exemple #18
0
        /// <summary>
        /// sub contract info
        /// </summary>
        /// <param name="symbol"></param>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void SubContractInfo(string symbol, _OnSubContractInfoResponse callbackFun, string cid = _DEFAULT_CID)
        {
            string   ch     = $"public.{symbol}.contract_info";
            WSOpData opData = new WSOpData {
                op = "sub", cid = cid, topic = ch
            };

            Sub(JsonConvert.SerializeObject(opData), ch, callbackFun, typeof(SubContractInfoResponse));
        }
        /// <summary>
        /// unsub match orders
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="cid"></param>
        public void UnsubMathOrders(string contractCode, string cid = _DEFAULT_CID)
        {
            contractCode = contractCode.ToLower();
            string   ch     = $"matchOrders.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };

            Unsub(JsonConvert.SerializeObject(opData), ch);
        }
        /// <summary>
        /// sub heart beat
        /// </summary>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void SubHeartBeat(_OnSubHeartBeatResponse callbackFun, string cid = _DEFAULT_CID)
        {
            string   ch      = $"public.swap.heartbeat";
            WSOpData subData = new WSOpData()
            {
                op = "sub", topic = ch, cid = cid
            };

            Sub(JsonConvert.SerializeObject(subData), ch, callbackFun, typeof(SubHeartBeatResponse));
        }
        /// <summary>
        /// sub match orders
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void SubMatchOrders(string contractCode, _OnSubMatchOrdersResponse callbackFun, string cid = _DEFAULT_CID)
        {
            contractCode = contractCode.ToLower();
            string   ch     = $"matchOrders.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "sub", cid = cid, topic = ch
            };

            Sub(JsonConvert.SerializeObject(opData), ch, callbackFun, typeof(SubOrdersResponse));
        }
        /// <summary>
        /// sub heart beat
        /// </summary>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void SubHeartBeat(_OnSubHeartBeatResponse callbackFun, string cid = WebSocketOp.DEFAULT_ID)
        {
            string   ch      = $"public.linear-swap.heartbeat";
            WSOpData subData = new WSOpData()
            {
                op = "sub", topic = ch, cid = cid
            };
            string sub_str = JsonConvert.SerializeObject(subData);

            WebSocketOp wsop = new WebSocketOp(this.path, sub_str, callbackFun, typeof(SubHeartBeatResponse), true, this.host);

            wsop.Connect();
        }
Exemple #23
0
        /// <summary>
        /// cross margin unsub accounts
        /// </summary>
        /// <param name="marginAccount"></param>
        /// <param name="cid"></param>
        public void CrossUnsubAccounts(string marginAccount, string cid = WebSocketOp.DEFAULT_ID)
        {
            string   ch     = $"accounts_cross.{marginAccount}";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };
            string unsub_str = JsonConvert.SerializeObject(opData);

            if (!allWsop.ContainsKey(ch))
            {
                return;
            }
            allWsop[ch].SendMsg(unsub_str);
            allWsop.Remove(ch);
        }
Exemple #24
0
        /// <summary>
        /// unsub funding rate
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="cid"></param>
        public void UnsubFundingRate(string contractCode, string cid = WebSocketOp.DEFAULT_ID)
        {
            string   ch     = $"public.{contractCode}.funding_rate";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };
            string unsub_str = JsonConvert.SerializeObject(opData);

            if (!allWsop.ContainsKey(ch))
            {
                return;
            }
            allWsop[ch].SendMsg(unsub_str);
            allWsop.Remove(ch);
        }
Exemple #25
0
        /// <summary>
        /// cross margin unsub trigger order
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="cid"></param>
        public void CrossUnsubTriggerOrder(string contractCode, string cid = WebSocketOp.DEFAULT_ID)
        {
            string   ch     = $"trigger_order_cross.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };
            string unsub_str = JsonConvert.SerializeObject(opData);

            if (!allWsop.ContainsKey(ch))
            {
                return;
            }
            allWsop[ch].SendMsg(unsub_str);
            allWsop.Remove(ch);
        }
Exemple #26
0
        /// <summary>
        /// unsub contract info
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="cid"></param>
        /// <param name="businessType"></param>
        public void UnsubContractInfo(string contractCode, string cid = WebSocketOp.DEFAULT_ID, string businessType = null)
        {
            string   ch     = $"public.{contractCode}.contract_info";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch, businessType = businessType
            };
            string unsub_str = JsonConvert.SerializeObject(opData);

            if (!allWsop.ContainsKey(ch))
            {
                return;
            }
            allWsop[ch].SendMsg(unsub_str);
            allWsop.Remove(ch);
        }
        /// <summary>
        /// unsub liquidation orders
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="cid"></param>
        /// <param name="businessType"></param>
        /// <param name="tradePartition"></param>
        public void UnsubLiquidationOrders(string contractCode, string cid = WebSocketOp.DEFAULT_ID,
                                           string businessType             = null, string tradePartition = null)
        {
            string   ch     = $"public.{contractCode}.liquidation_orders";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch, businessType = businessType, tradePartition = tradePartition
            };
            string unsub_str = JsonConvert.SerializeObject(opData);

            if (!allWsop.ContainsKey(ch))
            {
                return;
            }
            allWsop[ch].SendMsg(unsub_str);
            allWsop.Remove(ch);
        }
Exemple #28
0
        /// <summary>
        /// isolated margin unsub match orders
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="cid"></param>
        public void IsolatedUnsubMathOrders(string contractCode, string cid = WebSocketOp.DEFAULT_ID)
        {
            contractCode = contractCode.ToLower();
            string   ch     = $"matchOrders.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "unsub", cid = cid, topic = ch
            };
            string unsub_str = JsonConvert.SerializeObject(opData);

            if (!allWsop.ContainsKey(ch))
            {
                return;
            }
            allWsop[ch].SendMsg(unsub_str);
            allWsop.Remove(ch);
        }
Exemple #29
0
        /// <summary>
        /// cross margin sub accounts
        /// </summary>
        /// <param name="marginAccount"></param>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void CrossSubAcounts(string marginAccount, _OnCrossSubAccountsResponse callbackFun, string cid = WebSocketOp.DEFAULT_ID)
        {
            string   ch     = $"accounts_cross.{marginAccount}";
            WSOpData opData = new WSOpData {
                op = "sub", cid = cid, topic = ch
            };
            string sub_str = JsonConvert.SerializeObject(opData);

            WebSocketOp wsop = new WebSocketOp(this.path, sub_str, callbackFun, typeof(CrossSubAccountsResponse), true, this.host,
                                               this.accessKey, this.secretKey);

            wsop.Connect();
            if (!allWsop.ContainsKey(ch))
            {
                allWsop.Add(ch, wsop);
            }
        }
Exemple #30
0
        /// <summary>
        /// cross margin sub orders
        /// </summary>
        /// <param name="contractCode"></param>
        /// <param name="callbackFun"></param>
        /// <param name="cid"></param>
        public void CrossSubOrders(string contractCode, _OnSubOrdersResponse callbackFun, string cid = WebSocketOp.DEFAULT_ID)
        {
            string   ch     = $"orders_cross.{contractCode}";
            WSOpData opData = new WSOpData {
                op = "sub", topic = ch
            };
            string sub_str = JsonConvert.SerializeObject(opData);

            WebSocketOp wsop = new WebSocketOp(this.path, sub_str, callbackFun, typeof(SubOrdersResponse), true, this.host,
                                               this.accessKey, this.secretKey);

            wsop.Connect();
            if (!allWsop.ContainsKey(ch))
            {
                allWsop.Add(ch, wsop);
            }
        }