binance

package
v0.0.0-...-2fde92b Latest Latest
Warning

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

Go to latest
Published: Mar 6, 2022 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	GLOBAL_API_BASE_URL = "https://api.binance.com"
	US_API_BASE_URL     = "https://api.binance.us"
	JE_API_BASE_URL     = "https://api.binance.je"

	TICKER_URI             = "ticker/24hr?symbol=%s"
	TICKERS_URI            = "ticker/allBookTickers"
	DEPTH_URI              = "depth?symbol=%s&limit=%d"
	ACCOUNT_URI            = "account?"
	ORDER_URI              = "order"
	UNFINISHED_ORDERS_INFO = "openOrders?"
	KLINE_URI              = "klines"
	SERVER_TIME_URL        = "time"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AccountResponse

type AccountResponse struct {
	FeeTier  int  `json:"feeTier"`
	CanTrade bool `json:"canTrade"`
	Assets   []struct {
		Asset            string  `json:"asset"`
		WalletBalance    float64 `json:"walletBalance,string"`
		MarginBalance    float64 `json:"marginBalance,string"`
		UnrealizedProfit float64 `json:"unrealizedProfit,string"`
		MaintMargin      float64 `json:"maintMargin,string"`
	} `json:"assets"`
}

type BaseResponse

type BaseResponse struct {
	Code int    `json:"code"`
	Msg  string `json:"msg"`
}

type Binance

type Binance struct {
	*ExchangeInfo
	// contains filtered or unexported fields
}

func New

func New(client *http.Client, api_key, secret_key string) *Binance

func NewWithConfig

func NewWithConfig(config *APIConfig) *Binance

func (*Binance) CancelOrder

func (bn *Binance) CancelOrder(orderId string, currencyPair CurrencyPair) (bool, error)

func (*Binance) GetAccount

func (bn *Binance) GetAccount() (*Account, error)

func (*Binance) GetDepth

func (bn *Binance) GetDepth(size int, currencyPair CurrencyPair) (*Depth, error)

func (*Binance) GetExchangeInfo

func (bn *Binance) GetExchangeInfo() (*ExchangeInfo, error)

func (*Binance) GetExchangeName

func (bn *Binance) GetExchangeName() string

func (*Binance) GetKlineRecords

func (bn *Binance) GetKlineRecords(currency CurrencyPair, period KlinePeriod, size int, optional ...OptionalParameter) ([]Kline, error)

func (*Binance) GetOneOrder

func (bn *Binance) GetOneOrder(orderId string, currencyPair CurrencyPair) (*Order, error)

func (*Binance) GetOrderHistorys

func (bn *Binance) GetOrderHistorys(currency CurrencyPair, optional ...OptionalParameter) ([]Order, error)

func (*Binance) GetTicker

func (bn *Binance) GetTicker(currency CurrencyPair) (*Ticker, error)

func (*Binance) GetTradeSymbol

func (bn *Binance) GetTradeSymbol(currencyPair CurrencyPair) (*TradeSymbol, error)

func (*Binance) GetTrades

func (bn *Binance) GetTrades(currencyPair CurrencyPair, since int64) ([]Trade, error)

非个人,整个交易所的交易记录 注意:since is fromId

func (*Binance) GetUnfinishOrders

func (bn *Binance) GetUnfinishOrders(currencyPair CurrencyPair) ([]Order, error)

func (*Binance) LimitBuy

func (bn *Binance) LimitBuy(amount, price string, currencyPair CurrencyPair, opt ...LimitOrderOptionalParameter) (*Order, error)

func (*Binance) LimitSell

func (bn *Binance) LimitSell(amount, price string, currencyPair CurrencyPair, opt ...LimitOrderOptionalParameter) (*Order, error)

func (*Binance) MarketBuy

func (bn *Binance) MarketBuy(amount, price string, currencyPair CurrencyPair) (*Order, error)

func (*Binance) MarketSell

func (bn *Binance) MarketSell(amount, price string, currencyPair CurrencyPair) (*Order, error)

func (*Binance) Ping

func (bn *Binance) Ping() bool

type BinanceFutures

type BinanceFutures struct {
	// contains filtered or unexported fields
}

func NewBinanceFutures

func NewBinanceFutures(config *APIConfig) *BinanceFutures

func (*BinanceFutures) FutureCancelOrder

func (bs *BinanceFutures) FutureCancelOrder(currencyPair CurrencyPair, contractType, orderId string) (bool, error)

func (*BinanceFutures) GetContractValue

func (bs *BinanceFutures) GetContractValue(currencyPair CurrencyPair) (float64, error)

func (*BinanceFutures) GetDeliveryTime

func (bs *BinanceFutures) GetDeliveryTime() (int, int, int, int)

func (*BinanceFutures) GetExchangeInfo

func (bs *BinanceFutures) GetExchangeInfo()

func (*BinanceFutures) GetExchangeName

func (bs *BinanceFutures) GetExchangeName() string

func (*BinanceFutures) GetFee

func (bs *BinanceFutures) GetFee() (float64, error)

func (*BinanceFutures) GetFutureDepth

func (bs *BinanceFutures) GetFutureDepth(currencyPair CurrencyPair, contractType string, size int) (*Depth, error)

func (*BinanceFutures) GetFutureEstimatedPrice

func (bs *BinanceFutures) GetFutureEstimatedPrice(currencyPair CurrencyPair) (float64, error)

func (*BinanceFutures) GetFutureIndex

func (bs *BinanceFutures) GetFutureIndex(currencyPair CurrencyPair) (float64, error)

func (*BinanceFutures) GetFutureOrder

func (bs *BinanceFutures) GetFutureOrder(orderId string, currencyPair CurrencyPair, contractType string) (*FutureOrder, error)

func (*BinanceFutures) GetFutureOrderHistory

func (bs *BinanceFutures) GetFutureOrderHistory(pair CurrencyPair, contractType string, optional ...OptionalParameter) ([]FutureOrder, error)

func (*BinanceFutures) GetFutureOrders

func (bs *BinanceFutures) GetFutureOrders(orderIds []string, currencyPair CurrencyPair, contractType string) ([]FutureOrder, error)

func (*BinanceFutures) GetFuturePosition

func (bs *BinanceFutures) GetFuturePosition(currencyPair CurrencyPair, contractType string) ([]FuturePosition, error)

func (*BinanceFutures) GetFutureTicker

func (bs *BinanceFutures) GetFutureTicker(currencyPair CurrencyPair, contractType string) (*Ticker, error)

func (*BinanceFutures) GetFutureUserinfo

func (bs *BinanceFutures) GetFutureUserinfo(currencyPair ...CurrencyPair) (*FutureAccount, error)

func (*BinanceFutures) GetKlineRecords

func (bs *BinanceFutures) GetKlineRecords(contractType string, currency CurrencyPair, period KlinePeriod, size int, opt ...OptionalParameter) ([]FutureKline, error)

func (*BinanceFutures) GetTrades

func (bs *BinanceFutures) GetTrades(contractType string, currencyPair CurrencyPair, since int64) ([]Trade, error)

func (*BinanceFutures) GetUnfinishFutureOrders

func (bs *BinanceFutures) GetUnfinishFutureOrders(currencyPair CurrencyPair, contractType string) ([]FutureOrder, error)

func (*BinanceFutures) LimitFuturesOrder

func (bs *BinanceFutures) LimitFuturesOrder(currencyPair CurrencyPair, contractType, price, amount string, openType int, opt ...LimitOrderOptionalParameter) (*FutureOrder, error)

func (*BinanceFutures) MarketFuturesOrder

func (bs *BinanceFutures) MarketFuturesOrder(currencyPair CurrencyPair, contractType, amount string, openType int) (*FutureOrder, error)

func (*BinanceFutures) PlaceFutureOrder

func (bs *BinanceFutures) PlaceFutureOrder(currencyPair CurrencyPair, contractType, price, amount string, openType, matchPrice int, leverRate float64) (string, error)

func (*BinanceFutures) SetBaseUri

func (bs *BinanceFutures) SetBaseUri(uri string)

type BinanceSwap

type BinanceSwap struct {
	Binance
	// contains filtered or unexported fields
}

func NewBinanceSwap

func NewBinanceSwap(config *APIConfig) *BinanceSwap

func (*BinanceSwap) FutureCancelAllOrders

func (bs *BinanceSwap) FutureCancelAllOrders(currencyPair CurrencyPair, contractType string) (bool, error)

func (*BinanceSwap) FutureCancelOrder

func (bs *BinanceSwap) FutureCancelOrder(currencyPair CurrencyPair, contractType, orderId string) (bool, error)

func (*BinanceSwap) FutureCancelOrders

func (bs *BinanceSwap) FutureCancelOrders(currencyPair CurrencyPair, contractType string, orderIdList []string) (bool, error)

func (*BinanceSwap) GetContractValue

func (bs *BinanceSwap) GetContractValue(currencyPair CurrencyPair) (float64, error)

func (*BinanceSwap) GetDeliveryTime

func (bs *BinanceSwap) GetDeliveryTime() (int, int, int, int)

func (*BinanceSwap) GetExchangeName

func (bs *BinanceSwap) GetExchangeName() string

func (*BinanceSwap) GetFee

func (bs *BinanceSwap) GetFee() (float64, error)

func (*BinanceSwap) GetFutureDepth

func (bs *BinanceSwap) GetFutureDepth(currency CurrencyPair, contractType string, size int) (*Depth, error)

func (*BinanceSwap) GetFutureEstimatedPrice

func (bs *BinanceSwap) GetFutureEstimatedPrice(currencyPair CurrencyPair) (float64, error)

func (*BinanceSwap) GetFutureIndex

func (bs *BinanceSwap) GetFutureIndex(currencyPair CurrencyPair) (float64, error)

func (*BinanceSwap) GetFutureOrder

func (bs *BinanceSwap) GetFutureOrder(orderId string, currencyPair CurrencyPair, contractType string) (*FutureOrder, error)

func (*BinanceSwap) GetFutureOrderHistory

func (bs *BinanceSwap) GetFutureOrderHistory(pair CurrencyPair, contractType string, optional ...OptionalParameter) ([]FutureOrder, error)

func (*BinanceSwap) GetFutureOrders

func (bs *BinanceSwap) GetFutureOrders(orderIds []string, currencyPair CurrencyPair, contractType string) ([]FutureOrder, error)

func (*BinanceSwap) GetFuturePosition

func (bs *BinanceSwap) GetFuturePosition(currencyPair CurrencyPair, contractType string) ([]FuturePosition, error)

func (*BinanceSwap) GetFutureTicker

func (bs *BinanceSwap) GetFutureTicker(currency CurrencyPair, contractType string) (*Ticker, error)

func (*BinanceSwap) GetFutureUserinfo

func (bs *BinanceSwap) GetFutureUserinfo(currencyPair ...CurrencyPair) (*FutureAccount, error)

func (*BinanceSwap) GetKlineRecords

func (bs *BinanceSwap) GetKlineRecords(contractType string, currency CurrencyPair, period KlinePeriod, size int, opt ...OptionalParameter) ([]FutureKline, error)

func (*BinanceSwap) GetServerTime

func (bs *BinanceSwap) GetServerTime() (int64, error)

func (*BinanceSwap) GetTrades

func (bs *BinanceSwap) GetTrades(contractType string, currencyPair CurrencyPair, since int64) ([]Trade, error)

func (*BinanceSwap) GetUnfinishFutureOrders

func (bs *BinanceSwap) GetUnfinishFutureOrders(currencyPair CurrencyPair, contractType string) ([]FutureOrder, error)

func (*BinanceSwap) LimitFuturesOrder

func (bs *BinanceSwap) LimitFuturesOrder(currencyPair CurrencyPair, contractType, price, amount string, openType int, opt ...LimitOrderOptionalParameter) (*FutureOrder, error)

func (*BinanceSwap) MarketFuturesOrder

func (bs *BinanceSwap) MarketFuturesOrder(currencyPair CurrencyPair, contractType, amount string, openType int) (*FutureOrder, error)

func (*BinanceSwap) Ping

func (bs *BinanceSwap) Ping() bool

func (*BinanceSwap) PlaceFutureOrder

func (bs *BinanceSwap) PlaceFutureOrder(currencyPair CurrencyPair, contractType, price, amount string, openType, matchPrice int, leverRate float64) (string, error)

func (*BinanceSwap) PlaceFutureOrder2

func (bs *BinanceSwap) PlaceFutureOrder2(currencyPair CurrencyPair, contractType, price, amount string, openType, matchPrice int, leverRate float64) (*FutureOrder, error)

func (*BinanceSwap) SetBaseUri

func (bs *BinanceSwap) SetBaseUri(uri string)

func (*BinanceSwap) Transfer

func (bs *BinanceSwap) Transfer(currency Currency, transferType int, amount float64) (int64, error)

@deprecated please call the Wallet api

type ExchangeInfo

type ExchangeInfo struct {
	Timezone        string        `json:"timezone"`
	ServerTime      int           `json:"serverTime"`
	ExchangeFilters []interface{} `json:"exchangeFilters,omitempty"`
	RateLimits      []RateLimit   `json:"rateLimits"`
	Symbols         []TradeSymbol `json:"symbols"`
}

type Filter

type Filter struct {
	FilterType          string  `json:"filterType"`
	MaxPrice            float64 `json:"maxPrice,string"`
	MinPrice            float64 `json:"minPrice,string"`
	TickSize            float64 `json:"tickSize,string"`
	MultiplierUp        float64 `json:"multiplierUp,string"`
	MultiplierDown      float64 `json:"multiplierDown,string"`
	AvgPriceMins        int     `json:"avgPriceMins"`
	MinQty              float64 `json:"minQty,string"`
	MaxQty              float64 `json:"maxQty,string"`
	StepSize            float64 `json:"stepSize,string"`
	MinNotional         float64 `json:"minNotional,string"`
	ApplyToMarket       bool    `json:"applyToMarket"`
	Limit               int     `json:"limit"`
	MaxNumAlgoOrders    int     `json:"maxNumAlgoOrders"`
	MaxNumIcebergOrders int     `json:"maxNumIcebergOrders"`
	MaxNumOrders        int     `json:"maxNumOrders"`
}

type FuturesWs

type FuturesWs struct {
	// contains filtered or unexported fields
}

func NewFuturesWs

func NewFuturesWs() *FuturesWs

func (*FuturesWs) DepthCallback

func (s *FuturesWs) DepthCallback(f func(depth *goex.Depth))

func (*FuturesWs) SubscribeDepth

func (s *FuturesWs) SubscribeDepth(pair goex.CurrencyPair, contractType string) error

func (*FuturesWs) SubscribeTicker

func (s *FuturesWs) SubscribeTicker(pair goex.CurrencyPair, contractType string) error

func (*FuturesWs) SubscribeTrade

func (s *FuturesWs) SubscribeTrade(pair goex.CurrencyPair, contractType string) error

func (*FuturesWs) TickerCallback

func (s *FuturesWs) TickerCallback(f func(ticker *goex.FutureTicker))

func (*FuturesWs) TradeCallback

func (s *FuturesWs) TradeCallback(f func(trade *goex.Trade, contract string))

type OrderInfoResponse

type OrderInfoResponse struct {
	BaseResponse
	Symbol        string  `json:"symbol"`
	Pair          string  `json:"pair"`
	ClientOrderId string  `json:"clientOrderId"`
	OrderId       int64   `json:"orderId"`
	AvgPrice      float64 `json:"avgPrice,string"`
	ExecutedQty   float64 `json:"executedQty,string"`
	OrigQty       float64 `json:"origQty,string"`
	Price         float64 `json:"price,string"`
	Side          string  `json:"side"`
	PositionSide  string  `json:"positionSide"`
	Status        string  `json:"status"`
	Type          string  `json:"type"`
	Time          int64   `json:"time"`
	UpdateTime    int64   `json:"updateTime"`
}

type PositionRiskResponse

type PositionRiskResponse struct {
	Symbol           string  `json:"symbol"`
	PositionAmt      float64 `json:"positionAmt,string"`
	EntryPrice       float64 `json:"entryPrice,string"`
	UnRealizedProfit float64 `json:"unRealizedProfit,string"`
	LiquidationPrice float64 `json:"liquidationPrice,string"`
	Leverage         float64 `json:"leverage,string"`
	MarginType       string  `json:"marginType"`
	PositionSide     string  `json:"positionSide"`
}

type RateLimit

type RateLimit struct {
	Interval      string `json:"interval"`
	IntervalNum   int64  `json:"intervalNum"`
	Limit         int64  `json:"limit"`
	RateLimitType string `json:"rateLimitType"`
}

type SpotWs

type SpotWs struct {
	// contains filtered or unexported fields
}

func NewSpotWs

func NewSpotWs() *SpotWs

func (*SpotWs) DepthCallback

func (s *SpotWs) DepthCallback(f func(depth *goex.Depth))

func (*SpotWs) SendMessage

func (s *SpotWs) SendMessage(msg []byte) error

func (*SpotWs) SubscribeDepth

func (s *SpotWs) SubscribeDepth(pair goex.CurrencyPair) error

func (*SpotWs) SubscribeTicker

func (s *SpotWs) SubscribeTicker(pair goex.CurrencyPair) error

func (*SpotWs) SubscribeTrade

func (s *SpotWs) SubscribeTrade(pair goex.CurrencyPair) error

func (*SpotWs) TickerCallback

func (s *SpotWs) TickerCallback(f func(ticker *goex.Ticker))

func (*SpotWs) TradeCallback

func (s *SpotWs) TradeCallback(f func(trade *goex.Trade))

type SymbolInfo

type SymbolInfo struct {
	Symbol         string
	Pair           string
	ContractType   string `json:"contractType"`
	DeliveryDate   int64  `json:"deliveryDate"`
	ContractStatus string `json:"contractStatus"`
	ContractSize   int    `json:"contractSize"`
	PricePrecision int    `json:"pricePrecision"`
}

type TradeSymbol

type TradeSymbol struct {
	Symbol                     string   `json:"symbol"`
	Status                     string   `json:"status"`
	BaseAsset                  string   `json:"baseAsset"`
	BaseAssetPrecision         int      `json:"baseAssetPrecision"`
	QuoteAsset                 string   `json:"quoteAsset"`
	QuotePrecision             int      `json:"quotePrecision"`
	BaseCommissionPrecision    int      `json:"baseCommissionPrecision"`
	QuoteCommissionPrecision   int      `json:"quoteCommissionPrecision"`
	Filters                    []Filter `json:"filters"`
	IcebergAllowed             bool     `json:"icebergAllowed"`
	IsMarginTradingAllowed     bool     `json:"isMarginTradingAllowed"`
	IsSpotTradingAllowed       bool     `json:"isSpotTradingAllowed"`
	OcoAllowed                 bool     `json:"ocoAllowed"`
	QuoteOrderQtyMarketAllowed bool     `json:"quoteOrderQtyMarketAllowed"`
	OrderTypes                 []string `json:"orderTypes"`
}

func (TradeSymbol) GetAmountPrecision

func (ts TradeSymbol) GetAmountPrecision() int

func (TradeSymbol) GetMinAmount

func (ts TradeSymbol) GetMinAmount() float64

func (TradeSymbol) GetMinPrice

func (ts TradeSymbol) GetMinPrice() float64

func (TradeSymbol) GetMinValue

func (ts TradeSymbol) GetMinValue() float64

func (TradeSymbol) GetPricePrecision

func (ts TradeSymbol) GetPricePrecision() int

type Wallet

type Wallet struct {
	// contains filtered or unexported fields
}

func NewWallet

func NewWallet(c *APIConfig) *Wallet

func (*Wallet) GetAccount

func (w *Wallet) GetAccount() (*Account, error)

func (*Wallet) GetDepositHistory

func (w *Wallet) GetDepositHistory(currency *Currency) ([]DepositWithdrawHistory, error)

func (*Wallet) GetWithDrawHistory

func (w *Wallet) GetWithDrawHistory(currency *Currency) ([]DepositWithdrawHistory, error)

func (*Wallet) Transfer

func (w *Wallet) Transfer(param TransferParameter) error

func (*Wallet) Withdrawal

func (w *Wallet) Withdrawal(param WithdrawParameter) (withdrawId string, err error)

Jump to

Keyboard shortcuts

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