public OkexPositionBriefInfo(OkexPositionInfo info, OkexFutureInstrumentType inst, OkexFutureContractType ct, OkexFutureTradeDirectionType dir) { contractID = info.contract_id; instrument = inst; contractType = ct; direction = dir; leverRate = info.lever_rate; if (dir == OkexFutureTradeDirectionType.FTD_Buy) { amount = info.buy_amount; available = info.buy_available; avgPrice = info.buy_price_avg; costPrice = info.buy_price_cost; bond = info.buy_bond; flatPrice = info.buy_flatprice; } else { amount = info.sell_amount; available = info.sell_available; avgPrice = info.sell_price_avg; costPrice = info.sell_price_cost; bond = info.sell_bond; flatPrice = info.sell_flatprice; } }
// 仓位信息 public bool getFuturePosition(OkexFutureInstrumentType instrument, OkexFutureContractType contract, out List <OkexPositionInfo> info) { string str = postRequest.future_position_4fix(OkexDefValueConvert.getInstrumentStr(instrument), OkexDefValueConvert.getContractTypeStr(contract)); info = new List <OkexPositionInfo>(); JObject jo = (JObject)JsonConvert.DeserializeObject(str); bool result = (bool)jo["result"]; if (result) { JArray arr = JArray.Parse(jo["holding"].ToString()); foreach (var item in arr) { OkexPositionInfo pi = JsonConvert.DeserializeObject <OkexPositionInfo>(item.ToString()); info.Add(pi); } } return(result); }