Web Service Function Try Catch 추가
This commit is contained in:
@@ -70,21 +70,28 @@ namespace Million.WebServices
|
||||
/// <returns></returns>
|
||||
public static List<MarketData> GetUpbitMarketDatas(string resResult)
|
||||
{
|
||||
var objectList = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(resResult.ToString());
|
||||
var marKetDataList = new List<MarketData>();
|
||||
foreach (var item in objectList)
|
||||
try
|
||||
{
|
||||
var marketData = new MarketData();
|
||||
marketData.CodeFullName = item["market"].ToString();
|
||||
var names = marketData.CodeFullName.Split('-');
|
||||
marketData.CodeName = names[1];
|
||||
marketData.KorName = item["korean_name"].ToString();
|
||||
marketData.Payment = names[0];
|
||||
marketData.ExchangePlace =
|
||||
marketData.ExchangePlace = Enum.GetName(typeof(CommonProperty.ExchangePlace), CommonProperty.ExchangePlace.Upbit);
|
||||
marKetDataList.Add(marketData);
|
||||
var objectList = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(resResult.ToString());
|
||||
var marKetDataList = new List<MarketData>();
|
||||
foreach (var item in objectList)
|
||||
{
|
||||
var marketData = new MarketData();
|
||||
marketData.CodeFullName = item["market"].ToString();
|
||||
var names = marketData.CodeFullName.Split('-');
|
||||
marketData.CodeName = names[1];
|
||||
marketData.KorName = item["korean_name"].ToString();
|
||||
marketData.Payment = names[0];
|
||||
marketData.ExchangePlace =
|
||||
marketData.ExchangePlace = Enum.GetName(typeof(CommonProperty.ExchangePlace), CommonProperty.ExchangePlace.Upbit);
|
||||
marKetDataList.Add(marketData);
|
||||
}
|
||||
return marKetDataList;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return new List<MarketData>();
|
||||
}
|
||||
return marKetDataList;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -94,62 +101,70 @@ namespace Million.WebServices
|
||||
/// <returns></returns>
|
||||
public static Order GetOrderInformation(string resResult)
|
||||
{
|
||||
var data = JsonConvert.DeserializeObject<Dictionary<string, object>>(resResult.ToString());
|
||||
try
|
||||
{
|
||||
var data = JsonConvert.DeserializeObject<Dictionary<string, object>>(resResult.ToString());
|
||||
|
||||
var returnData = new Order();
|
||||
var returnData = new Order();
|
||||
|
||||
double.TryParse(data["price"]?.ToString(), out var price);
|
||||
double.TryParse(data["volume"]?.ToString(), out var volume);
|
||||
double.TryParse(data["remaining_volume"]?.ToString(), out var remaining_volume);
|
||||
double.TryParse(data["reserved_fee"]?.ToString(), out var reserved_fee);
|
||||
double.TryParse(data["remaining_fee"]?.ToString(), out var remaining_fee);
|
||||
double.TryParse(data["paid_fee"]?.ToString(), out var paid_fee);
|
||||
double.TryParse(data["locked"]?.ToString(), out var lockedCost);
|
||||
double.TryParse(data["executed_volume"]?.ToString(), out var executed_volume);
|
||||
double.TryParse(data["price"]?.ToString(), out var price);
|
||||
double.TryParse(data["volume"]?.ToString(), out var volume);
|
||||
double.TryParse(data["remaining_volume"]?.ToString(), out var remaining_volume);
|
||||
double.TryParse(data["reserved_fee"]?.ToString(), out var reserved_fee);
|
||||
double.TryParse(data["remaining_fee"]?.ToString(), out var remaining_fee);
|
||||
double.TryParse(data["paid_fee"]?.ToString(), out var paid_fee);
|
||||
double.TryParse(data["locked"]?.ToString(), out var lockedCost);
|
||||
double.TryParse(data["executed_volume"]?.ToString(), out var executed_volume);
|
||||
|
||||
int.TryParse(data["trades_count"]?.ToString(), out var trades_count);
|
||||
int.TryParse(data["trades_count"]?.ToString(), out var trades_count);
|
||||
|
||||
returnData.Uuid = data["uuid"]?.ToString();
|
||||
returnData.OrderType = data["ord_type"]?.ToString();
|
||||
returnData.OrderPrice = price;
|
||||
returnData.Side = data["side"]?.ToString();
|
||||
returnData.State = data["state"]?.ToString();
|
||||
returnData.CoinFullName = data["market"]?.ToString();
|
||||
returnData.CreateOrderTime = Convert.ToDateTime(data["created_at"]?.ToString());
|
||||
returnData.Volume = volume;
|
||||
returnData.RemainingVolume = remaining_volume;
|
||||
returnData.RemainingFee = remaining_fee;
|
||||
returnData.ReservedFee = reserved_fee;
|
||||
returnData.PaidFee = paid_fee;
|
||||
returnData.LockedCost = lockedCost;
|
||||
returnData.ExecutedVolume = executed_volume;
|
||||
returnData.TradeCount = trades_count;
|
||||
returnData.Uuid = data["uuid"]?.ToString();
|
||||
returnData.OrderType = data["ord_type"]?.ToString();
|
||||
returnData.OrderPrice = price;
|
||||
returnData.Side = data["side"]?.ToString();
|
||||
returnData.State = data["state"]?.ToString();
|
||||
returnData.CoinFullName = data["market"]?.ToString();
|
||||
returnData.CreateOrderTime = Convert.ToDateTime(data["created_at"]?.ToString());
|
||||
returnData.Volume = volume;
|
||||
returnData.RemainingVolume = remaining_volume;
|
||||
returnData.RemainingFee = remaining_fee;
|
||||
returnData.ReservedFee = reserved_fee;
|
||||
returnData.PaidFee = paid_fee;
|
||||
returnData.LockedCost = lockedCost;
|
||||
returnData.ExecutedVolume = executed_volume;
|
||||
returnData.TradeCount = trades_count;
|
||||
|
||||
if (data.ContainsKey("trades")){
|
||||
var tradeList = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(JsonConvert.SerializeObject(data["trades"]?.ToString()));
|
||||
if (data.ContainsKey("trades"))
|
||||
{
|
||||
var tradeList = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(JsonConvert.SerializeObject(data["trades"]?.ToString()));
|
||||
//(List<Dictionary<string, object>>)data["trades"];
|
||||
|
||||
foreach (var item in tradeList)
|
||||
{
|
||||
var trade = new Trade();
|
||||
trade.CoinFullName = item["market"]?.ToString();
|
||||
trade.Uuid = item["uuid"]?.ToString();
|
||||
trade.Side = item["side"]?.ToString();
|
||||
foreach (var item in tradeList)
|
||||
{
|
||||
var trade = new Trade();
|
||||
trade.CoinFullName = item["market"]?.ToString();
|
||||
trade.Uuid = item["uuid"]?.ToString();
|
||||
trade.Side = item["side"]?.ToString();
|
||||
|
||||
double.TryParse(item["price"]?.ToString(), out var priceData);
|
||||
double.TryParse(item["volume"]?.ToString(), out var volumeData);
|
||||
double.TryParse(item["funds"]?.ToString(), out var funds);
|
||||
double.TryParse(item["price"]?.ToString(), out var priceData);
|
||||
double.TryParse(item["volume"]?.ToString(), out var volumeData);
|
||||
double.TryParse(item["funds"]?.ToString(), out var funds);
|
||||
|
||||
trade.Price = priceData;
|
||||
trade.Volume = volumeData;
|
||||
trade.TotalPrice = funds;
|
||||
trade.Price = priceData;
|
||||
trade.Volume = volumeData;
|
||||
trade.TotalPrice = funds;
|
||||
|
||||
returnData.TradeList.Add(trade);
|
||||
returnData.TradeList.Add(trade);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return returnData;
|
||||
|
||||
return returnData;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return new Order();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -159,33 +174,40 @@ namespace Million.WebServices
|
||||
/// <returns></returns>
|
||||
public static List<Conclusion> GetConclusionList(string resResult)
|
||||
{
|
||||
var datas = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(resResult.ToString());
|
||||
|
||||
var returnData = new List<Conclusion>();
|
||||
|
||||
foreach(var item in datas)
|
||||
try
|
||||
{
|
||||
double.TryParse(item["trade_price"]?.ToString(), out var trade_price);
|
||||
double.TryParse(item["trade_volume"]?.ToString(), out var trade_volume);
|
||||
double.TryParse(item["prev_closing_price"]?.ToString(), out var prev_closing_price);
|
||||
double.TryParse(item["change_price"]?.ToString(), out var change_price);
|
||||
long.TryParse(item["sequential_id"]?.ToString(), out var sequential_id);
|
||||
var dateTimeStr = item["trade_date_utc"]?.ToString() + " " + item["trade_time_utc"]?.ToString();
|
||||
var datas = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(resResult.ToString());
|
||||
|
||||
var data = new Conclusion();
|
||||
data.CoinfullName = item["market"]?.ToString();
|
||||
data.TradeTime = Convert.ToDateTime(dateTimeStr).ToUniversalTime();
|
||||
data.TradePrice = trade_price;
|
||||
data.TradeVolume = trade_volume;
|
||||
data.BeforeDayClosePrice = prev_closing_price;
|
||||
data.ChangePrice = change_price;
|
||||
data.OrderType = item["ask_bid"]?.ToString();
|
||||
data.SequenceId = sequential_id;
|
||||
var returnData = new List<Conclusion>();
|
||||
|
||||
returnData.Add(data);
|
||||
foreach (var item in datas)
|
||||
{
|
||||
double.TryParse(item["trade_price"]?.ToString(), out var trade_price);
|
||||
double.TryParse(item["trade_volume"]?.ToString(), out var trade_volume);
|
||||
double.TryParse(item["prev_closing_price"]?.ToString(), out var prev_closing_price);
|
||||
double.TryParse(item["change_price"]?.ToString(), out var change_price);
|
||||
long.TryParse(item["sequential_id"]?.ToString(), out var sequential_id);
|
||||
var dateTimeStr = item["trade_date_utc"]?.ToString() + " " + item["trade_time_utc"]?.ToString();
|
||||
|
||||
var data = new Conclusion();
|
||||
data.CoinfullName = item["market"]?.ToString();
|
||||
data.TradeTime = Convert.ToDateTime(dateTimeStr).ToUniversalTime();
|
||||
data.TradePrice = trade_price;
|
||||
data.TradeVolume = trade_volume;
|
||||
data.BeforeDayClosePrice = prev_closing_price;
|
||||
data.ChangePrice = change_price;
|
||||
data.OrderType = item["ask_bid"]?.ToString();
|
||||
data.SequenceId = sequential_id;
|
||||
|
||||
returnData.Add(data);
|
||||
}
|
||||
|
||||
return returnData;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return new List<Conclusion>();
|
||||
}
|
||||
|
||||
return returnData;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -197,44 +219,53 @@ namespace Million.WebServices
|
||||
{
|
||||
var returnData = new List<OrderBook>();
|
||||
|
||||
var datas = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(resResult.ToString());
|
||||
foreach (var item in datas)
|
||||
try
|
||||
{
|
||||
var data = new OrderBook();
|
||||
string timestamp = item["timestamp"]?.ToString();
|
||||
var dateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0).ToLocalTime();
|
||||
var doubleData = Convert.ToDouble(timestamp);
|
||||
|
||||
double.TryParse(item["total_ask_size"]?.ToString(), out var total_ask_size);
|
||||
double.TryParse(item["total_bid_size"]?.ToString(), out var total_bid_size);
|
||||
|
||||
data.CoinFullName = item["market"]?.ToString();
|
||||
data.CreateOrderBookDateTime = dateTime.AddMilliseconds(doubleData);
|
||||
data.TotalBuySize = total_bid_size;
|
||||
data.TotalSellSize = total_ask_size;
|
||||
|
||||
var list = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(JsonConvert.SerializeObject(item["orderbook_units"]));
|
||||
|
||||
if(list != null)
|
||||
var datas = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(resResult.ToString());
|
||||
foreach (var item in datas)
|
||||
{
|
||||
foreach(var order in list)
|
||||
{
|
||||
double.TryParse(order["ask_price"]?.ToString(), out var ask_price);
|
||||
double.TryParse(order["bid_price"]?.ToString(), out var bid_price);
|
||||
double.TryParse(order["ask_size"]?.ToString(), out var ask_size);
|
||||
double.TryParse(order["bid_size"]?.ToString(), out var bid_size);
|
||||
var data = new OrderBook();
|
||||
string timestamp = item["timestamp"]?.ToString();
|
||||
var dateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0).ToLocalTime();
|
||||
var doubleData = Convert.ToDouble(timestamp);
|
||||
|
||||
var unit = new Unit();
|
||||
unit.BuyPrice = bid_price;
|
||||
unit.BuySize = bid_size;
|
||||
unit.SellPrice = ask_price;
|
||||
unit.SellSize = ask_size;
|
||||
data.UnitList.Add(unit);
|
||||
double.TryParse(item["total_ask_size"]?.ToString(), out var total_ask_size);
|
||||
double.TryParse(item["total_bid_size"]?.ToString(), out var total_bid_size);
|
||||
|
||||
data.CoinFullName = item["market"]?.ToString();
|
||||
data.CreateOrderBookDateTime = dateTime.AddMilliseconds(doubleData);
|
||||
data.TotalBuySize = total_bid_size;
|
||||
data.TotalSellSize = total_ask_size;
|
||||
|
||||
var list = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(JsonConvert.SerializeObject(item["orderbook_units"]));
|
||||
|
||||
if (list != null)
|
||||
{
|
||||
foreach (var order in list)
|
||||
{
|
||||
double.TryParse(order["ask_price"]?.ToString(), out var ask_price);
|
||||
double.TryParse(order["bid_price"]?.ToString(), out var bid_price);
|
||||
double.TryParse(order["ask_size"]?.ToString(), out var ask_size);
|
||||
double.TryParse(order["bid_size"]?.ToString(), out var bid_size);
|
||||
|
||||
var unit = new Unit();
|
||||
unit.BuyPrice = bid_price;
|
||||
unit.BuySize = bid_size;
|
||||
unit.SellPrice = ask_price;
|
||||
unit.SellSize = ask_size;
|
||||
data.UnitList.Add(unit);
|
||||
}
|
||||
}
|
||||
returnData.Add(data);
|
||||
}
|
||||
returnData.Add(data);
|
||||
return returnData;
|
||||
}
|
||||
return returnData;
|
||||
catch (Exception e)
|
||||
{
|
||||
return returnData;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -244,60 +275,64 @@ namespace Million.WebServices
|
||||
/// <returns></returns>
|
||||
public static List<Ticker> GetTickerList(string resResult)
|
||||
{
|
||||
var returnData = new List<Ticker>();
|
||||
try
|
||||
{
|
||||
var returnData = new List<Ticker>();
|
||||
var datas = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(resResult.ToString());
|
||||
var dateTimeData = DateTime.Now;
|
||||
foreach (var item in datas)
|
||||
{
|
||||
double.TryParse(item["opening_price"]?.ToString(), out var opening_price);
|
||||
double.TryParse(item["high_price"]?.ToString(), out var high_price);
|
||||
double.TryParse(item["low_price"]?.ToString(), out var low_price);
|
||||
double.TryParse(item["trade_price"]?.ToString(), out var trade_price);
|
||||
double.TryParse(item["prev_closing_price"]?.ToString(), out var prev_closing_price);
|
||||
double.TryParse(item["change_price"]?.ToString(), out var change_price);
|
||||
double.TryParse(item["change_rate"]?.ToString(), out var change_rate);
|
||||
double.TryParse(item["signed_change_price"]?.ToString(), out var signed_change_price);
|
||||
double.TryParse(item["signed_change_rate"]?.ToString(), out var signed_change_rate);
|
||||
double.TryParse(item["trade_volume"]?.ToString(), out var trade_volume);
|
||||
double.TryParse(item["acc_trade_price"]?.ToString(), out var acc_trade_price);
|
||||
double.TryParse(item["acc_trade_price_24h"]?.ToString(), out var acc_trade_price_24h);
|
||||
double.TryParse(item["acc_trade_volume"]?.ToString(), out var acc_trade_volume);
|
||||
double.TryParse(item["acc_trade_volume_24h"]?.ToString(), out var acc_trade_volume_24h);
|
||||
double.TryParse(item["highest_52_week_price"]?.ToString(), out var highest_52_week_price);
|
||||
double.TryParse(item["lowest_52_week_price"]?.ToString(), out var lowest_52_week_price);
|
||||
|
||||
if (resResult.ToString().Contains("Too")) return null;
|
||||
var dateStr = item["trade_date"]?.ToString() + item["trade_time"]?.ToString();
|
||||
|
||||
var datas = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(resResult.ToString());
|
||||
var dateTimeData = DateTime.Now;
|
||||
foreach (var item in datas)
|
||||
{
|
||||
double.TryParse(item["opening_price"]?.ToString(), out var opening_price);
|
||||
double.TryParse(item["high_price"]?.ToString(), out var high_price);
|
||||
double.TryParse(item["low_price"]?.ToString(), out var low_price);
|
||||
double.TryParse(item["trade_price"]?.ToString(), out var trade_price);
|
||||
double.TryParse(item["prev_closing_price"]?.ToString(), out var prev_closing_price);
|
||||
double.TryParse(item["change_price"]?.ToString(), out var change_price);
|
||||
double.TryParse(item["change_rate"]?.ToString(), out var change_rate);
|
||||
double.TryParse(item["signed_change_price"]?.ToString(), out var signed_change_price);
|
||||
double.TryParse(item["signed_change_rate"]?.ToString(), out var signed_change_rate);
|
||||
double.TryParse(item["trade_volume"]?.ToString(), out var trade_volume);
|
||||
double.TryParse(item["acc_trade_price"]?.ToString(), out var acc_trade_price);
|
||||
double.TryParse(item["acc_trade_price_24h"]?.ToString(), out var acc_trade_price_24h);
|
||||
double.TryParse(item["acc_trade_volume"]?.ToString(), out var acc_trade_volume);
|
||||
double.TryParse(item["acc_trade_volume_24h"]?.ToString(), out var acc_trade_volume_24h);
|
||||
double.TryParse(item["highest_52_week_price"]?.ToString(), out var highest_52_week_price);
|
||||
double.TryParse(item["lowest_52_week_price"]?.ToString(), out var lowest_52_week_price);
|
||||
var data = new Ticker();
|
||||
data.CodeFullName = item["market"]?.ToString();
|
||||
data.TradeDateTime = DateTime.ParseExact(dateStr, "yyyyMMddHHmmss", null);
|
||||
data.OpeningPrice = opening_price;
|
||||
data.HighPrice = high_price;
|
||||
data.LowPrice = low_price;
|
||||
data.TradePrice = trade_price;
|
||||
data.BeforeDayClosePrice = prev_closing_price;
|
||||
data.TrendType = item["change"]?.ToString();
|
||||
data.AbsoluteChangePrice = change_price;
|
||||
data.AbsoluteChangeRate = change_rate;
|
||||
data.SignedChangePrice = signed_change_price;
|
||||
data.SignedChangeRate = signed_change_rate;
|
||||
data.TradeVolume = trade_volume;
|
||||
data.AccumulateTradePrice = acc_trade_price;
|
||||
data.AccumulateTradePrice24 = acc_trade_price_24h;
|
||||
data.AccumulateTradeVolume = acc_trade_volume;
|
||||
data.AccumulateTradeVolume24 = acc_trade_volume_24h;
|
||||
data.HighstPriceOf52Week = highest_52_week_price;
|
||||
data.HighstPriceDateOf52Week = Convert.ToDateTime(item["highest_52_week_date"]?.ToString()).ToUniversalTime();
|
||||
data.LowstPriceOf52Week = lowest_52_week_price;
|
||||
data.LowstPriceDateOf52Week = Convert.ToDateTime(item["lowest_52_week_date"]?.ToString()).ToUniversalTime();
|
||||
data.DateTime = dateTimeData;
|
||||
returnData.Add(data);
|
||||
}
|
||||
|
||||
var dateStr = item["trade_date"]?.ToString() + item["trade_time"]?.ToString();
|
||||
|
||||
var data = new Ticker();
|
||||
data.CodeFullName = item["market"]?.ToString();
|
||||
data.TradeDateTime = DateTime.ParseExact(dateStr, "yyyyMMddHHmmss", null);
|
||||
data.OpeningPrice = opening_price;
|
||||
data.HighPrice = high_price;
|
||||
data.LowPrice = low_price;
|
||||
data.TradePrice = trade_price;
|
||||
data.BeforeDayClosePrice = prev_closing_price;
|
||||
data.TrendType = item["change"]?.ToString();
|
||||
data.AbsoluteChangePrice = change_price;
|
||||
data.AbsoluteChangeRate = change_rate;
|
||||
data.SignedChangePrice = signed_change_price;
|
||||
data.SignedChangeRate = signed_change_rate;
|
||||
data.TradeVolume = trade_volume;
|
||||
data.AccumulateTradePrice = acc_trade_price;
|
||||
data.AccumulateTradePrice24 = acc_trade_price_24h;
|
||||
data.AccumulateTradeVolume = acc_trade_volume;
|
||||
data.AccumulateTradeVolume24 = acc_trade_volume_24h;
|
||||
data.HighstPriceOf52Week = highest_52_week_price;
|
||||
data.HighstPriceDateOf52Week = Convert.ToDateTime(item["highest_52_week_date"]?.ToString()).ToUniversalTime();
|
||||
data.LowstPriceOf52Week = lowest_52_week_price;
|
||||
data.LowstPriceDateOf52Week = Convert.ToDateTime(item["lowest_52_week_date"]?.ToString()).ToUniversalTime();
|
||||
data.DateTime = dateTimeData;
|
||||
returnData.Add(data);
|
||||
return returnData;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return new List<Ticker>();
|
||||
}
|
||||
|
||||
return returnData;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -305,39 +340,46 @@ namespace Million.WebServices
|
||||
/// </summary>
|
||||
public static Order TryOrder(string resResult)
|
||||
{
|
||||
var returnData = new Order();
|
||||
try
|
||||
{
|
||||
var returnData = new Order();
|
||||
|
||||
var data = JsonConvert.DeserializeObject<Dictionary<string, object>>(resResult.ToString());
|
||||
double.TryParse(data["price"]?.ToString(), out var price);
|
||||
double.TryParse(data["volume"]?.ToString(), out var volume);
|
||||
double.TryParse(data["remaining_volume"]?.ToString(), out var remaining_volume);
|
||||
double.TryParse(data["reserved_fee"]?.ToString(), out var reserved_fee);
|
||||
double.TryParse(data["remaining_fee"]?.ToString(), out var remaining_fee);
|
||||
double.TryParse(data["paid_fee"]?.ToString(), out var paid_fee);
|
||||
double.TryParse(data["locked"]?.ToString(), out var lockedCost);
|
||||
double.TryParse(data["executed_volume"]?.ToString(), out var executed_volume);
|
||||
double.TryParse(data["avg_price"]?.ToString(), out var avg_price);
|
||||
var data = JsonConvert.DeserializeObject<Dictionary<string, object>>(resResult.ToString());
|
||||
double.TryParse(data["price"]?.ToString(), out var price);
|
||||
double.TryParse(data["volume"]?.ToString(), out var volume);
|
||||
double.TryParse(data["remaining_volume"]?.ToString(), out var remaining_volume);
|
||||
double.TryParse(data["reserved_fee"]?.ToString(), out var reserved_fee);
|
||||
double.TryParse(data["remaining_fee"]?.ToString(), out var remaining_fee);
|
||||
double.TryParse(data["paid_fee"]?.ToString(), out var paid_fee);
|
||||
double.TryParse(data["locked"]?.ToString(), out var lockedCost);
|
||||
double.TryParse(data["executed_volume"]?.ToString(), out var executed_volume);
|
||||
double.TryParse(data["avg_price"]?.ToString(), out var avg_price);
|
||||
|
||||
int.TryParse(data["trades_count"]?.ToString(), out var trades_count);
|
||||
int.TryParse(data["trades_count"]?.ToString(), out var trades_count);
|
||||
|
||||
returnData.Uuid = data["uuid"]?.ToString();
|
||||
returnData.OrderType = data["ord_type"]?.ToString();
|
||||
returnData.OrderPrice = price;
|
||||
returnData.AveragePrice = avg_price;
|
||||
returnData.Side = data["side"]?.ToString();
|
||||
returnData.State = data["state"]?.ToString();
|
||||
returnData.CoinFullName = data["market"]?.ToString();
|
||||
returnData.CreateOrderTime = Convert.ToDateTime(data["created_at"]?.ToString());
|
||||
returnData.Volume = volume;
|
||||
returnData.RemainingVolume = remaining_volume;
|
||||
returnData.RemainingFee = remaining_fee;
|
||||
returnData.ReservedFee = reserved_fee;
|
||||
returnData.PaidFee = paid_fee;
|
||||
returnData.LockedCost = lockedCost;
|
||||
returnData.ExecutedVolume = executed_volume;
|
||||
returnData.TradeCount = trades_count;
|
||||
returnData.Uuid = data["uuid"]?.ToString();
|
||||
returnData.OrderType = data["ord_type"]?.ToString();
|
||||
returnData.OrderPrice = price;
|
||||
returnData.AveragePrice = avg_price;
|
||||
returnData.Side = data["side"]?.ToString();
|
||||
returnData.State = data["state"]?.ToString();
|
||||
returnData.CoinFullName = data["market"]?.ToString();
|
||||
returnData.CreateOrderTime = Convert.ToDateTime(data["created_at"]?.ToString());
|
||||
returnData.Volume = volume;
|
||||
returnData.RemainingVolume = remaining_volume;
|
||||
returnData.RemainingFee = remaining_fee;
|
||||
returnData.ReservedFee = reserved_fee;
|
||||
returnData.PaidFee = paid_fee;
|
||||
returnData.LockedCost = lockedCost;
|
||||
returnData.ExecutedVolume = executed_volume;
|
||||
returnData.TradeCount = trades_count;
|
||||
|
||||
return returnData;
|
||||
return returnData;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return new Order();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -346,43 +388,50 @@ namespace Million.WebServices
|
||||
/// <returns></returns>
|
||||
public static List<Order> GetOrderListInformation(string resResult)
|
||||
{
|
||||
var returnData = new List<Order>();
|
||||
|
||||
var datas = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(resResult.ToString());
|
||||
|
||||
foreach(var item in datas)
|
||||
try
|
||||
{
|
||||
var returnData = new List<Order>();
|
||||
|
||||
double.TryParse(item["price"]?.ToString(), out var price);
|
||||
double.TryParse(item["volume"]?.ToString(), out var volume);
|
||||
double.TryParse(item["remaining_volume"]?.ToString(), out var remaining_volume);
|
||||
double.TryParse(item["reserved_fee"]?.ToString(), out var reserved_fee);
|
||||
double.TryParse(item["remaining_fee"]?.ToString(), out var remaining_fee);
|
||||
double.TryParse(item["paid_fee"]?.ToString(), out var paid_fee);
|
||||
double.TryParse(item["locked"]?.ToString(), out var lockedCost);
|
||||
double.TryParse(item["executed_volume"]?.ToString(), out var executed_volume);
|
||||
int.TryParse(item["trades_count"]?.ToString(), out var trades_count);
|
||||
var datas = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(resResult.ToString());
|
||||
|
||||
var data = new Order();
|
||||
data.Uuid = item["uuid"]?.ToString();
|
||||
data.Side = item["side"]?.ToString();
|
||||
data.OrderType = item["ord_type"]?.ToString();
|
||||
data.OrderPrice = price;
|
||||
data.State = item["state"]?.ToString();
|
||||
data.CoinFullName = item["market"]?.ToString();
|
||||
data.CreateOrderTime = Convert.ToDateTime(item["created_at"]?.ToString());
|
||||
data.Volume = volume;
|
||||
data.RemainingVolume = remaining_volume;
|
||||
data.RemainingFee = remaining_fee;
|
||||
data.ReservedFee = reserved_fee;
|
||||
data.PaidFee = paid_fee;
|
||||
data.LockedCost = lockedCost;
|
||||
data.ExecutedVolume = executed_volume;
|
||||
data.TradeCount = trades_count;
|
||||
returnData.Add(data);
|
||||
foreach (var item in datas)
|
||||
{
|
||||
|
||||
double.TryParse(item["price"]?.ToString(), out var price);
|
||||
double.TryParse(item["volume"]?.ToString(), out var volume);
|
||||
double.TryParse(item["remaining_volume"]?.ToString(), out var remaining_volume);
|
||||
double.TryParse(item["reserved_fee"]?.ToString(), out var reserved_fee);
|
||||
double.TryParse(item["remaining_fee"]?.ToString(), out var remaining_fee);
|
||||
double.TryParse(item["paid_fee"]?.ToString(), out var paid_fee);
|
||||
double.TryParse(item["locked"]?.ToString(), out var lockedCost);
|
||||
double.TryParse(item["executed_volume"]?.ToString(), out var executed_volume);
|
||||
int.TryParse(item["trades_count"]?.ToString(), out var trades_count);
|
||||
|
||||
var data = new Order();
|
||||
data.Uuid = item["uuid"]?.ToString();
|
||||
data.Side = item["side"]?.ToString();
|
||||
data.OrderType = item["ord_type"]?.ToString();
|
||||
data.OrderPrice = price;
|
||||
data.State = item["state"]?.ToString();
|
||||
data.CoinFullName = item["market"]?.ToString();
|
||||
data.CreateOrderTime = Convert.ToDateTime(item["created_at"]?.ToString());
|
||||
data.Volume = volume;
|
||||
data.RemainingVolume = remaining_volume;
|
||||
data.RemainingFee = remaining_fee;
|
||||
data.ReservedFee = reserved_fee;
|
||||
data.PaidFee = paid_fee;
|
||||
data.LockedCost = lockedCost;
|
||||
data.ExecutedVolume = executed_volume;
|
||||
data.TradeCount = trades_count;
|
||||
returnData.Add(data);
|
||||
}
|
||||
|
||||
return returnData;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return new List<Order>();
|
||||
}
|
||||
|
||||
return returnData;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -390,73 +439,80 @@ namespace Million.WebServices
|
||||
/// </summary>
|
||||
/// <param name="resResult"></param>
|
||||
/// <returns></returns>
|
||||
public static OrderableInformation GetOrderableInformation(string resResult)
|
||||
public static OrderableInformation GetOrderableInformation(string resResult)
|
||||
{
|
||||
var returnData = new OrderableInformation();
|
||||
var data = JsonConvert.DeserializeObject<Dictionary<string, object>>(resResult.ToString());
|
||||
try
|
||||
{
|
||||
var returnData = new OrderableInformation();
|
||||
var data = JsonConvert.DeserializeObject<Dictionary<string, object>>(resResult.ToString());
|
||||
|
||||
double.TryParse(data["bid_fee"]?.ToString(), out var buyFeeRate);
|
||||
returnData.BuyFeeRate = buyFeeRate;
|
||||
double.TryParse(data["bid_fee"]?.ToString(), out var buyFeeRate);
|
||||
returnData.BuyFeeRate = buyFeeRate;
|
||||
|
||||
double.TryParse(data["ask_fee"]?.ToString(), out var sellFeeRate);
|
||||
returnData.SellFeeRate = sellFeeRate;
|
||||
double.TryParse(data["ask_fee"]?.ToString(), out var sellFeeRate);
|
||||
returnData.SellFeeRate = sellFeeRate;
|
||||
|
||||
var market = JsonConvert.DeserializeObject<Dictionary<string, object>>(JsonConvert.SerializeObject(data["market"]?.ToString()));
|
||||
var buyAccount = JsonConvert.DeserializeObject<Dictionary<string, object>>(JsonConvert.SerializeObject(data["bid_account"]?.ToString()));
|
||||
var sellAccount = JsonConvert.DeserializeObject<Dictionary<string, object>>(JsonConvert.SerializeObject(data["ask_account"]?.ToString()));
|
||||
var market = JsonConvert.DeserializeObject<Dictionary<string, object>>(JsonConvert.SerializeObject(data["market"]?.ToString()));
|
||||
var buyAccount = JsonConvert.DeserializeObject<Dictionary<string, object>>(JsonConvert.SerializeObject(data["bid_account"]?.ToString()));
|
||||
var sellAccount = JsonConvert.DeserializeObject<Dictionary<string, object>>(JsonConvert.SerializeObject(data["ask_account"]?.ToString()));
|
||||
|
||||
//market
|
||||
returnData.Market.CoinFullName = market["id"]?.ToString();
|
||||
returnData.Market.Name = market["name"]?.ToString();
|
||||
returnData.Market.OrderTypes = JsonConvert.DeserializeObject<List<string>>(JsonConvert.SerializeObject(market["order_types"]?.ToString()));
|
||||
returnData.Market.OrderSides = JsonConvert.DeserializeObject<List<string>>(JsonConvert.SerializeObject(market["order_sides"]?.ToString()));
|
||||
//market
|
||||
returnData.Market.CoinFullName = market["id"]?.ToString();
|
||||
returnData.Market.Name = market["name"]?.ToString();
|
||||
returnData.Market.OrderTypes = JsonConvert.DeserializeObject<List<string>>(JsonConvert.SerializeObject(market["order_types"]?.ToString()));
|
||||
returnData.Market.OrderSides = JsonConvert.DeserializeObject<List<string>>(JsonConvert.SerializeObject(market["order_sides"]?.ToString()));
|
||||
|
||||
var buyRestrictions = JsonConvert.DeserializeObject<Dictionary<string, object>>(JsonConvert.SerializeObject(market["bid"]?.ToString()));
|
||||
var buyRestrictions = JsonConvert.DeserializeObject<Dictionary<string, object>>(JsonConvert.SerializeObject(market["bid"]?.ToString()));
|
||||
|
||||
returnData.Market.BuyRestrictions.Currency = buyRestrictions["currency"]?.ToString();
|
||||
returnData.Market.BuyRestrictions.PriceUnit = buyRestrictions["price_unit"]?.ToString();
|
||||
returnData.Market.BuyRestrictions.Currency = buyRestrictions["currency"]?.ToString();
|
||||
returnData.Market.BuyRestrictions.PriceUnit = buyRestrictions["price_unit"]?.ToString();
|
||||
|
||||
double.TryParse(buyRestrictions["min_total"]?.ToString(), out var buyMintotal);
|
||||
returnData.Market.BuyRestrictions.MinimumAmount = buyMintotal;
|
||||
double.TryParse(buyRestrictions["min_total"]?.ToString(), out var buyMintotal);
|
||||
returnData.Market.BuyRestrictions.MinimumAmount = buyMintotal;
|
||||
|
||||
var sellRestrictions = JsonConvert.DeserializeObject<Dictionary<string, object>>(JsonConvert.SerializeObject(market["ask"]?.ToString()));
|
||||
var sellRestrictions = JsonConvert.DeserializeObject<Dictionary<string, object>>(JsonConvert.SerializeObject(market["ask"]?.ToString()));
|
||||
|
||||
returnData.Market.SellRestrictions.Currency = sellRestrictions["currency"]?.ToString();
|
||||
returnData.Market.SellRestrictions.PriceUnit = sellRestrictions["price_unit"]?.ToString();
|
||||
returnData.Market.SellRestrictions.Currency = sellRestrictions["currency"]?.ToString();
|
||||
returnData.Market.SellRestrictions.PriceUnit = sellRestrictions["price_unit"]?.ToString();
|
||||
|
||||
double.TryParse(sellRestrictions["min_total"]?.ToString(), out var sellMintotal);
|
||||
returnData.Market.SellRestrictions.MinimumAmount = sellMintotal;
|
||||
returnData.Market.State = market["state"]?.ToString();
|
||||
double.TryParse(sellRestrictions["min_total"]?.ToString(), out var sellMintotal);
|
||||
returnData.Market.SellRestrictions.MinimumAmount = sellMintotal;
|
||||
returnData.Market.State = market["state"]?.ToString();
|
||||
|
||||
//buy Account
|
||||
returnData.BuyAccount.Currency = buyAccount["currency"]?.ToString();
|
||||
returnData.BuyAccount.UnitCurrency = buyAccount["unit_currency"]?.ToString();
|
||||
//buy Account
|
||||
returnData.BuyAccount.Currency = buyAccount["currency"]?.ToString();
|
||||
returnData.BuyAccount.UnitCurrency = buyAccount["unit_currency"]?.ToString();
|
||||
|
||||
double.TryParse(buyAccount["balance"]?.ToString(), out var balance);
|
||||
double.TryParse(buyAccount["locked"]?.ToString(), out var locked);
|
||||
double.TryParse(buyAccount["avg_buy_price"]?.ToString(), out var avgBuyPrice);
|
||||
bool.TryParse(buyAccount["avg_buy_price_modified"]?.ToString(), out var avgBuyPriceFlag);
|
||||
double.TryParse(buyAccount["balance"]?.ToString(), out var balance);
|
||||
double.TryParse(buyAccount["locked"]?.ToString(), out var locked);
|
||||
double.TryParse(buyAccount["avg_buy_price"]?.ToString(), out var avgBuyPrice);
|
||||
bool.TryParse(buyAccount["avg_buy_price_modified"]?.ToString(), out var avgBuyPriceFlag);
|
||||
|
||||
returnData.BuyAccount.Balance = balance;
|
||||
returnData.BuyAccount.LockedDuringOrder = locked;
|
||||
returnData.BuyAccount.AvgBuyPrice = avgBuyPrice;
|
||||
returnData.BuyAccount.AvgBuyPriceFlag = avgBuyPriceFlag;
|
||||
returnData.BuyAccount.Balance = balance;
|
||||
returnData.BuyAccount.LockedDuringOrder = locked;
|
||||
returnData.BuyAccount.AvgBuyPrice = avgBuyPrice;
|
||||
returnData.BuyAccount.AvgBuyPriceFlag = avgBuyPriceFlag;
|
||||
|
||||
//sell Account
|
||||
returnData.SellAccount.Currency = sellAccount["currency"]?.ToString();
|
||||
returnData.SellAccount.UnitCurrency = sellAccount["unit_currency"]?.ToString();
|
||||
//sell Account
|
||||
returnData.SellAccount.Currency = sellAccount["currency"]?.ToString();
|
||||
returnData.SellAccount.UnitCurrency = sellAccount["unit_currency"]?.ToString();
|
||||
|
||||
double.TryParse(sellAccount["balance"]?.ToString(), out balance);
|
||||
double.TryParse(sellAccount["locked"]?.ToString(), out locked);
|
||||
double.TryParse(sellAccount["avg_buy_price"]?.ToString(), out avgBuyPrice);
|
||||
bool.TryParse(sellAccount["avg_buy_price_modified"]?.ToString(), out avgBuyPriceFlag);
|
||||
double.TryParse(sellAccount["balance"]?.ToString(), out balance);
|
||||
double.TryParse(sellAccount["locked"]?.ToString(), out locked);
|
||||
double.TryParse(sellAccount["avg_buy_price"]?.ToString(), out avgBuyPrice);
|
||||
bool.TryParse(sellAccount["avg_buy_price_modified"]?.ToString(), out avgBuyPriceFlag);
|
||||
|
||||
returnData.SellAccount.Balance = balance;
|
||||
returnData.SellAccount.LockedDuringOrder = locked;
|
||||
returnData.SellAccount.AvgBuyPrice = avgBuyPrice;
|
||||
returnData.SellAccount.AvgBuyPriceFlag = avgBuyPriceFlag;
|
||||
returnData.SellAccount.Balance = balance;
|
||||
returnData.SellAccount.LockedDuringOrder = locked;
|
||||
returnData.SellAccount.AvgBuyPrice = avgBuyPrice;
|
||||
returnData.SellAccount.AvgBuyPriceFlag = avgBuyPriceFlag;
|
||||
|
||||
return returnData;
|
||||
return returnData;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return new OrderableInformation();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -466,26 +522,33 @@ namespace Million.WebServices
|
||||
/// <returns></returns>
|
||||
public static List<Account> GetAccounts(string resResult)
|
||||
{
|
||||
var objectList = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(resResult.ToString());
|
||||
var accountList = new List<Account>();
|
||||
foreach(var item in objectList)
|
||||
try
|
||||
{
|
||||
double.TryParse(item["balance"]?.ToString(), out var balance);
|
||||
double.TryParse(item["locked"]?.ToString(), out var locked);
|
||||
double.TryParse(item["avg_buy_price"]?.ToString(), out var avg_buy_price);
|
||||
bool.TryParse(item["avg_buy_price_modified"]?.ToString(), out var avg_buy_price_modified);
|
||||
var objectList = JsonConvert.DeserializeObject<List<Dictionary<string, object>>>(resResult.ToString());
|
||||
var accountList = new List<Account>();
|
||||
foreach (var item in objectList)
|
||||
{
|
||||
double.TryParse(item["balance"]?.ToString(), out var balance);
|
||||
double.TryParse(item["locked"]?.ToString(), out var locked);
|
||||
double.TryParse(item["avg_buy_price"]?.ToString(), out var avg_buy_price);
|
||||
bool.TryParse(item["avg_buy_price_modified"]?.ToString(), out var avg_buy_price_modified);
|
||||
|
||||
|
||||
var account = new Account();
|
||||
account.Currency = item["currency"]?.ToString();
|
||||
account.UnitCurrency = item["unit_currency"]?.ToString();
|
||||
account.Balance = balance;
|
||||
account.Locked = locked;
|
||||
account.AvgBuyPrice = avg_buy_price;
|
||||
account.AvgBuyPriceFlag = avg_buy_price_modified;
|
||||
accountList.Add(account);
|
||||
var account = new Account();
|
||||
account.Currency = item["currency"]?.ToString();
|
||||
account.UnitCurrency = item["unit_currency"]?.ToString();
|
||||
account.Balance = balance;
|
||||
account.Locked = locked;
|
||||
account.AvgBuyPrice = avg_buy_price;
|
||||
account.AvgBuyPriceFlag = avg_buy_price_modified;
|
||||
accountList.Add(account);
|
||||
}
|
||||
return accountList;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return new List<Account>();
|
||||
}
|
||||
return accountList;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -508,8 +571,8 @@ namespace Million.WebServices
|
||||
double.TryParse(item["high_price"]?.ToString(), out var highValue);
|
||||
double.TryParse(item["low_price"]?.ToString(), out var lowValue);
|
||||
//이거는 확인 필요
|
||||
double.TryParse(item["candle_acc_trade_price"]?.ToString(), out var moneyVolume);
|
||||
|
||||
double.TryParse(item["candle_acc_trade_price"]?.ToString(), out var moneyVolume);
|
||||
|
||||
candleList.Add(new CandleData()
|
||||
{
|
||||
DateTime = Convert.ToDateTime(item["candle_date_time_kst"]?.ToString()),
|
||||
|
||||
Reference in New Issue
Block a user