コード例 #1
0
        public static TradeAnswer ReadFromJSON(string answer)
        {
            JObject data    = JObject.Parse(answer)["return"] as JObject;
            JValue  success = JObject.Parse(answer)["success"] as JValue;
            JValue  error   = JObject.Parse(answer)["error"] as JValue;

            if ((int)success == 1)
            {
                var o = data["funds"].ToObject <Dictionary <string, decimal> >();

                List <Currency> currencies = new List <Currency>();

                foreach (string key in o.Keys)
                {
                    currencies.Add(new Currency(BTCeCurrencyHelper.FromString(key), o[key]));
                }

                TradeAnswer tradeAnwer = new TradeAnswer()
                {
                    Currencies = currencies,
                    Received   = data.Value <decimal>("received"),
                    Remains    = data.Value <decimal>("remains"),
                    OrderId    = data.Value <int>("order_id")
                };

                return(tradeAnwer);
            }

            throw new BTCeAPIException((string)error);
        }
コード例 #2
0
ファイル: BTCeAPIWrapper.cs プロジェクト: 4e4y/BTCeAPI
        /// <summary>
        /// Place single trade with passed parameters
        /// </summary>
        /// <param name="pair">Trade Pair (currency)</param>
        /// <param name="type">Trade Type</param>
        /// <param name="rate">Trade Rate</param>
        /// <param name="amount">Trade Amount</param>
        /// <returns>On successful operation will return populated TradeAnswer, on error will throw BTCeException with original BTCe API error message</returns>
        public TradeAnswer PlaceOrder(BTCePair pair, BTCeTradeType type, decimal rate, decimal amount)
        {
            if (!authenticated)
            {
                throw new BTCeAPIException("Not Authenticated");
            }

            var resultStr = Query(new Dictionary <string, string>()
            {
                { "method", "Trade" },
                { "pair", BtcePairHelper.ToString(pair) },
                { "type", TradeTypeHelper.ToString(type) },
                { "rate", DecimalToString(rate) },
                { "amount", DecimalToString(amount) }
            });

            return(TradeAnswer.ReadFromJSON(resultStr));
        }