bybit

package module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 30, 2022 License: MIT Imports: 15 Imported by: 0

README

golangci-lint test

bybit

bybit is an bybit client for the Go programing language.

Usage

import "github.com/hirokisan/bybit"

client := bybit.NewClient().WithAuth("your api key", "your api secret")
res, err := client.Wallet().Balance(bybit.CoinBTC)
// do as you want

Implemented

The following API endpoints have been implemented

Inverse Perpetual
Market Data Endpoints
  • /v2/public/orderBook/L2 Order Book
  • /v2/public/kline/list Query Kline
  • /v2/public/tickers Latest Information for Symbol
  • /v2/public/trading-records Public Trading Records
  • /v2/public/symbols Query Symbol
  • /v2/public/mark-price-kline Query Mark Price Kline
  • /v2/public/index-price-kline Query Index Price Kline
  • /v2/public/premium-index-kline Query Premium Index Kline
  • /v2/public/open-interest Open Interest
  • /v2/public/big-deal Latest Big Deal
  • /v2/public/account-ratio Long-Short Ratio
Account Data Endpoints
  • /v2/private/order/create Place Active Order
  • /v2/private/order/list Get Active Order
  • /v2/private/order/cancel Cancel Active Order
Wallet Data Endpoints
  • /v2/private/wallet/balance Get Wallet Balance
USDT Perpetual
Market Data Endpoints
  • /v2/public/orderBook/L2 Order Book
  • /v2/public/tickers Latest Information for Symbol
  • /v2/public/symbols Query Symbol
  • /v2/public/open-interest Open Interest
  • /v2/public/big-deal Latest Big Deal
  • /v2/public/account-ratio Long-Short Ratio
Account Data Endpoints
  • /private/linear/order/create Place Active Order
  • /private/linear/order/cancel Cancel Active Order
  • /private/linear/order/cancel-all Cancel All Active Orders
  • /private/linear/position/list My Position
  • /private/linear/position/set-leverage Set Leverage
  • /private/linear/trade/execution/list User Trade Records
Wallet Data Endpoints
  • /v2/private/wallet/balance Get Wallet Balance
Inverse Future
Market Data Endpoints
  • /v2/public/orderBook/L2 Order Book
  • /v2/public/kline/list Query Kline
  • /v2/public/tickers Latest Information for Symbol
  • /v2/public/trading-records Public Trading Records
  • /v2/public/mark-price-kline Query Index Price Kline
  • /v2/public/index-price-kline Query Index Price Kline
  • /v2/public/open-interest Open Interest
  • /v2/public/big-deal Latest Big Deal
  • /v2/public/account-ratio Long-Short Ratio
Wallet Data Endpoints
  • /v2/private/wallet/balance Get Wallet Balance
Spot
Market Data Endpoints
  • /spot/v1/symbols Query Symbol
  • /spot/quote/v1/depth Order Book
  • /spot/quote/v1/depth/merged Merged Order Book
  • /spot/quote/v1/trades Public Trading Records
  • /spot/quote/v1/kline Query Kline
  • /spot/quote/v1/ticker/24hr Latest Information for Symbol
  • /spot/quote/v1/ticker/price Last Traded Price
  • /spot/quote/v1/ticker/book_ticker Best Bid/Ask Price
Account Data Endpoints
  • /spot/v1/order
    • Place Active Order
    • Get Active Order
    • Cancel Active Order
    • Fast Cancel Active Order
  • /spot/v1/order/fast Fast Cancel Active Order
  • /spot/order/batch-cancel Batch Cancel Active Order
  • /spot/order/batch-fast-cancel Batch Fast Cancel Active Order
  • /spot/order/batch-cancel-by-ids Batch Cancel Active Order By IDs

Documentation

Index

Constants

View Source
const (
	// MainNetBaseURL :
	MainNetBaseURL = "https://api.bybit.com"
	// TestNetBaseURL :
	TestNetBaseURL = "https://api-testnet.bybit.com"
)
View Source
const (
	// CoinBTC :
	CoinBTC = "BTC"
	// CoinETH :
	CoinETH = "ETH"
	// CoinEOS :
	CoinEOS = "EOS"
	// CoinXRP :
	CoinXRP = "XRP"
	// CoinUSDT :
	CoinUSDT = "USDT"
)
View Source
const (
	// SymbolInverseBTCUSD :
	SymbolInverseBTCUSD = SymbolInverse("BTCUSD")
	// SymbolInverseETHUSD :
	SymbolInverseETHUSD = SymbolInverse("ETHUSD")
	// SymbolInverseEOSUSD :
	SymbolInverseEOSUSD = SymbolInverse("EOSUSD")
	// SymbolInverseXRPUSD :
	SymbolInverseXRPUSD = SymbolInverse("XRPUSD")
)
View Source
const (
	// SymbolUSDTBTC :
	SymbolUSDTBTC = SymbolUSDT("BTCUSDT")
	// SymbolUSDTETH :
	SymbolUSDTETH = SymbolUSDT("ETHUSDT")
	// SymbolUSDTLTC :
	SymbolUSDTLTC = SymbolUSDT("LTCUSDT")
	// SymbolUSDTLINK :
	SymbolUSDTLINK = SymbolUSDT("LINKUSDT")
	// SymbolUSDTXTZ :
	SymbolUSDTXTZ = SymbolUSDT("XTZUSDT")
	// SymbolUSDTBCH :
	SymbolUSDTBCH = SymbolUSDT("BCHUSDT")
	// SymbolUSDTADA :
	SymbolUSDTADA = SymbolUSDT("ADAUSDT")
	// SymbolUSDTDOT :
	SymbolUSDTDOT = SymbolUSDT("DOTUSDT")
	// SymbolUSDTUNI :
	SymbolUSDTUNI = SymbolUSDT("UNIUSDT")
)
View Source
const (
	// SymbolSpotBTCUSDT :
	SymbolSpotBTCUSDT = SymbolSpot("BTCUSDT")
	// SymbolSpotETHUSDT :
	SymbolSpotETHUSDT = SymbolSpot("ETHUSDT")
	// SymbolSpotEOSUSDT :
	SymbolSpotEOSUSDT = SymbolSpot("EOSUSDT")
	// SymbolSpotXRPUSDT :
	SymbolSpotXRPUSDT = SymbolSpot("XRPUSDT")
	// SymbolSpotUNIUSDT :
	SymbolSpotUNIUSDT = SymbolSpot("UNIUSDT")
	// SymbolSpotBTCETH :
	SymbolSpotBTCETH = SymbolSpot("BTCETH")
	// SymbolSpotDOGEXRP :
	SymbolSpotDOGEXRP = SymbolSpot("DOGEXRP")
	// SymbolSpotXLMUSDT :
	SymbolSpotXLMUSDT = SymbolSpot("XLMUSDT")
	// SymbolSpotLTCUSDT :
	SymbolSpotLTCUSDT = SymbolSpot("LTCUSDT")
	// SymbolSpotXRPBTC :
	SymbolSpotXRPBTC = SymbolSpot("XRPBTC")
	// SymbolSpotDOGEUSDT :
	SymbolSpotDOGEUSDT = SymbolSpot("DOGEUSDT")
	// SymbolSpotBITUSDT :
	SymbolSpotBITUSDT = SymbolSpot("BITUSDT")
	// SymbolSpotMANAUSDT :
	SymbolSpotMANAUSDT = SymbolSpot("MANAUSDT")
	// SymbolSpotAXSUSDT :
	SymbolSpotAXSUSDT = SymbolSpot("AXSUSDT")
	// SymbolSpotDYDXUSDT :
	SymbolSpotDYDXUSDT = SymbolSpot("DYDXUSDT")
	// SymbolSpotPMTEST5BTC :
	SymbolSpotPMTEST5BTC = SymbolSpot("PMTEST5BTC")
	// SymbolSpotGENEUSDT :
	SymbolSpotGENEUSDT = SymbolSpot("GENEUSDT")
)
View Source
const (
	// SideNone : not defined officially
	SideNone = Side("None")
	// SideBuy :
	SideBuy = Side("Buy")
	// SideSell :
	SideSell = Side("Sell")
)
View Source
const (
	// OrderTypeLimit :
	OrderTypeLimit = OrderType("Limit")
	// OrderTypeMarket :
	OrderTypeMarket = OrderType("Market")
)
View Source
const (
	// OrderTypeSpotLimit :
	OrderTypeSpotLimit = OrderTypeSpot("LIMIT")
	// OrderTypeSpotMarket :
	OrderTypeSpotMarket = OrderTypeSpot("MARKET")
	// OrderTypeSpotLimitMaker :
	OrderTypeSpotLimitMaker = OrderTypeSpot("LIMIT_MAKER")
)
View Source
const (
	// OrderStatusCreated :
	OrderStatusCreated = OrderStatus("Created")
	// OrderStatusRejected :
	OrderStatusRejected = OrderStatus("Rejected")
	// OrderStatusNew :
	OrderStatusNew = OrderStatus("New")
	// OrderStatusPartiallyFilled :
	OrderStatusPartiallyFilled = OrderStatus("PartiallyFilled")
	// OrderStatusFilled :
	OrderStatusFilled = OrderStatus("Filled")
	// OrderStatusCancelled :
	OrderStatusCancelled = OrderStatus("Cancelled")
	// OrderStatusPendingCancel :
	OrderStatusPendingCancel = OrderStatus("PendingCancel")
)
View Source
const (
	// OrderStatusSpotNew :
	OrderStatusSpotNew = OrderStatusSpot("NEW")
	// OrderStatusSpotPartiallyFilled :
	OrderStatusSpotPartiallyFilled = OrderStatusSpot("PARTIALLY_FILLED")
	// OrderStatusSpotFilled :
	OrderStatusSpotFilled = OrderStatusSpot("FILLED")
	// OrderStatusSpotCanceled :
	OrderStatusSpotCanceled = OrderStatusSpot("CANCELED")
	// OrderStatusSpotPendingCancel :
	OrderStatusSpotPendingCancel = OrderStatusSpot("PENDING_CANCEL")
	// OrderStatusSpotPendingNew :
	OrderStatusSpotPendingNew = OrderStatusSpot("PENDING_NEW")
	// OrderStatusSpotRejected :
	OrderStatusSpotRejected = OrderStatusSpot("REJECTED")
)
View Source
const (
	// TimeInForceGoodTillCancel :
	TimeInForceGoodTillCancel = TimeInForce("GoodTillCancel")
	// TimeInForceImmediateOrCancel :
	TimeInForceImmediateOrCancel = TimeInForce("ImmediateOrCancel")
	// TimeInForceFillOrKill :
	TimeInForceFillOrKill = TimeInForce("FillOrKill")
	// TimeInForcePostOnly :
	TimeInForcePostOnly = TimeInForce("PostOnly")
)
View Source
const (
	// TimeInForceSpotGTC :
	TimeInForceSpotGTC = TimeInForceSpot("GTC")
	// TimeInForceSpotFOK :
	TimeInForceSpotFOK = TimeInForceSpot("FOK")
	// TimeInForceSpotIOC :
	TimeInForceSpotIOC = TimeInForceSpot("IOC")
)
View Source
const (
	// Interval1 :
	Interval1 = Interval("1")
	// Interval3 :
	Interval3 = Interval("3")
	// Interval5 :
	Interval5 = Interval("5")
	// Interval15 :
	Interval15 = Interval("15")
	// Interval30 :
	Interval30 = Interval("30")
	// Interval60 :
	Interval60 = Interval("60")
	// Interval120 :
	Interval120 = Interval("120")
	// Interval240 :
	Interval240 = Interval("240")
	// Interval360 :
	Interval360 = Interval("360")
	// Interval720 :
	Interval720 = Interval("720")
	// IntervalD :
	IntervalD = Interval("D")
	// IntervalW :
	IntervalW = Interval("W")
	// IntervalM :
	IntervalM = Interval("M")
)
View Source
const (
	// SpotInterval1m :
	SpotInterval1m = Interval("1m")
	// SpotInterval3m :
	SpotInterval3m = Interval("3m")
	// SpotInterval5m :
	SpotInterval5m = Interval("5m")
	// SpotInterval15m :
	SpotInterval15m = Interval("15m")
	// SpotInterval30m :
	SpotInterval30m = Interval("30m")
	// SpotInterval1h :
	SpotInterval1h = Interval("1h")
	// SpotInterval2h :
	SpotInterval2h = Interval("2h")
	// SpotInterval4h :
	SpotInterval4h = Interval("4h")
	// SpotInterval6h :
	SpotInterval6h = Interval("6h")
	// SpotInterval12h :
	SpotInterval12h = Interval("12h")
	// SpotInterval1d :
	SpotInterval1d = Interval("1d")
	// SpotInterval1w :
	SpotInterval1w = Interval("1w")
	// SpotInterval1M :
	SpotInterval1M = Interval("1M")
)
View Source
const (
	// TickDirectionPlusTick :
	TickDirectionPlusTick = TickDirection("PlusTick")
	// TickDirectionZeroPlusTick :
	TickDirectionZeroPlusTick = TickDirection("ZeroPlusTick")
	// TickDirectionMinusTick :
	TickDirectionMinusTick = TickDirection("MinusTick")
	// TickDirectionZeroMinusTick :
	TickDirectionZeroMinusTick = TickDirection("ZeroMinusTick")
)
View Source
const (
	// Period5min :
	Period5min = Period("5min")
	// Period15min :
	Period15min = Period("15min")
	// Period30min :
	Period30min = Period("30min")
	// Period1h :
	Period1h = Period("1h")
	// Period4h :
	Period4h = Period("4h")
	// Period1d :
	Period1d = Period("1d")
)
View Source
const (
	// TpSlModeFull :
	TpSlModeFull = TpSlMode("Full")
	// TpSlModePartial :
	TpSlModePartial = TpSlMode("Partial")
)
View Source
const (
	// ExecTypeTrade :
	ExecTypeTrade = ExecType("Trade")
	// ExecTypeAdlTrade :
	ExecTypeAdlTrade = ExecType("AdlTrade")
	// ExecTypeFunding :
	ExecTypeFunding = ExecType("Funding")
	// ExecTypeBustTrade :
	ExecTypeBustTrade = ExecType("BustTrade")
)
View Source
const (
	// DirectionPrev :
	DirectionPrev = Direction("prev")
	// DirectionNext :
	DirectionNext = Direction("next")
)

Variables

This section is empty.

Functions

func MinimumVolumeUSDT

func MinimumVolumeUSDT(symbol SymbolUSDT) float64

MinimumVolumeUSDT :

Types

type AccountRatioParam

type AccountRatioParam struct {
	Symbol SymbolInverse `url:"symbol"`
	Period Period        `url:"period"`

	Limit *int `url:"limit,omitempty"`
}

AccountRatioParam :

type AccountRatioResponse

type AccountRatioResponse struct {
	CommonResponse `json:",inline"`
	Result         []AccountRatioResult `json:"result"`
}

AccountRatioResponse :

type AccountRatioResult

type AccountRatioResult struct {
	Symbol    SymbolInverse `json:"symbol"`
	BuyRatio  float64       `json:"buy_ratio"`
	SellRatio float64       `json:"sell_ratio"`
	Timestamp int           `json:"timestamp"`
}

AccountRatioResult :

type AccountService

type AccountService struct {
	Client *Client
}

AccountService :

func (*AccountService) CancelLinearOrder

func (s *AccountService) CancelLinearOrder(param CancelLinearOrderParam) (*CancelLinearOrderResponse, error)

CancelLinearOrder :

func (*AccountService) CancelOrder

func (s *AccountService) CancelOrder(param CancelOrderParam) (*CancelOrderResponse, error)

CancelOrder :

func (*AccountService) CreateLinearOrder

func (s *AccountService) CreateLinearOrder(param CreateLinearOrderParam) (*CreateLinearOrderResponse, error)

CreateLinearOrder :

func (*AccountService) CreateOrder

func (s *AccountService) CreateOrder(param CreateOrderParam) (*CreateOrderResponse, error)

CreateOrder :

func (*AccountService) LinearCancelAllOrder added in v1.1.0

func (s *AccountService) LinearCancelAllOrder(param LinearCancelAllParam) (*LinearCancelAllResponse, error)

LinearCancelAllOrder : Cancel all active orders that are unfilled or partially filled. Fully filled orders cannot be cancelled.

func (*AccountService) LinearExecutionList

LinearExecutionList : NOTE(TODO) : somehow got EOF 404(path not found)

func (*AccountService) ListLinearPosition

func (s *AccountService) ListLinearPosition(symbol SymbolUSDT) (*ListLinearPositionResponse, error)

ListLinearPosition :

func (*AccountService) ListLinearPositions

func (s *AccountService) ListLinearPositions() (*ListLinearPositionsResponse, error)

ListLinearPositions :

func (*AccountService) ListOrder added in v1.1.0

func (s *AccountService) ListOrder(param ListOrderParam) (*ListOrderResponse, error)

ListOrder :

func (*AccountService) ListPosition

func (s *AccountService) ListPosition(symbol SymbolInverse) (*ListPositionResponse, error)

ListPosition :

func (*AccountService) ListPositions

func (s *AccountService) ListPositions() (*ListPositionsResponse, error)

ListPositions :

func (*AccountService) SaveLeverage

func (s *AccountService) SaveLeverage(param SaveLeverageParam) (*SaveLeverageResponse, error)

SaveLeverage :

func (*AccountService) SaveLinearLeverage

SaveLinearLeverage :

func (*AccountService) SpotDeleteOrder

func (s *AccountService) SpotDeleteOrder(param SpotDeleteOrderParam) (*SpotDeleteOrderResponse, error)

SpotDeleteOrder :

func (*AccountService) SpotDeleteOrderFast

SpotDeleteOrderFast :

func (*AccountService) SpotGetOrder

func (s *AccountService) SpotGetOrder(param SpotGetOrderParam) (*SpotGetOrderResponse, error)

SpotGetOrder :

func (*AccountService) SpotOrderBatchCancel

func (*AccountService) SpotOrderBatchCancelByIDs

func (s *AccountService) SpotOrderBatchCancelByIDs(orderIDs []string) (*SpotOrderBatchCancelByIDsResponse, error)

TODO : have bug multiple orderIds

func (*AccountService) SpotOrderBatchFastCancel

func (*AccountService) SpotPostOrder

func (s *AccountService) SpotPostOrder(param SpotPostOrderParam) (*SpotPostOrderResponse, error)

SpotPostOrder :

type Balance

type Balance struct {
	Equity           float64 `json:"equity"`
	AvailableBalance float64 `json:"available_balance"`
	UsedMargin       float64 `json:"used_margin"`
	OrderMargin      float64 `json:"order_margin"`
	PositionMargin   float64 `json:"position_margin"`
	OccClosingFee    float64 `json:"occ_closing_fee"`
	OccFundingFee    float64 `json:"occ_funding_fee"`
	WalletBalance    float64 `json:"wallet_balance"`
	RealisedPnl      float64 `json:"realised_pnl"`
	UnrealisedPnl    float64 `json:"unrealised_pnl"`
	CumRealisedPnl   float64 `json:"cum_realised_pnl"`
	GivenCash        float64 `json:"given_cash"`
	ServiceCash      float64 `json:"service_cash"`
}

Balance :

type BalanceResponse

type BalanceResponse struct {
	CommonResponse `json:",inline"`
	Result         BalanceResult `json:"result"`
}

BalanceResponse :

type BalanceResult

type BalanceResult struct {
	Balance map[Coin]Balance
}

BalanceResult :

func (*BalanceResult) UnmarshalJSON

func (r *BalanceResult) UnmarshalJSON(data []byte) error

UnmarshalJSON :

type BigDealParam

type BigDealParam struct {
	Symbol SymbolInverse `url:"symbol"`

	Limit *int `url:"limit,omitempty"`
}

BigDealParam :

type BigDealResponse

type BigDealResponse struct {
	CommonResponse `json:",inline"`
	Result         []BigDealResult `json:"result"`
}

BigDealResponse :

type BigDealResult

type BigDealResult struct {
	Symbol    SymbolInverse `json:"symbol"`
	Side      Side          `json:"side"`
	Timestamp int           `json:"timestamp"`
	Value     int           `json:"value"`
}

BigDealResult :

type CancelLinearOrder

type CancelLinearOrder struct {
	OrderID string `json:"order_id"`
}

CancelLinearOrder :

type CancelLinearOrderParam

type CancelLinearOrderParam struct {
	Symbol SymbolUSDT `json:"symbol"`

	OrderID     *string `json:"order_id,omitempty"`
	OrderLinkID *string `json:"order_link_id,omitempty"`
}

CancelLinearOrderParam :

type CancelLinearOrderResponse

type CancelLinearOrderResponse struct {
	CommonResponse `json:",inline"`
	Result         CancelLinearOrderResult `json:"result"`
}

CancelLinearOrderResponse :

type CancelLinearOrderResult

type CancelLinearOrderResult struct {
	CancelLinearOrder `json:",inline"`
}

CancelLinearOrderResult :

type CancelOrder

type CancelOrder struct {
	UserID        int           `json:"user_id"`
	OrderID       string        `json:"order_id"`
	Symbol        SymbolInverse `json:"symbol"`
	Side          Side          `json:"side"`
	OrderType     OrderType     `json:"order_type"`
	Price         float64       `json:"price"`
	Qty           float64       `json:"qty"`
	TimeInForce   TimeInForce   `json:"time_in_force"`
	OrderStatus   OrderStatus   `json:"order_status"`
	LastExecTime  float64       `json:"last_exec_time"`
	LastExecPrice float64       `json:"last_exec_price"`
	LeavesQty     float64       `json:"leaves_qty"`
	CumExecQty    float64       `json:"cum_exec_qty"`
	CumExecValue  float64       `json:"cum_exec_value"`
	CumExecFee    float64       `json:"cum_exec_fee"`
	RejectReason  string        `json:"reject_reason"`
	OrderLinkID   string        `json:"order_link_id"`
	CreatedAt     string        `json:"created_at"`
	UpdatedAt     string        `json:"updated_at"`
}

CancelOrder : so far, same as CreateOrder

type CancelOrderParam

type CancelOrderParam struct {
	Symbol SymbolInverse `json:"symbol"`

	OrderID     *string `json:"order_id,omitempty"`
	OrderLinkID *string `json:"order_link_id,omitempty"`
}

CancelOrderParam :

type CancelOrderResponse

type CancelOrderResponse struct {
	CommonResponse `json:",inline"`
	Result         CancelOrderResult `json:"result"`
}

CancelOrderResponse :

type CancelOrderResult

type CancelOrderResult struct {
	CancelOrder `json:",inline"`
}

CancelOrderResult :

type Client

type Client struct {
	BaseURL string
	Key     string
	Secret  string
}

Client :

func NewClient

func NewClient() *Client

NewClient :

func NewTestClient

func NewTestClient() *Client

NewTestClient :

func (*Client) Account

func (c *Client) Account() *AccountService

Account :

func (*Client) HasAuth

func (c *Client) HasAuth() bool

HasAuth : check has auth key and secret

func (*Client) Market

func (c *Client) Market() *MarketService

Market :

func (*Client) Wallet

func (c *Client) Wallet() *WalletService

Wallet :

func (*Client) WithAuth

func (c *Client) WithAuth(key string, secret string) *Client

WithAuth :

func (*Client) WithAuthFromEnv

func (c *Client) WithAuthFromEnv() *Client

WithAuthFromEnv :

func (*Client) WithBaseURL added in v1.1.0

func (c *Client) WithBaseURL(url string) *Client

WithBaseURL :

type Coin

type Coin string

Coin :

type CommonResponse

type CommonResponse struct {
	RetCode          int    `json:"ret_code"`
	RetMsg           string `json:"ret_msg"`
	ExtCode          string `json:"ext_code"`
	ExtInfo          string `json:"ext_info"`
	TimeNow          string `json:"time_now"`
	RateLimitStatus  int    `json:"rate_limit_status"`
	RateLimitResetMs int    `json:"rate_limit_reset_ms"`
	RateLimit        int    `json:"rate_limit"`
}

CommonResponse :

type CreateLinearOrder

type CreateLinearOrder struct {
	OrderID        string      `json:"order_id"`
	UserID         int         `json:"user_id"`
	Symbol         SymbolUSDT  `json:"symbol"`
	Side           Side        `json:"side"`
	OrderType      OrderType   `json:"order_type"`
	Price          float64     `json:"price"`
	Qty            float64     `json:"qty"`
	TimeInForce    TimeInForce `json:"time_in_force"`
	OrderStatus    OrderStatus `json:"order_status"`
	LastExecPrice  float64     `json:"last_exec_price"`
	CumExecQty     float64     `json:"cum_exec_qty"`
	CumExecValue   float64     `json:"cum_exec_value"`
	CumExecFee     float64     `json:"cum_exec_fee"`
	ReduceOnly     bool        `json:"reduce_only"`
	CloseOnTrigger bool        `json:"close_on_trigger"`
	OrderLinkID    string      `json:"order_link_id"`
	CreatedTime    string      `json:"created_time"`
	UpdatedTime    string      `json:"updated_time"`
	TakeProfit     float64     `json:"take_profit"`
	StopLoss       float64     `json:"stop_loss"`
	TpTriggerBy    string      `json:"tp_trigger_by"`
	SlTriggerBy    string      `json:"sl_trigger_by"`
}

CreateLinearOrder :

type CreateLinearOrderParam

type CreateLinearOrderParam struct {
	Side           Side        `json:"side"`
	Symbol         SymbolUSDT  `json:"symbol"`
	OrderType      OrderType   `json:"order_type"`
	Qty            float64     `json:"qty"`
	TimeInForce    TimeInForce `json:"time_in_force"`
	ReduceOnly     bool        `json:"reduce_only"`
	CloseOnTrigger bool        `json:"close_on_trigger"`

	Price       *float64 `json:"price,omitempty"`
	TakeProfit  *float64 `json:"take_profit,omitempty"`
	StopLoss    *float64 `json:"stop_loss,omitempty"`
	TpTriggerBy *string  `json:"tp_trigger_by"`
	SlTriggerBy *string  `json:"sl_trigger_by"`
	OrderLinkID *string  `json:"order_link_id,omitempty"`
}

CreateLinearOrderParam :

type CreateLinearOrderResponse

type CreateLinearOrderResponse struct {
	CommonResponse `json:",inline"`
	Result         CreateLinearOrderResult `json:"result"`
}

CreateLinearOrderResponse :

type CreateLinearOrderResult

type CreateLinearOrderResult struct {
	CreateLinearOrder `json:",inline"`
}

CreateLinearOrderResult :

type CreateOrder

type CreateOrder struct {
	UserID        int           `json:"user_id"`
	OrderID       string        `json:"order_id"`
	Symbol        SymbolInverse `json:"symbol"`
	Side          Side          `json:"side"`
	OrderType     OrderType     `json:"order_type"`
	Price         float64       `json:"price"`
	Qty           float64       `json:"qty"`
	TimeInForce   TimeInForce   `json:"time_in_force"`
	OrderStatus   OrderStatus   `json:"order_status"`
	LastExecTime  float64       `json:"last_exec_time"`
	LastExecPrice float64       `json:"last_exec_price"`
	LeavesQty     float64       `json:"leaves_qty"`
	CumExecQty    float64       `json:"cum_exec_qty"`
	CumExecValue  float64       `json:"cum_exec_value"`
	CumExecFee    float64       `json:"cum_exec_fee"`
	RejectReason  string        `json:"reject_reason"`
	OrderLinkID   string        `json:"order_link_id"`
	CreatedAt     string        `json:"created_at"`
	UpdatedAt     string        `json:"updated_at"`
}

CreateOrder :

type CreateOrderParam

type CreateOrderParam struct {
	Side        Side          `json:"side"`
	Symbol      SymbolInverse `json:"symbol"`
	OrderType   OrderType     `json:"order_type"`
	Qty         int           `json:"qty"`
	TimeInForce TimeInForce   `json:"time_in_force"`

	Price          *float64 `json:"price,omitempty"`
	TakeProfit     *float64 `json:"take_profit,omitempty"`
	StopLoss       *float64 `json:"stop_loss,omitempty"`
	ReduceOnly     *bool    `json:"reduce_only,omitempty"`
	CloseOnTrigger *bool    `json:"close_on_trigger,omitempty"`
	OrderLinkID    *string  `json:"order_link_id,omitempty"`
}

CreateOrderParam :

type CreateOrderResponse

type CreateOrderResponse struct {
	CommonResponse `json:",inline"`
	Result         CreateOrderResult `json:"result"`
}

CreateOrderResponse :

type CreateOrderResult

type CreateOrderResult struct {
	CreateOrder `json:",inline"`
}

CreateOrderResult :

type Direction added in v1.1.0

type Direction string

Direction :

type ExecType

type ExecType string

ExecType :

type IndexPriceKlineParam

type IndexPriceKlineParam struct {
	Symbol   SymbolInverse `url:"symbol"`
	Interval Interval      `url:"interval"`
	From     int           `url:"from"`

	Limit *int `url:"limit,omitempty"`
}

IndexPriceKlineParam :

type IndexPriceKlineResponse

type IndexPriceKlineResponse struct {
	CommonResponse `json:",inline"`
	Result         []IndexPriceKlineResult `json:"result"`
}

IndexPriceKlineResponse :

type IndexPriceKlineResult

type IndexPriceKlineResult struct {
	Symbol   SymbolInverse `json:"symbol"`
	Period   Period        `json:"period"`
	OpenTime int           `json:"open_time"`
	Open     string        `json:"open"`
	High     string        `json:"high"`
	Low      string        `json:"low"`
	Close    string        `json:"close"`
}

IndexPriceKlineResult :

type Interval

type Interval string

Interval :

type LeverageFilter

type LeverageFilter struct {
	MinLeverage  float64 `json:"min_leverage"`
	MaxLeverage  float64 `json:"max_leverage"`
	LeverageStep string  `json:"leverage_step"`
}

LeverageFilter :

type LinearCancelAllParam added in v1.1.0

type LinearCancelAllParam struct {
	Symbol SymbolUSDT `json:"symbol"`
}

LinearCancelAllParam : Parameters to be supplied to cancel all endpoint

type LinearCancelAllResponse added in v1.1.0

type LinearCancelAllResponse struct {
	CommonResponse `json:",inline"`
	Result         LinearCancelAllResult `json:"result"`
}

LinearCancelAllResponse : Response from cancel all endpoint

type LinearCancelAllResult added in v1.1.0

type LinearCancelAllResult []string

type LinearExecutionList

type LinearExecutionList struct {
	OrderID          string     `json:"order_id"`
	OrderLinkID      string     `json:"order_link_id"`
	Side             Side       `json:"side"`
	Symbol           SymbolUSDT `json:"symbol"`
	OrderPrice       float64    `json:"order_price"`
	OrderQty         float64    `json:"order_qty"`
	OrderType        OrderType  `json:"order_type"`
	FeeRate          float64    `json:"fee_rate"`
	ExecPrice        float64    `json:"exec_price"`
	ExecType         ExecType   `json:"exec_type"`
	ExecQty          float64    `json:"exec_qty"`
	ExecFee          float64    `json:"exec_fee"`
	ExecValue        float64    `json:"exec_value"`
	LeavesQty        float64    `json:"leaves_qty"`
	ClosedSize       float64    `json:"closed_size"`
	LastLiquidityInd string     `json:"last_liquidity_ind"`
	TradeTimeMs      float64    `json:"trade_time_ms"`
}

LinearExecutionList :

type LinearExecutionListParam

type LinearExecutionListParam struct {
	Symbol SymbolUSDT `json:"symbol"`

	StartTime *int      `json:"start_time"`
	EndTime   *int      `json:"end_time"`
	ExecType  *ExecType `json:"exec_type"`
	Page      *int      `json:"page"`
	Limit     *int      `json:"limit"`
}

LinearExecutionListParam :

type LinearExecutionListResponse

type LinearExecutionListResponse struct {
	CommonResponse `json:",inline"`
	Result         LinearExecutionListResult `json:"result"`
}

LinearExecutionListResponse :

type LinearExecutionListResult

type LinearExecutionListResult struct {
	CurrentPage          int                   `json:"current_page"`
	LinearExecutionLists []LinearExecutionList `json:"data"`
}

LinearExecutionListResult :

type LinearTickersResponse

type LinearTickersResponse struct {
	CommonResponse `json:",inline"`
	Result         []LinearTickersResult `json:"result"`
}

LinearTickersResponse :

type LinearTickersResult

type LinearTickersResult struct {
	Symbol               SymbolUSDT    `json:"symbol"`
	BidPrice             string        `json:"bid_price"`
	AskPrice             string        `json:"ask_price"`
	LastPrice            string        `json:"last_price"`
	LastTickDirection    TickDirection `json:"last_tick_direction"`
	PrevPrice24h         string        `json:"prev_price_24h"`
	Price24hPcnt         string        `json:"price_24h_pcnt"`
	HighPrice24h         string        `json:"high_price_24h"`
	LowPrice24h          string        `json:"low_price_24h"`
	PrevPrice1h          string        `json:"prev_price_1h"`
	Price1hPcnt          string        `json:"price_1h_pcnt"`
	MarkPrice            string        `json:"mark_price"`
	IndexPrice           string        `json:"index_price"`
	OpenInterest         float64       `json:"open_interest"`
	OpenValue            string        `json:"open_value"`
	TotalTurnover        string        `json:"total_turnover"`
	Turnover24h          string        `json:"turnover_24h"`
	TotalVolume          float64       `json:"total_volume"`
	Volume24h            float64       `json:"volume_24h"`
	FundingRate          string        `json:"funding_rate"`
	PredictedFundingRate string        `json:"predicted_funding_rate"`
	NextFundingTime      string        `json:"next_funding_time"`
	CountdownHour        float64       `json:"countdown_hour"`
}

LinearTickersResult :

type ListKlineParam

type ListKlineParam struct {
	Symbol   SymbolInverse `url:"symbol"`
	Interval Interval      `url:"interval"`
	From     int           `url:"from"`

	Limit *int `url:"limit,omitempty"`
}

ListKlineParam :

type ListKlineResponse

type ListKlineResponse struct {
	CommonResponse `json:",inline"`
	Result         []ListKlineResult `json:"result"`
}

ListKlineResponse :

type ListKlineResult

type ListKlineResult struct {
	Symbol   SymbolInverse `json:"symbol"`
	Interval string        `json:"interval"`
	OpenTime int           `json:"open_time"`
	Open     string        `json:"open"`
	High     string        `json:"high"`
	Low      string        `json:"low"`
	Close    string        `json:"close"`
	Volume   string        `json:"volume"`
	Turnover string        `json:"turnover"`
}

ListKlineResult :

type ListLinearPositionResponse

type ListLinearPositionResponse struct {
	CommonResponse `json:",inline"`
	Result         []ListLinearPositionResult `json:"result"`
}

ListLinearPositionResponse :

type ListLinearPositionResult

type ListLinearPositionResult struct {
	UserID              int           `json:"user_id"`
	Symbol              SymbolInverse `json:"symbol"`
	Side                Side          `json:"side"`
	Size                float64       `json:"size"`
	PositionValue       float64       `json:"position_value"`
	EntryPrice          float64       `json:"entry_price"`
	LiqPrice            float64       `json:"liq_price"`
	BustPrice           float64       `json:"bust_price"`
	Leverage            float64       `json:"leverage"`
	AutoAddMargin       float64       `json:"auto_add_margin"`
	IsIsolated          bool          `json:"is_isolated"`
	PositionMargin      float64       `json:"position_margin"`
	OccClosingFee       float64       `json:"occ_closing_fee"`
	RealisedPnl         float64       `json:"realised_pnl"`
	CumRealisedPnl      float64       `json:"cum_realised_pnl"`
	FreeQty             float64       `json:"free_qty"`
	TpSlMode            TpSlMode      `json:"tp_sl_mode"`
	DeleverageIndicator int           `json:"deleverage_indicator"`
	UnrealisedPnl       float64       `json:"unrealised_pnl"`
	RiskID              int           `json:"risk_id"`
}

ListLinearPositionResult :

type ListLinearPositionsResponse

type ListLinearPositionsResponse struct {
	CommonResponse `json:",inline"`
	Result         []ListLinearPositionsResult `json:"result"`
}

ListLinearPositionsResponse :

type ListLinearPositionsResult

type ListLinearPositionsResult struct {
	IsValid                  bool `json:"is_valid"`
	ListLinearPositionResult `json:"data,inline"`
}

ListLinearPositionsResult :

type ListOrder added in v1.1.0

type ListOrder struct {
	UserID       int           `json:"user_id"`
	Symbol       SymbolInverse `json:"symbol"`
	Side         Side          `json:"side"`
	OrderType    OrderType     `json:"order_type"`
	Price        string        `json:"price"`
	Qty          string        `json:"qty"`
	TimeInForce  TimeInForce   `json:"time_in_force"`
	OrderStatus  OrderStatus   `json:"order_status"`
	LeavesQty    string        `json:"leaves_qty"`
	LeavesValue  string        `json:"leaves_value"`
	CumExecQty   string        `json:"cum_exec_qty"`
	CumExecValue string        `json:"cum_exec_value"`
	CumExecFee   string        `json:"cum_exec_fee"`
	RejectReason string        `json:"reject_reason"`
	OrderLinkID  string        `json:"order_link_id"`
	CreatedAt    string        `json:"created_at"`
	OrderID      string        `json:"order_id"`
	TakeProfit   string        `json:"take_profit"`
	StopLoss     string        `json:"stop_loss"`
	TpTriggerBy  string        `json:"tp_trigger_by"`
	SlTriggerBy  string        `json:"sl_trigger_by"`
}

ListOrder :

type ListOrderParam added in v1.1.0

type ListOrderParam struct {
	Symbol SymbolInverse `url:"symbol"`

	OrderStatus *OrderStatus `url:"order_status,omitempty"`
	Direction   *Direction   `url:"direction,omitempty"`
	Size        *int         `url:"size,omitempty"`
	Cursor      *string      `url:"cursor,omitempty"`
}

ListOrderParam :

type ListOrderResponse added in v1.1.0

type ListOrderResponse struct {
	CommonResponse `json:",inline"`
	Result         ListOrderResult `json:"result"`
}

ListOrderResponse :

type ListOrderResult added in v1.1.0

type ListOrderResult struct {
	ListOrders []ListOrder `json:"data"`
}

ListOrderResult :

type ListPositionResponse

type ListPositionResponse struct {
	CommonResponse `json:",inline"`
	Result         ListPositionResult `json:"result"`
}

ListPositionResponse :

type ListPositionResult

type ListPositionResult struct {
	ID                  int           `json:"id"`
	UserID              int           `json:"user_id"`
	RiskID              int           `json:"risk_id"`
	Symbol              SymbolInverse `json:"symbol"`
	Side                Side          `json:"side"`
	Size                float64       `json:"size"`
	PositionValue       string        `json:"position_value"`
	EntryPrice          string        `json:"entry_price"`
	IsIsolated          bool          `json:"is_isolated"`
	AutoAddMargin       float64       `json:"auto_add_margin"`
	Leverage            string        `json:"leverage"`
	EffectiveLeverage   string        `json:"effective_leverage"`
	PositionMargin      string        `json:"position_margin"`
	LiqPrice            string        `json:"liq_price"`
	BustPrice           string        `json:"bust_price"`
	OccClosingFee       string        `json:"occ_closing_fee"`
	OccFundingFee       string        `json:"occ_funding_fee"`
	TakeProfit          string        `json:"take_profit"`
	StopLoss            string        `json:"stop_loss"`
	TrailingStop        string        `json:"trailing_stop"`
	PositionStatus      string        `json:"position_status"`
	DeleverageIndicator int           `json:"deleverage_indicator"`
	OcCalcData          string        `json:"oc_calc_data"`
	OrderMargin         string        `json:"order_margin"`
	WalletBalance       string        `json:"wallet_balance"`
	RealisedPnl         string        `json:"realised_pnl"`
	UnrealisedPnl       float64       `json:"unrealised_pnl"`
	CumRealisedPnl      string        `json:"cum_realised_pnl"`
	CrossSeq            float64       `json:"cross_seq"`
	PositionSeq         float64       `json:"position_seq"`
	CreatedAt           string        `json:"created_at"`
	UpdatedAt           string        `json:"updated_at"`
}

ListPositionResult :

type ListPositionsResponse

type ListPositionsResponse struct {
	CommonResponse `json:",inline"`
	Result         []ListPositionsResult `json:"result"`
}

ListPositionsResponse :

type ListPositionsResult

type ListPositionsResult struct {
	IsValid            bool `json:"is_valid"`
	ListPositionResult `json:"data,inline"`
}

ListPositionsResult :

type LotSizeFilter

type LotSizeFilter struct {
	MaxTradingQty float64 `json:"max_trading_qty"`
	MinTradingQty float64 `json:"min_trading_qty"`
	QtyStep       float64 `json:"qty_step"`
}

LotSizeFilter :

type MarkPriceKlineParam

type MarkPriceKlineParam struct {
	Symbol   SymbolInverse `url:"symbol"`
	Interval Interval      `url:"interval"`
	From     int           `url:"from"`

	Limit *int `url:"limit,omitempty"`
}

MarkPriceKlineParam :

type MarkPriceKlineResponse

type MarkPriceKlineResponse struct {
	CommonResponse `json:",inline"`
	Result         []MarkPriceKlineResult `json:"result"`
}

MarkPriceKlineResponse :

type MarkPriceKlineResult

type MarkPriceKlineResult struct {
	Symbol  SymbolInverse `json:"symbol"`
	Period  Period        `json:"period"`
	StartAt int           `json:"start_at"`
	Open    float64       `json:"open"`
	High    float64       `json:"high"`
	Low     float64       `json:"low"`
	Close   float64       `json:"close"`
}

MarkPriceKlineResult :

type MarketService

type MarketService struct {
	Client *Client
}

MarketService :

func (*MarketService) AccountRatio

func (s *MarketService) AccountRatio(param AccountRatioParam) (*AccountRatioResponse, error)

AccountRatio :

func (*MarketService) BigDeal

func (s *MarketService) BigDeal(param BigDealParam) (*BigDealResponse, error)

BigDeal :

func (*MarketService) IndexPriceKline

func (s *MarketService) IndexPriceKline(param IndexPriceKlineParam) (*IndexPriceKlineResponse, error)

IndexPriceKline :

func (*MarketService) LinearTickers

func (s *MarketService) LinearTickers(symbol SymbolUSDT) (*LinearTickersResponse, error)

LinearTickers :

func (*MarketService) ListKline

func (s *MarketService) ListKline(param ListKlineParam) (*ListKlineResponse, error)

ListKline :

func (*MarketService) MarkPriceKline

func (s *MarketService) MarkPriceKline(param MarkPriceKlineParam) (*MarkPriceKlineResponse, error)

MarkPriceKline :

func (*MarketService) OpenInterest

func (s *MarketService) OpenInterest(param OpenInterestParam) (*OpenInterestResponse, error)

OpenInterest :

func (*MarketService) OrderBook

func (s *MarketService) OrderBook(symbol SymbolInverse) (*OrderBookResponse, error)

OrderBook :

func (*MarketService) PremiumIndexKline

func (s *MarketService) PremiumIndexKline(param PremiumIndexKlineParam) (*PremiumIndexKlineResponse, error)

PremiumIndexKline :

func (*MarketService) SpotQuoteDepth

func (s *MarketService) SpotQuoteDepth(param SpotQuoteDepthParam) (*SpotQuoteDepthResponse, error)

SpotQuoteDepth :

func (*MarketService) SpotQuoteDepthMerged

SpotQuoteDepthMerged :

func (*MarketService) SpotQuoteKline

func (s *MarketService) SpotQuoteKline(param SpotQuoteKlineParam) (*SpotQuoteKlineResponse, error)

SpotQuoteKline :

func (*MarketService) SpotQuoteTicker24hr

func (s *MarketService) SpotQuoteTicker24hr(param SpotQuoteTicker24hrParam) (*SpotQuoteTicker24hrResponse, error)

SpotQuoteTicker24hr :

func (*MarketService) SpotQuoteTickerBookTicker

SpotQuoteTickerBookTicker :

func (*MarketService) SpotQuoteTickerPrice

SpotQuoteTickerPrice :

func (*MarketService) SpotQuoteTrades

func (s *MarketService) SpotQuoteTrades(param SpotQuoteTradesParam) (*SpotQuoteTradesResponse, error)

SpotQuoteTrades :

func (*MarketService) SpotSymbols

func (s *MarketService) SpotSymbols() (*SpotSymbolsResponse, error)

SpotSymbols :

func (*MarketService) Symbols

func (s *MarketService) Symbols() (*SymbolsResponse, error)

Symbols :

func (*MarketService) Tickers

func (s *MarketService) Tickers(symbol SymbolInverse) (*TickersResponse, error)

Tickers :

func (*MarketService) TradingRecords

func (s *MarketService) TradingRecords(param TradingRecordsParam) (*TradingRecordsResponse, error)

TradingRecords :

type OpenInterestParam

type OpenInterestParam struct {
	Symbol SymbolInverse `url:"symbol"`
	Period Period        `url:"period"`

	Limit *int `url:"limit,omitempty"`
}

OpenInterestParam :

type OpenInterestResponse

type OpenInterestResponse struct {
	CommonResponse `json:",inline"`
	Result         []OpenInterestResult `json:"result"`
}

OpenInterestResponse :

type OpenInterestResult

type OpenInterestResult struct {
	OpenInterest int           `json:"open_interest"`
	Timestamp    int           `json:"timestamp"`
	Symbol       SymbolInverse `json:"symbol"`
}

OpenInterestResult :

type OrderBookResponse

type OrderBookResponse struct {
	CommonResponse `json:",inline"`
	Result         []OrderBookResult `json:"result"`
}

OrderBookResponse :

type OrderBookResult

type OrderBookResult struct {
	Symbol SymbolInverse `json:"symbol"`
	Price  string        `json:"price"`
	Size   float64       `json:"size"`
	Side   Side          `json:"side"`
}

OrderBookResult :

type OrderStatus

type OrderStatus string

OrderStatus :

type OrderStatusSpot

type OrderStatusSpot string

OrderStatusSpot :

type OrderType

type OrderType string

OrderType :

type OrderTypeSpot

type OrderTypeSpot string

OrderTypeSpot :

type Period

type Period string

Period :

type PremiumIndexKlineParam

type PremiumIndexKlineParam struct {
	Symbol   SymbolInverse `url:"symbol"`
	Interval Interval      `url:"interval"`
	From     int           `url:"from"`

	Limit *int `url:"limit,omitempty"`
}

PremiumIndexKlineParam :

type PremiumIndexKlineResponse

type PremiumIndexKlineResponse struct {
	CommonResponse `json:",inline"`
	Result         []PremiumIndexKlineResult `json:"result"`
}

PremiumIndexKlineResponse :

type PremiumIndexKlineResult

type PremiumIndexKlineResult struct {
	Symbol   SymbolInverse `json:"symbol"`
	Period   Period        `json:"period"`
	OpenTime int           `json:"open_time"`
	Open     string        `json:"open"`
	High     string        `json:"high"`
	Low      string        `json:"low"`
	Close    string        `json:"close"`
}

PremiumIndexKlineResult :

type PriceFilter

type PriceFilter struct {
	MinPrice string `json:"min_price"`
	MaxPrice string `json:"max_price"`
	TickSize string `json:"tick_size"`
}

PriceFilter :

type SaveLeverageParam

type SaveLeverageParam struct {
	Symbol   SymbolInverse `json:"symbol"`
	Leverage float64       `json:"leverage"`
}

SaveLeverageParam :

type SaveLeverageResponse

type SaveLeverageResponse struct {
	CommonResponse `json:",inline"`
	Result         float64 `json:"result"`
}

SaveLeverageResponse :

type SaveLinearLeverageParam

type SaveLinearLeverageParam struct {
	Symbol       SymbolUSDT `json:"symbol"`
	BuyLeverage  float64    `json:"buy_leverage"`
	SellLeverage float64    `json:"sell_leverage"`
}

SaveLinearLeverageParam :

type SaveLinearLeverageResponse

type SaveLinearLeverageResponse struct {
	CommonResponse `json:",inline"`
}

SaveLinearLeverageResponse :

type Side

type Side string

Side :

type SpotDeleteOrderFastParam

type SpotDeleteOrderFastParam struct {
	Symbol SymbolSpot `url:"symbolId"`

	OrderID     *string `url:"orderId,omitempty"`
	OrderLinkID *string `url:"orderLinkId,omitempty"`
}

type SpotDeleteOrderFastResponse

type SpotDeleteOrderFastResponse struct {
	CommonResponse `json:",inline"`
	Result         SpotDeleteOrderFastResult `json:"result"`
}

type SpotDeleteOrderFastResult

type SpotDeleteOrderFastResult struct {
	IsCancelled bool `json:"isCancelled"`
}

type SpotDeleteOrderParam

type SpotDeleteOrderParam struct {
	OrderID     *string `url:"orderId,omitempty"`
	OrderLinkID *string `url:"orderLinkId,omitempty"`
}

SpotDeleteOrderParam :

type SpotDeleteOrderResponse

type SpotDeleteOrderResponse struct {
	CommonResponse `json:",inline"`
	Result         SpotDeleteOrderResult `json:"result"`
}

SpotDeleteOrderResponse :

type SpotDeleteOrderResult

type SpotDeleteOrderResult struct {
	OrderId      string `json:"orderId"`
	OrderLinkId  string `json:"orderLinkId"`
	Symbol       string `json:"symbol"`
	Status       string `json:"status"`
	AccountId    string `json:"accountId"`
	TransactTime string `json:"transactTime"`
	Price        string `json:"price"`
	OrigQty      string `json:"origQty"`
	ExecutedQty  string `json:"executedQty"`
	TimeInForce  string `json:"timeInForce"`
	Type         string `json:"type"`
	Side         string `json:"side"`
}

SpotDeleteOrderResult :

type SpotGetOrderParam

type SpotGetOrderParam struct {
	OrderID     *string `url:"orderId,omitempty"`
	OrderLinkID *string `url:"orderLinkId,omitempty"`
}

SpotGetOrderParam :

type SpotGetOrderResponse

type SpotGetOrderResponse struct {
	CommonResponse `json:",inline"`
	Result         SpotGetOrderResult `json:"result"`
}

SpotGetOrderResponse :

type SpotGetOrderResult

type SpotGetOrderResult struct {
	AccountId           string `json:"accountId"`
	ExchangeId          string `json:"exchangeId"`
	Symbol              string `json:"symbol"`
	SymbolName          string `json:"symbolName"`
	OrderLinkId         string `json:"orderLinkId"`
	OrderId             string `json:"orderId"`
	Price               string `json:"price"`
	OrigQty             string `json:"origQty"`
	ExecutedQty         string `json:"executedQty"`
	CummulativeQuoteQty string `json:"cummulativeQuoteQty"`
	AvgPrice            string `json:"avgPrice"`
	Status              string `json:"status"`
	TimeInForce         string `json:"timeInForce"`
	Type                string `json:"type"`
	Side                string `json:"side"`
	StopPrice           string `json:"stopPrice"`
	IcebergQty          string `json:"icebergQty"`
	Time                string `json:"time"`
	UpdateTime          string `json:"updateTime"`
	IsWorking           bool   `json:"isWorking"`
}

SpotGetOrderResult :

type SpotInterval

type SpotInterval string

SpotInterval :

type SpotOrderBatchCancelByIDsResponse

type SpotOrderBatchCancelByIDsResponse struct {
	CommonResponse `json:",inline"`
	Result         []SpotOrderBatchCancelByIDsResult `json:"result"`
}

type SpotOrderBatchCancelByIDsResult

type SpotOrderBatchCancelByIDsResult struct {
	OrderID string `json:"orderId"`
	Code    string `json:"code"`
}

type SpotOrderBatchCancelParam

type SpotOrderBatchCancelParam struct {
	Symbol SymbolSpot `url:"symbolId"`

	Side  *Side           `url:"side,omitempty"`
	Types []OrderTypeSpot `url:"orderTypes,omitempty" del:","`
}

type SpotOrderBatchCancelResponse

type SpotOrderBatchCancelResponse struct {
	CommonResponse `json:",inline"`
	Result         SpotOrderBatchCancelResult `json:"result"`
}

type SpotOrderBatchCancelResult

type SpotOrderBatchCancelResult struct {
	Success bool `json:"success"`
}

type SpotOrderBatchFastCancelParam

type SpotOrderBatchFastCancelParam struct {
	Symbol SymbolSpot `url:"symbolId"`

	Side  *Side           `url:"side,omitempty"`
	Types []OrderTypeSpot `url:"orderTypes,omitempty" del:","`
}

type SpotOrderBatchFastCancelResponse

type SpotOrderBatchFastCancelResponse struct {
	CommonResponse `json:",inline"`
	Result         SpotOrderBatchFastCancelResult `json:"result"`
}

type SpotOrderBatchFastCancelResult

type SpotOrderBatchFastCancelResult struct {
	Success bool `json:"success"`
}

type SpotPostOrderParam

type SpotPostOrderParam struct {
	Symbol SymbolSpot    `url:"symbol"`
	Qty    float64       `url:"qty"`
	Side   Side          `url:"side"`
	Type   OrderTypeSpot `url:"type"`

	TimeInForce *TimeInForceSpot `url:"timeInForce,omitempty"`
	Price       *float64         `url:"price,omitempty"`
	OrderLinkID *string          `url:"orderLinkId,omitempty"`
}

SpotPostOrderParam :

type SpotPostOrderResponse

type SpotPostOrderResponse struct {
	CommonResponse `json:",inline"`
	Result         SpotPostOrderResult `json:"result"`
}

SpotPostOrderResponse :

type SpotPostOrderResult

type SpotPostOrderResult struct {
	OrderID      string          `json:"orderId"`
	OrderLinkID  string          `json:"orderLinkId"`
	Symbol       string          `json:"symbol"`
	TransactTime string          `json:"transactTime"`
	Price        string          `json:"price"`
	OrigQty      string          `json:"origQty"`
	Type         OrderTypeSpot   `json:"type"`
	Side         string          `json:"side"`
	Status       OrderStatusSpot `json:"status"`
	TimeInForce  TimeInForceSpot `json:"timeInForce"`
	AccountID    string          `json:"accountId"`
	SymbolName   string          `json:"symbolName"`
	ExecutedQty  string          `json:"executedQty"`
}

SpotPostOrderResult :

type SpotQuoteDepthBidAsk

type SpotQuoteDepthBidAsk struct {
	Price    string
	Quantity string
}

SpotQuoteDepthBidAsk :

type SpotQuoteDepthBidsAsks

type SpotQuoteDepthBidsAsks []SpotQuoteDepthBidAsk

SpotQuoteDepthBidsAsks :

func (*SpotQuoteDepthBidsAsks) UnmarshalJSON

func (r *SpotQuoteDepthBidsAsks) UnmarshalJSON(data []byte) error

UnmarshalJSON :

type SpotQuoteDepthMergedParam

type SpotQuoteDepthMergedParam struct {
	Symbol SymbolSpot `url:"symbol"`

	Scale *int `url:"scale,omitempty"`
	Limit *int `url:"limit,omitempty"`
}

SpotQuoteDepthMergedParam :

type SpotQuoteDepthMergedResponse

type SpotQuoteDepthMergedResponse struct {
	CommonResponse `json:",inline"`
	Result         SpotQuoteDepthMergedResult `json:"result"`
}

SpotQuoteDepthMergedResponse :

type SpotQuoteDepthMergedResult

type SpotQuoteDepthMergedResult struct {
	Time int                    `json:"time"`
	Bids SpotQuoteDepthBidsAsks `json:"bids"`
	Asks SpotQuoteDepthBidsAsks `json:"asks"`
}

SpotQuoteDepthMergedResult :

type SpotQuoteDepthParam

type SpotQuoteDepthParam struct {
	Symbol SymbolSpot `url:"symbol"`

	Limit *int `url:"limit,omitempty"`
}

SpotQuoteDepthParam :

type SpotQuoteDepthResponse

type SpotQuoteDepthResponse struct {
	CommonResponse `json:",inline"`
	Result         SpotQuoteDepthResult `json:"result"`
}

SpotQuoteDepthResponse :

type SpotQuoteDepthResult

type SpotQuoteDepthResult struct {
	Time int                    `json:"time"`
	Bids SpotQuoteDepthBidsAsks `json:"bids"`
	Asks SpotQuoteDepthBidsAsks `json:"asks"`
}

SpotQuoteDepthResult :

type SpotQuoteKline

type SpotQuoteKline struct {
	StartTime        int
	Open             string
	High             string
	Low              string
	Close            string
	Volume           string
	EndTime          int
	QuoteAssetVolume string
	Trades           int
	TakerBaseVolume  string
	TakerQuoteVolume string
}

SpotQuoteKline :

type SpotQuoteKlineParam

type SpotQuoteKlineParam struct {
	Symbol   SymbolSpot `url:"symbol"`
	Interval Interval   `url:"interval"`

	Limit     *int `url:"limit,omitempty"`
	StartTime *int `url:"startTime,omitempty"`
	EndTime   *int `url:"endTime,omitempty"`
}

SpotQuoteKlineParam :

type SpotQuoteKlineResponse

type SpotQuoteKlineResponse struct {
	CommonResponse `json:",inline"`
	Result         []SpotQuoteKlineResult `json:"result"`
}

SpotQuoteKlineResponse :

type SpotQuoteKlineResult

type SpotQuoteKlineResult struct {
	SpotQuoteKline SpotQuoteKline
}

SpotQuoteKlineResult :

func (*SpotQuoteKlineResult) UnmarshalJSON

func (r *SpotQuoteKlineResult) UnmarshalJSON(data []byte) error

UnmarshalJSON :

type SpotQuoteTicker24hrParam

type SpotQuoteTicker24hrParam struct {
	Symbol *SymbolSpot `url:"symbol,omitempty"`
}

SpotQuoteTicker24hrParam :

type SpotQuoteTicker24hrResponse

type SpotQuoteTicker24hrResponse struct {
	CommonResponse `json:",inline"`
	Result         SpotQuoteTicker24hrResult `json:"result"`
}

SpotQuoteTicker24hrResponse :

type SpotQuoteTicker24hrResult

type SpotQuoteTicker24hrResult struct {
	Time         int    `json:"time"`
	Symbol       string `json:"symbol"`
	BestBidPrice string `json:"bestBidPrice"`
	BestAskPrice string `json:"bestAskPrice"`
	LastPrice    string `json:"lastPrice"`
	OpenPrice    string `json:"openPrice"`
	HighPrice    string `json:"highPrice"`
	LowPrice     string `json:"lowPrice"`
	Volume       string `json:"volume"`
	QuoteVolume  string `json:"quoteVolume"`
}

SpotQuoteTicker24hrResult :

type SpotQuoteTickerBookTickerParam

type SpotQuoteTickerBookTickerParam struct {
	Symbol *SymbolSpot `url:"symbol,omitempty"`
}

SpotQuoteTickerBookTickerParam :

type SpotQuoteTickerBookTickerResponse

type SpotQuoteTickerBookTickerResponse struct {
	CommonResponse `json:",inline"`
	Result         SpotQuoteTickerBookTickerResult `json:"result"`
}

SpotQuoteTickerBookTickerResponse :

type SpotQuoteTickerBookTickerResult

type SpotQuoteTickerBookTickerResult struct {
	Symbol   string `json:"symbol"`
	BidPrice string `json:"bidPrice"`
	BidQty   string `json:"bidQty"`
	AskPrice string `json:"askPrice"`
	AskQty   string `json:"askQty"`
	Time     int    `json:"time"`
}

SpotQuoteTickerBookTickerResult :

type SpotQuoteTickerPriceParam

type SpotQuoteTickerPriceParam struct {
	Symbol *SymbolSpot `url:"symbol,omitempty"`
}

SpotQuoteTickerPriceParam :

type SpotQuoteTickerPriceResponse

type SpotQuoteTickerPriceResponse struct {
	CommonResponse `json:",inline"`
	Result         SpotQuoteTickerPriceResult `json:"result"`
}

SpotQuoteTickerPriceResponse :

type SpotQuoteTickerPriceResult

type SpotQuoteTickerPriceResult struct {
	Symbol string `json:"symbol"`
	Price  string `json:"price"`
}

SpotQuoteTickerPriceResult :

type SpotQuoteTradesParam

type SpotQuoteTradesParam struct {
	Symbol SymbolSpot `url:"symbol"`

	Limit *int `url:"limit,omitempty"`
}

SpotQuoteTradesParam :

type SpotQuoteTradesResponse

type SpotQuoteTradesResponse struct {
	CommonResponse `json:",inline"`
	Result         []SpotQuoteTradesResult `json:"result"`
}

SpotQuoteTradesResponse :

type SpotQuoteTradesResult

type SpotQuoteTradesResult struct {
	Price        string `json:"price"`
	Time         int    `json:"time"`
	Qty          string `json:"qty"`
	IsBuyerMaker bool   `json:"isBuyerMaker"`
}

SpotQuoteTradesResult :

type SpotSymbolsResponse

type SpotSymbolsResponse struct {
	CommonResponse `json:",inline"`
	Result         []SpotSymbolsResult `json:"result"`
}

SpotSymbolsResponse :

type SpotSymbolsResult

type SpotSymbolsResult struct {
	Name              string `json:"name"`
	Alias             string `json:"alias"`
	BaseCurrency      string `json:"baseCurrency"`
	QuoteCurrency     string `json:"quoteCurrency"`
	BasePrecision     string `json:"basePrecision"`
	QuotePrecision    string `json:"quotePrecision"`
	MinTradeQuantity  string `json:"minTradeQuantity"`
	MinTradeAmount    string `json:"minTradeAmount"`
	MinPricePrecision string `json:"minPricePrecision"`
	MaxTradeQuantity  string `json:"maxTradeQuantity"`
	MaxTradeAmount    string `json:"maxTradeAmount"`
	Category          int    `json:"category"`
}

SpotSymbolsResult :

type SymbolInverse

type SymbolInverse string

SymbolInverse :

type SymbolSpot

type SymbolSpot string

SymbolSpot :

type SymbolUSDT

type SymbolUSDT string

SymbolUSDT :

type SymbolsResponse

type SymbolsResponse struct {
	CommonResponse `json:",inline"`
	Result         []SymbolsResult `json:"result"`
}

SymbolsResponse :

type SymbolsResult

type SymbolsResult struct {
	Name           string         `json:"name"`
	BaseCurrency   string         `json:"base_currency"`
	QuoteCurrency  string         `json:"quote_currency"`
	PriceScale     float64        `json:"price_scale"`
	TakerFee       string         `json:"taker_fee"`
	MakerFee       string         `json:"maker_fee"`
	LeverageFilter LeverageFilter `json:"leverage_filter"`
	PriceFilter    PriceFilter    `json:"price_filter"`
	LotSizeFilter  LotSizeFilter  `json:"lot_size_filter"`
}

SymbolsResult :

type TickDirection

type TickDirection string

TickDirection :

type TickersResponse

type TickersResponse struct {
	CommonResponse `json:",inline"`
	Result         []TickersResult `json:"result"`
}

TickersResponse :

type TickersResult

type TickersResult struct {
	Symbol               SymbolInverse `json:"symbol"`
	BidPrice             string        `json:"bid_price"`
	AskPrice             string        `json:"ask_price"`
	LastPrice            string        `json:"last_price"`
	LastTickDirection    TickDirection `json:"last_tick_direction"`
	PrevPrice24h         string        `json:"prev_price_24h"`
	Price24hPcnt         string        `json:"price_24h_pcnt"`
	HighPrice24h         string        `json:"high_price_24h"`
	LowPrice24h          string        `json:"low_price_24h"`
	PrevPrice1h          string        `json:"prev_price_1h"`
	Price1hPcnt          string        `json:"price_1h_pcnt"`
	MarkPrice            string        `json:"mark_price"`
	IndexPrice           string        `json:"index_price"`
	OpenInterest         float64       `json:"open_interest"`
	OpenValue            string        `json:"open_value"`
	TotalTurnover        string        `json:"total_turnover"`
	Turnover24h          string        `json:"turnover_24h"`
	TotalVolume          float64       `json:"total_volume"`
	Volume24h            float64       `json:"volume_24h"`
	FundingRate          string        `json:"funding_rate"`
	PredictedFundingRate string        `json:"predicted_funding_rate"`
	NextFundingTime      string        `json:"next_funding_time"`
	CountdownHour        float64       `json:"countdown_hour"`
}

TickersResult :

type TimeInForce

type TimeInForce string

TimeInForce :

type TimeInForceSpot

type TimeInForceSpot string

TimeInForceSpot :

type TpSlMode

type TpSlMode string

TpSlMode :

type TradingRecordsParam

type TradingRecordsParam struct {
	Symbol SymbolInverse `url:"symbol"`

	From  *int `url:"from,omitempty"`
	Limit *int `url:"limit,omitempty"`
}

TradingRecordsParam :

type TradingRecordsResponse

type TradingRecordsResponse struct {
	CommonResponse `json:",inline"`
	Result         []TradingRecordsResult `json:"result"`
}

TradingRecordsResponse :

type TradingRecordsResult

type TradingRecordsResult struct {
	ID     float64       `json:"id"`
	Symbol SymbolInverse `json:"symbol"`
	Price  float64       `json:"price"`
	Qty    float64       `json:"qty"`
	Side   Side          `json:"side"`
	Time   string        `json:"time"`
}

TradingRecordsResult :

type WalletService

type WalletService struct {
	Client *Client
}

WalletService :

func (*WalletService) Balance

func (s *WalletService) Balance(coin Coin) (*BalanceResponse, error)

Balance :

Directories

Path Synopsis
integrationtest

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL