github.com/frankrap/okex-api@v1.0.4/margin_results.go (about) 1 package okex 2 3 import ( 4 sjson "encoding/json" 5 "time" 6 ) 7 8 type MarginCurrency struct { 9 Available string `json:"available"` 10 Balance string `json:"balance"` 11 Borrowed string `json:"borrowed"` 12 CanWithdraw string `json:"can_withdraw"` 13 Frozen string `json:"frozen"` 14 Hold string `json:"hold"` 15 Holds string `json:"holds"` 16 LendingFee string `json:"lending_fee"` 17 } 18 19 type GetMarginAccountsItem struct { 20 CurrencyBTC MarginCurrency `json:"currency:BTC,omitempty"` 21 CurrencyUSDT MarginCurrency `json:"currency:USDT,omitempty"` 22 InstrumentID string `json:"instrument_id"` 23 LiquidationPrice string `json:"liquidation_price"` 24 MarginRatio string `json:"margin_ratio"` 25 ProductID string `json:"product_id"` 26 RiskRate string `json:"risk_rate"` 27 CurrencyLTC MarginCurrency `json:"currency:LTC,omitempty"` 28 CurrencyETH MarginCurrency `json:"currency:ETH,omitempty"` 29 CurrencyETC MarginCurrency `json:"currency:ETC,omitempty"` 30 CurrencyBCH MarginCurrency `json:"currency:BCH,omitempty"` 31 CurrencyEOS MarginCurrency `json:"currency:EOS,omitempty"` 32 CurrencyXRP MarginCurrency `json:"currency:XRP,omitempty"` 33 CurrencyTRX MarginCurrency `json:"currency:TRX,omitempty"` 34 CurrencyBSV MarginCurrency `json:"currency:BSV,omitempty"` 35 CurrencyDASH MarginCurrency `json:"currency:DASH,omitempty"` 36 CurrencyNEO MarginCurrency `json:"currency:NEO,omitempty"` 37 CurrencyQTUM MarginCurrency `json:"currency:QTUM,omitempty"` 38 CurrencyIOST MarginCurrency `json:"currency:IOST,omitempty"` 39 } 40 41 type GetMarginAccountsResult []GetMarginAccountsItem 42 43 type MarginNewOrderResult struct { 44 ClientOid string `json:"client_oid"` 45 ErrorCode string `json:"error_code"` 46 ErrorMessage string `json:"error_message"` 47 OrderID string `json:"order_id"` 48 Result bool `json:"result"` 49 } 50 51 type MarginGetOrderResult struct { 52 ClientOid string `json:"client_oid"` 53 CreatedAt time.Time `json:"created_at"` 54 FilledNotional sjson.Number `json:"filled_notional"` 55 FilledSize sjson.Number `json:"filled_size"` 56 Funds string `json:"funds"` 57 InstrumentID string `json:"instrument_id"` 58 Notional string `json:"notional"` 59 OrderID string `json:"order_id"` 60 OrderType sjson.Number `json:"order_type"` /*int*/ 61 Price sjson.Number `json:"price"` 62 PriceAvg sjson.Number `json:"price_avg"` 63 ProductID string `json:"product_id"` 64 Side string `json:"side"` 65 Size sjson.Number `json:"size"` 66 Status string `json:"status"` // status为state旧版参数,会短期兼容,建议尽早切换state 67 State sjson.Number `json:"state"` /*int*/ // -2:失败 -1:撤单成功 0:等待成交 1:部分成交 2:完全成交 3:下单中 4:撤单中 68 Timestamp time.Time `json:"timestamp"` 69 Type string `json:"type"` 70 } 71 72 type FillItem struct { 73 CreatedAt string `json:"created_at"` 74 ExecType string `json:"exec_type"` 75 Fee float64 `json:"fee,string"` 76 InstrumentID string `json:"instrument_id"` 77 LedgerID string `json:"ledger_id"` 78 Liquidity string `json:"liquidity"` 79 OrderID string `json:"order_id"` 80 Price string `json:"price"` 81 ProductID string `json:"product_id"` 82 Side string `json:"side"` 83 Size float64 `json:"size,string"` 84 Timestamp string `json:"timestamp"` 85 } 86 87 func (r *MarginGetOrderResult) GetState() int64 { 88 i, _ := r.State.Int64() 89 return i 90 }