Ejemplo n.º 1
0
        public static PublicMarketDetail FromString(string strResponseData)
        {
            Json.Dictionary dict = Json.ToDictionary(strResponseData);
            if (dict == null || dict.Count <= 0)
            {
                return(null);
            }

            PublicMarketDetail publicMarketDetail = new PublicMarketDetail();

            publicMarketDetail.items = new System.Collections.Generic.Dictionary <string, Item>();
            foreach (var kv in dict)
            {
                Json.Dictionary detailItemDict = Json.ToDictionary(kv.Value);

                Item item = new Item();
                item.id            = Int64.Parse(detailItemDict["id"]);
                item.baseVolume    = double.Parse(detailItemDict["baseVolume"]);
                item.quoteVolume   = double.Parse(detailItemDict["quoteVolume"]);
                item.percentChange = double.Parse(detailItemDict["percentChange"]);
                item.last          = double.Parse(detailItemDict["last"]);
                item.high24hr      = double.Parse(detailItemDict["high24hr"]);
                item.low24hr       = double.Parse(detailItemDict["low24hr"]);
                item.highestBid    = double.Parse(detailItemDict["highestBid"]);
                item.lowestAsk     = double.Parse(detailItemDict["lowestAsk"]);
                publicMarketDetail.items.Add(kv.Key, item);
            }

            return(publicMarketDetail);
        }
Ejemplo n.º 2
0
        public static MatchResults FromString(string strResponseData)
        {
            Json.Array array = Json.ToArray(strResponseData);
            if (array == null)
            {
                return(null);
            }

            MatchResults matchResults = new MatchResults();

            matchResults.items = new System.Collections.Generic.List <Item>();
            foreach (string dataItem in array)
            {
                Json.Dictionary dataItemDict = Json.ToDictionary(dataItem);

                Item item = new Item();
                item.id      = long.Parse(Json.GetAt(dataItemDict, "id"));
                item.price   = double.Parse(Json.GetAt(dataItemDict, "price"));
                item.volume  = double.Parse(Json.GetAt(dataItemDict, "volume"));
                item.fee     = double.Parse(Json.GetAt(dataItemDict, "fee"));
                item.orderId = long.Parse(Json.GetAt(dataItemDict, "orderId"));
                item.symbol  = Json.GetAt(dataItemDict, "symbol");
                item.type    = Json.GetAt(dataItemDict, "type");
                item.status  = int.Parse(Json.GetAt(dataItemDict, "status"));
                item.mtime   = Int64.Parse(Json.GetAt(dataItemDict, "mtime"));
                item.source  = Json.GetAt(dataItemDict, "source");

                matchResults.items.Add(item);
            }

            return(matchResults);
        }
Ejemplo n.º 3
0
        public Int64 mtime        = 0;      // true   最后成交时间

        public static OrderDetail FromString(string strResponseData)
        {
            Json.Dictionary dict = Json.ToDictionary(strResponseData);
            if (dict == null)
            {
                return(null);
            }

            OrderDetail orderDetail = new OrderDetail();

            orderDetail.id      = long.Parse(Json.GetAt(dict, "id"));
            orderDetail.user_id = long.Parse(Json.GetAt(dict, "user_id"));
            orderDetail.volume  = double.Parse(Json.GetAt(dict, "volume"));
            double.TryParse(Json.GetAt(dict, "deal_volume"), out orderDetail.deal_volume);
            orderDetail.deal_money = double.Parse(Json.GetAt(dict, "deal_money"));
            orderDetail.fee        = double.Parse(Json.GetAt(dict, "fee"));
            orderDetail.price      = double.Parse(Json.GetAt(dict, "price"));
            double.TryParse(Json.GetAt(dict, "avg_price"), out orderDetail.avg_price);
            int.TryParse(Json.GetAt(dict, "status"), out orderDetail.status);
            orderDetail.type   = Json.GetAt(dict, "type");
            orderDetail.source = int.Parse(Json.GetAt(dict, "source"));
            orderDetail.symbol = Json.GetAt(dict, "symbol");
            orderDetail.ctime  = Int64.Parse(Json.GetAt(dict, "ctime"));
            orderDetail.mtime  = Int64.Parse(Json.GetAt(dict, "mtime"));

            return(orderDetail);
        }
Ejemplo n.º 4
0
        public static MakeDetail FromString(string strResponseData)
        {
            Json.Array array = Json.ToArray(strResponseData);
            if (array == null)
            {
                return(null);
            }

            MakeDetail makeDetail = new MakeDetail();

            makeDetail.items = new System.Collections.Generic.List <Item>();
            foreach (string dataItem in array)
            {
                Json.Dictionary dataItemDict = Json.ToDictionary(dataItem);

                Item item = new Item();
                item.id      = long.Parse(dataItemDict["id"]);
                item.volume  = double.Parse(dataItemDict["volume"]);
                item.price   = double.Parse(dataItemDict["price"]);
                item.symbol  = dataItemDict["symbol"];
                item.type    = dataItemDict["type"];
                item.source  = dataItemDict["source"];
                item.orderId = long.Parse(dataItemDict["orderId"]);
                long.TryParse(Json.GetAt(dataItemDict, "bid_user_id"), out item.bid_user_id);
                long.TryParse(Json.GetAt(dataItemDict, "ask_user_id"), out item.ask_user_id);
                double.TryParse(Json.GetAt(dataItemDict, "buy_fee"), out item.buy_fee);
                double.TryParse(Json.GetAt(dataItemDict, "sell_fee"), out item.sell_fee);
                item.created = Int64.Parse(dataItemDict["created"]);

                makeDetail.items.Add(item);
            }

            return(makeDetail);
        }
Ejemplo n.º 5
0
        public Int64 ts      = 0;       // 数据产生时间,单位:毫秒

        public static MarketDetail FromString(string strResponseData)
        {
            Json.Dictionary dict = Json.ToDictionary(strResponseData);
            if (dict == null)
            {
                return(null);
            }

            MarketDetail marketDetail = new MarketDetail();

            marketDetail.symbol = dict["symbol"];
            if (string.IsNullOrEmpty(marketDetail.symbol))
            {
                return(null);
            }

            Json.Dictionary trade_ticker_data = Json.ToDictionary(Json.GetAt(dict, "trade_ticker_data"));
            marketDetail.ts = Int64.Parse(trade_ticker_data["ts"]);

            Json.Dictionary tick = Json.ToDictionary(trade_ticker_data["tick"]);
            marketDetail.amount = double.Parse(tick["amount"]);
            marketDetail.vol    = double.Parse(tick["vol"]);
            marketDetail.high   = double.Parse(tick["high"]);
            marketDetail.low    = double.Parse(tick["low"]);
            marketDetail.rose   = double.Parse(tick["rose"]);
            marketDetail.close  = double.Parse(tick["close"]);
            marketDetail.open   = double.Parse(tick["open"]);

            return(marketDetail);
        }
Ejemplo n.º 6
0
        public static Balance FromString(string strResponseData)
        {
            Json.Array array = Json.ToArray(strResponseData);
            if (array == null)
            {
                return(null);
            }

            Balance balance = new Balance();

            if (array.Count > 0)
            {
                balance.items = new System.Collections.Generic.List <Item>();
                for (int i = 0; i < array.Count; i++)
                {
                    Item            item    = new Item();
                    string          strItem = Json.GetAt(array, i);
                    Json.Dictionary dict    = Json.ToDictionary(strItem);
                    item.coin   = Json.GetAt(dict, "coin");
                    item.normal = Convert.ToDouble(Json.GetAt(dict, "normal"));
                    item.locK   = Convert.ToDouble(Json.GetAt(dict, "lock"));
                    balance.items.Add(item);
                }
            }

            return(balance);
        }
Ejemplo n.º 7
0
        public Int64 ts = 0;                                       // 消息生成时间,单位:毫秒

        public static MarketDepth FromString(string strResponseData)
        {
            Json.Dictionary dict = Json.ToDictionary(strResponseData);
            if (dict == null)
            {
                return(null);
            }

            MarketDepth marketDepth = new MarketDepth();

            marketDepth.symbol = dict["symbol"];
            if (string.IsNullOrEmpty(marketDepth.symbol))
            {
                return(null);
            }

            Json.Dictionary depth_data = Json.ToDictionary(Json.GetAt(dict, "depth_data"));
            marketDepth.ts = Int64.Parse(depth_data["ts"]);

            Json.Dictionary tick = Json.ToDictionary(depth_data["tick"]);
            Json.Array      buys = Json.ToArray(tick["buys"]);
            Json.Array      asks = Json.ToArray(tick["asks"]);
            foreach (string buyItem in buys)
            {
                Json.Array buyItemArray = Json.ToArray(buyItem);
                Item       item         = new Item();
                item.price  = double.Parse(buyItemArray[0]);
                item.amount = double.Parse(buyItemArray[1]);

                if (marketDepth.buys == null)
                {
                    marketDepth.buys = new System.Collections.Generic.List <Item>();
                }

                marketDepth.buys.Add(item);
            }
            foreach (string askItem in asks)
            {
                Json.Array askItemArray = Json.ToArray(askItem);
                Item       item         = new Item();
                item.price  = double.Parse(askItemArray[0]);
                item.amount = double.Parse(askItemArray[1]);

                if (marketDepth.asks == null)
                {
                    marketDepth.asks = new System.Collections.Generic.List <Item>();
                }

                marketDepth.asks.Add(item);
            }

            return(marketDepth);
        }
Ejemplo n.º 8
0
        public static Currencys FromString(string strResponseData)
        {
            Json.Dictionary dict = Json.ToDictionary(strResponseData);
            if (dict == null)
            {
                return(null);
            }

            Currencys currencys = new Currencys();

            foreach (var part in dict)
            {
                Partition partition = new Partition();
                partition.name = part.Key;
                Json.Array array = Json.ToArray(part.Value);
                if (array != null)
                {
                    partition.items = new System.Collections.Generic.List <Currency>();
                    foreach (var it in array)
                    {
                        Json.Dictionary dictItem = Json.ToDictionary(it);
                        Currency        item     = new Currency();
                        item.baseCurrency    = Json.GetAt(dictItem, "baseCurrency");
                        item.quoteCurrency   = Json.GetAt(dictItem, "quoteCurrency");
                        item.pricePrecision  = Convert.ToInt32(Json.GetAt(dictItem, "pricePrecision"));
                        item.amountPrecision = Convert.ToInt32(Json.GetAt(dictItem, "amountPrecision"));
                        item.withdrawFeeMin  = Convert.ToDouble(Json.GetAt(dictItem, "withdrawFeeMin"));
                        item.withdrawFeeMax  = Convert.ToDouble(Json.GetAt(dictItem, "withdrawFeeMax"));
                        item.withdrawOneMin  = Convert.ToDouble(Json.GetAt(dictItem, "withdrawOneMin"));
                        item.withdrawOneMax  = Convert.ToDouble(Json.GetAt(dictItem, "withdrawOneMax"));
                        Json.Dictionary dictDS = Json.ToDictionary(Json.GetAt(dictItem, "depthSelect"));
                        item.depthSelect       = new Currency.DepthSelect();
                        item.depthSelect.step0 = Convert.ToDouble(Json.GetAt(dictDS, "step0"));
                        item.depthSelect.step1 = Convert.ToDouble(Json.GetAt(dictDS, "step1"));
                        item.depthSelect.step2 = Convert.ToDouble(Json.GetAt(dictDS, "step2"));
                        partition.items.Add(item);
                    }
                }

                if (currencys.partitions == null)
                {
                    currencys.partitions = new System.Collections.Generic.List <Partition>();
                }

                currencys.partitions.Add(partition);
            }

            return(currencys);
        }
Ejemplo n.º 9
0
        public static Response FromString(string strResponse)
        {
            Json.Dictionary dict = Json.ToDictionary(strResponse);
            if (dict == null)
            {
                return(null);
            }

            Response res = new Response();

            res.code = Json.GetAt(dict, "code");
            res.msg  = Json.GetAt(dict, "msg");
            res.data = Json.GetAt(dict, "data");
            return(res);
        }
Ejemplo n.º 10
0
        public static Order FromString(string strResponseData)
        {
            Json.Dictionary dict = Json.ToDictionary(strResponseData);
            if (dict == null)
            {
                return(null);
            }

            Order order = new Order();

            if (!long.TryParse(Json.GetAt(dict, "order_id"), out order.order_id))
            {
                return(null);
            }

            return(order);
        }
Ejemplo n.º 11
0
        public static MarketTrade FromString(string strResponseData)
        {
            Json.Dictionary dict = Json.ToDictionary(strResponseData);
            if (dict == null)
            {
                return(null);
            }

            MarketTrade marketTrade = new MarketTrade();

            marketTrade.symbol = dict["symbol"];
            if (string.IsNullOrEmpty(marketTrade.symbol))
            {
                return(null);
            }

            int size = int.Parse(dict["size"]);

            Json.Array trade_data = Json.ToArray(Json.GetAt(dict, "trade_data"));
            foreach (string dataItem in trade_data)
            {
                Json.Dictionary dataItemDist = Json.ToDictionary(dataItem);
                Item            item         = new Item();
                item.id     = int.Parse(dataItemDist["id"]);
                item.side   = dataItemDist["side"];
                item.price  = double.Parse(dataItemDist["price"]);
                item.vol    = double.Parse(dataItemDist["vol"]);
                item.amount = double.Parse(dataItemDist["amount"]);
                item.ts     = Int64.Parse(dataItemDist["ts"]);
                item.ds     = dataItemDist["ds"];

                if (marketTrade.trade_data == null)
                {
                    marketTrade.trade_data = new System.Collections.Generic.List <Item>();
                }

                marketTrade.trade_data.Add(item);
            }
            if (marketTrade.trade_data.Count != size)
            {
                return(null);
            }

            return(marketTrade);
        }
Ejemplo n.º 12
0
        public static Timestamp FromString(string strResponseData)
        {
            Json.Dictionary dict = Json.ToDictionary(strResponseData);
            if (dict == null)
            {
                return(null);
            }

            Timestamp timestamp           = new Timestamp();
            string    system_current_time = Json.GetAt(dict, "system_current_time");

            if (string.IsNullOrEmpty(system_current_time))
            {
                return(null);
            }

            timestamp.system_current_time = Convert.ToInt64(system_current_time);
            return(timestamp);
        }
Ejemplo n.º 13
0
        public static Timestamp FromString(string strResponseData)
        {
            Json.Dictionary dict = Json.ToDictionary(strResponseData);
            if (dict == null)
            {
                return(null);
            }

            string _timestamp = Json.GetAt(dict, nameof(timestamp));

            if (string.IsNullOrEmpty(_timestamp))
            {
                return(null);
            }

            return(new Timestamp()
            {
                timestamp = Convert.ToInt64(_timestamp)
            });
        }
Ejemplo n.º 14
0
        public static MarketKLine FromString(string strResponseData)
        {
            Json.Dictionary dict = Json.ToDictionary(strResponseData);
            if (dict == null)
            {
                return(null);
            }

            MarketKLine marketKLine = new MarketKLine();

            marketKLine.symbol = dict["symbol"];
            if (string.IsNullOrEmpty(marketKLine.symbol))
            {
                return(null);
            }

            Json.Array kline_data = Json.ToArray(Json.GetAt(dict, "kline_data"));
            foreach (string dataItem in kline_data)
            {
                Json.Dictionary dataItemDist = Json.ToDictionary(dataItem);
                Item            item         = new Item();
                item.id     = Int64.Parse(dataItemDist["id"]);
                item.amount = double.Parse(dataItemDist["amount"]);
                item.vol    = double.Parse(dataItemDist["vol"]);
                item.high   = double.Parse(dataItemDist["high"]);
                item.low    = double.Parse(dataItemDist["low"]);
                item.close  = double.Parse(dataItemDist["close"]);
                item.open   = double.Parse(dataItemDist["open"]);

                if (marketKLine.kline_data == null)
                {
                    marketKLine.kline_data = new System.Collections.Generic.List <Item>();
                }

                marketKLine.kline_data.Add(item);
            }

            return(marketKLine);
        }
Ejemplo n.º 15
0
        public static OrdersDetail FromString(string strResponseData)
        {
            Json.Array array = Json.ToArray(strResponseData);
            if (array == null)
            {
                return(null);
            }

            OrdersDetail ordersDetail = new OrdersDetail();

            ordersDetail.items = new System.Collections.Generic.List <OrderDetail>();
            foreach (string dataItem in array)
            {
                Json.Dictionary dataItemDict = Json.ToDictionary(dataItem);

                OrderDetail item = new OrderDetail();
                item.user_id = long.Parse(Json.GetAt(dataItemDict, "user_id"));
                item.symbol  = Json.GetAt(dataItemDict, "symbol");
                item.id      = long.Parse(Json.GetAt(dataItemDict, "id"));
                item.type    = Json.GetAt(dataItemDict, "type");
                item.volume  = double.Parse(Json.GetAt(dataItemDict, "volume"));
                item.price   = double.Parse(Json.GetAt(dataItemDict, "price"));
                double.TryParse(Json.GetAt(dataItemDict, "avg_price"), out item.avg_price);
                int.TryParse(Json.GetAt(dataItemDict, "status"), out item.status);
                double.TryParse(Json.GetAt(dataItemDict, "deal_volume"), out item.deal_volume);
                item.deal_money = double.Parse(Json.GetAt(dataItemDict, "deal_money"));
                item.fee        = double.Parse(Json.GetAt(dataItemDict, "fee"));
                item.source     = int.Parse(Json.GetAt(dataItemDict, "source"));
                item.ctime      = Int64.Parse(Json.GetAt(dataItemDict, "ctime"));
                item.mtime      = Int64.Parse(Json.GetAt(dataItemDict, "mtime"));

                ordersDetail.items.Add(item);
            }

            return(ordersDetail);
        }