Documentation ¶
Index ¶
- func AmountToLotSize(lot float64, precision int, amount float64) float64
- func FormatTimestamp(t time.Time) int64
- func IsAPIError(e error) bool
- func MapHasAllKeys(m map[string]interface{}, keys ...string) bool
- func MapHasKeys(m map[string]interface{}, keys ...string) bool
- func ToJSONList(v []byte) []byte
- type APIError
- type Client
- type DefaultLogger
- type DoFunc
- type LogLevel
- type Logger
- type MockWebsocketSession
- type Params
- type PriceLevel
- type PriceLevelArray
- type Printf
- type Request
- func NewDeleteRequest(endpoint string, secType SecType) *Request
- func NewDeleteRequestAPIKey(endpoint string) *Request
- func NewDeleteRequestSigned(endpoint string) *Request
- func NewGetRequest(endpoint string, secType SecType) *Request
- func NewGetRequestAPIKey(endpoint string) *Request
- func NewGetRequestPublic(endpoint string) *Request
- func NewGetRequestSigned(endpoint string) *Request
- func NewPostRequest(endpoint string, secType SecType) *Request
- func NewPostRequestAPIKey(endpoint string) *Request
- func NewPostRequestSigned(endpoint string) *Request
- func NewPutRequest(endpoint string, secType SecType) *Request
- func NewPutRequestAPIKey(endpoint string) *Request
- func NewPutRequestSigned(endpoint string) *Request
- func NewRequest(method, endpoint string, secType SecType) *Request
- func (r *Request) AddQuery(key string, value interface{}) *Request
- func (r *Request) SetForm(key string, value interface{}) *Request
- func (r *Request) SetFormParams(m Params) *Request
- func (r *Request) SetQuery(key string, value interface{}) *Request
- func (r *Request) SetQueryParams(m Params) *Request
- func (r *Request) Validate() (err error)
- type RequestOption
- type SecType
- type WebsocketClient
- type WebsocketMessageCallback
- type WebsocketReply
- type WebsocketRequest
- type WebsocketSession
- type WebsocketSessionHandler
- type WebsocketSessionMessageCallback
- type WebsocketSessionMessageChecker
- type WebsocketSessionMessageFactory
- type WebsocketSubscribe
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AmountToLotSize ¶
AmountToLotSize converts an amount to a lot sized amount
func FormatTimestamp ¶ added in v2.3.2
FormatTimestamp formats a time into Unix timestamp in milliseconds, as requested by Binance.
func MapHasAllKeys ¶ added in v2.3.2
func MapHasKeys ¶ added in v2.3.2
Types ¶
type APIError ¶
type APIError struct { Status int `json:"status"` Code int64 `json:"code"` Message string `json:"msg"` }
APIError define API error when response status is 4xx or 5xx
type Client ¶ added in v2.3.2
type Client interface { GetTimeOffset() int64 UpdateTimeOffset(offset int64) UpdateDoFunc(f DoFunc) UpdateHTTPClient(hc *http.Client) CallAPIBytes(ctx context.Context, r *Request, opts ...RequestOption) (data []byte, err error) CallAPI(ctx context.Context, r *Request, result interface{}, opts ...RequestOption) (err error) }
type DefaultLogger ¶ added in v2.3.2
type DefaultLogger struct {
// contains filtered or unexported fields
}
func NewDefaultLogger ¶ added in v2.3.2
func NewDefaultLogger(level LogLevel, p Printf) *DefaultLogger
func (*DefaultLogger) Debugw ¶ added in v2.3.2
func (d *DefaultLogger) Debugw(msg string, keyAndValues ...interface{})
func (*DefaultLogger) Infow ¶ added in v2.3.2
func (d *DefaultLogger) Infow(msg string, keyAndValues ...interface{})
func (*DefaultLogger) SetLevel ¶ added in v2.3.2
func (d *DefaultLogger) SetLevel(level LogLevel)
func (*DefaultLogger) Warningw ¶ added in v2.3.2
func (d *DefaultLogger) Warningw(msg string, keyAndValues ...interface{})
type MockWebsocketSession ¶ added in v2.3.2
type MockWebsocketSession interface { WebsocketSession MockProcessMessage(data []byte) error }
func NewMockWebsocketSession ¶ added in v2.3.2
func NewMockWebsocketSession(handler WebsocketSessionHandler) MockWebsocketSession
type PriceLevel ¶
PriceLevel is a common structure for bids and asks in the order book.
type PriceLevelArray ¶ added in v2.3.2
type PriceLevelArray []string
type Request ¶ added in v2.3.2
type Request struct { ID uint64 Method string Endpoint string SecType SecType Query url.Values Form url.Values RecvWindow int64 Header http.Header }
Request define an API Request
func NewDeleteRequest ¶ added in v2.3.2
func NewDeleteRequestAPIKey ¶ added in v2.3.2
func NewDeleteRequestSigned ¶ added in v2.3.2
func NewGetRequest ¶ added in v2.3.2
func NewGetRequestAPIKey ¶ added in v2.3.2
func NewGetRequestPublic ¶ added in v2.3.2
func NewGetRequestSigned ¶ added in v2.3.2
func NewPostRequest ¶ added in v2.3.2
func NewPostRequestAPIKey ¶ added in v2.3.2
func NewPostRequestSigned ¶ added in v2.3.2
func NewPutRequest ¶ added in v2.3.2
func NewPutRequestAPIKey ¶ added in v2.3.2
func NewPutRequestSigned ¶ added in v2.3.2
func NewRequest ¶ added in v2.3.2
func (*Request) SetFormParams ¶ added in v2.3.2
SetFormParams set Params with key/values to Request form body
func (*Request) SetQueryParams ¶ added in v2.3.2
SetQueryParams set Params with key/values to query string
type RequestOption ¶ added in v2.3.2
type RequestOption func(*Request)
RequestOption define option type for Request
func WithHeader ¶ added in v2.3.2
func WithHeader(key, value string, replace bool) RequestOption
WithHeader set or add a Header value to the Request
func WithHeaders ¶ added in v2.3.2
func WithHeaders(header http.Header) RequestOption
WithHeaders set or replace the headers of the Request
func WithRecvWindow ¶ added in v2.3.2
func WithRecvWindow(recvWindow int64) RequestOption
WithRecvWindow set recvWindow param for the Request
type WebsocketClient ¶ added in v2.3.2
type WebsocketClient interface { Loop(f WebsocketMessageCallback) error Delay() time.Duration Ping() Write(data []byte) }
func WebsocketDial ¶ added in v2.3.2
func WebsocketDialProxy ¶ added in v2.3.2
type WebsocketMessageCallback ¶ added in v2.3.2
type WebsocketMessageCallback func(messageType websocket.MessageType, data []byte) error
type WebsocketReply ¶ added in v2.3.2
type WebsocketReply struct { ID uint64 `json:"id"` Code int64 `json:"code"` Message string `json:"msg"` Result interface{} }
func (*WebsocketReply) OK ¶ added in v2.3.2
func (wsr *WebsocketReply) OK() error
type WebsocketRequest ¶ added in v2.3.2
type WebsocketSession ¶ added in v2.3.2
type WebsocketSession interface { // Loop hold this websocket connection until the connection disconnected or got error // from message processor. return error same as SessionHandler.OnClose function. Loop() (err error) // RunLoop create new go routine and call IOLoop function. RunLoop() chan error Subscribe(ctx context.Context, streams ...string) (reply *WebsocketReply, err error) SubscribeNoReply(ctx context.Context, streams ...string) (err error) RegisterMessageHandler(factory WebsocketSessionMessageFactory, callback WebsocketSessionMessageCallback, checker ...WebsocketSessionMessageChecker) RequireMapHasAllKeys(keys ...string) WebsocketSessionMessageChecker RequireMapKeyValue(key, value string) WebsocketSessionMessageChecker }
func NewWebsocketSession ¶ added in v2.3.2
func NewWebsocketSession(client WebsocketClient, handler WebsocketSessionHandler) WebsocketSession
type WebsocketSessionHandler ¶ added in v2.3.2
type WebsocketSessionMessageCallback ¶ added in v2.3.2
type WebsocketSessionMessageCallback func(m interface{})
func WebsocketSessionMessageHandlerBuild ¶ added in v2.3.2
func WebsocketSessionMessageHandlerBuild[T any](f func(*T)) WebsocketSessionMessageCallback
type WebsocketSessionMessageChecker ¶ added in v2.3.2
type WebsocketSessionMessageChecker func(m interface{}) bool
type WebsocketSessionMessageFactory ¶ added in v2.3.2
type WebsocketSessionMessageFactory func() interface{}
func WebsocketSessionMessageFactoryBuild ¶ added in v2.3.2
func WebsocketSessionMessageFactoryBuild[T any]() WebsocketSessionMessageFactory
type WebsocketSubscribe ¶ added in v2.3.2
func NewWebsocketSubscribe ¶ added in v2.3.2
func NewWebsocketSubscribe(wsc WebsocketClient) WebsocketSubscribe
Click to show internal directories.
Click to hide internal directories.