Example #1
0
        public async void TickerThread(ExchangeData Data)
        {
            InProgress = true;
            using (ApiClient = new PoloniexClient(ApiKey, ApiSecret))
            {
                ApiClient.OnError += (sender, error) =>
                {
                    Data.Status   = EnumData.ExchangeStatus.異常;
                    Data.ErrorMsg = error.Message;
                };

                ApiClient.OnClose += (sender, e) => { Data.Status = EnumData.ExchangeStatus.停止; };
                //USDT_BTC
                var SocketResult = ApiClient.SubscribeTicker(Data.ExchangeType, (data) =>
                {
                    Data.Ask        = data.Data.Ask;
                    Data.Bid        = data.Data.Bid;
                    Data.UpdateTime = DateTime.UtcNow;
                });

                if (!SocketResult.Status)
                {
                    throw new Exception(SocketResult.Message);
                }

                while (InProgress)
                {
                    Thread.Sleep(500);
                }

                ApiClient.UnsubscribeFromStream(SocketResult.Data);
            }
        }