README
¶
GoCryptoTrader package Bitmex

This bitmex package is part of the GoCryptoTrader codebase.
This is still in active development
You can track ideas, planned features and what's in progress on this Trello board: https://trello.com/b/ZAhMhpOy/gocryptotrader.
Join our slack to discuss all things related to GoCryptoTrader! GoCryptoTrader Slack
Bithumb Exchange
Current Features
- REST Support
How to enable
-
Individual package example below:
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
How to do REST public/private calls
- If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the
go var bot Bot
and you will only be able to use the wrapper interface functions for accessing exchange data. View routines.go for an example of integration usage with GoCryptoTrader. Rudimentary example below:
main.go
var b exchange.IBotExchange
for i := range bot.Exchanges {
if bot.Exchanges[i].GetName() == "Bitmex" {
b = bot.Exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := b.FetchTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.FetchOrderbook()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := b.GetAccountInfo()
if err != nil {
// Handle error
}
- If enabled via individually importing package, rudimentary example below:
// Public calls
// Fetches current ticker information
ticker, err := b.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := b.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := b.Trade(...)
if err != nil {
// Handle error
}
Please click GoDocs chevron above to view current GoDoc information for this package
Contribution
Please feel free to submit any pull requests or suggest any desired features to be added.
When submitting a PR, please abide by our coding guidelines:
- Code must adhere to the official Go formatting guidelines (i.e. uses gofmt).
- Code must be documented adhering to the official Go commentary guidelines.
- Code must adhere to our coding style.
- Pull requests need to be based on and opened against the
master
branch.
Donations

If this framework helped you in any way, or you would like to support the developers working on it, please donate Bitcoin to:
bc1qk0jareu4jytc0cfrhr5wgshsq8282awpavfahc
Documentation
¶
Index ¶
- Constants
- func StructValsToURLVals(v interface{}) (url.Values, error)
- type APIKey
- type APIKeyParams
- type AffiliateStatus
- type Alias
- type Announcement
- type AnnouncementData
- type Bitmex
- func (b *Bitmex) AmendBulkOrders(ctx context.Context, params OrderAmendBulkParams) ([]Order, error)
- func (b *Bitmex) AmendOrder(ctx context.Context, params *OrderAmendParams) (Order, error)
- func (b *Bitmex) AuthenticateWebsocket(ctx context.Context) error
- func (b *Bitmex) CancelAllExistingOrders(ctx context.Context, params OrderCancelAllParams) ([]Order, error)
- func (b *Bitmex) CancelAllOrders(ctx context.Context, _ *order.Cancel) (order.CancelAllResponse, error)
- func (b *Bitmex) CancelAllOrdersAfterTime(ctx context.Context, params OrderCancelAllAfterParams) ([]Order, error)
- func (b *Bitmex) CancelBatchOrders(ctx context.Context, o []order.Cancel) (*order.CancelBatchResponse, error)
- func (b *Bitmex) CancelOrder(ctx context.Context, o *order.Cancel) error
- func (b *Bitmex) CancelOrders(ctx context.Context, params *OrderCancelParams) ([]Order, error)
- func (b *Bitmex) CancelWithdraw(ctx context.Context, token string) (TransactionInfo, error)
- func (b *Bitmex) CaptureError(resp, reType interface{}) error
- func (b *Bitmex) CheckReferalCode(ctx context.Context, referralCode string) (float64, error)
- func (b *Bitmex) ClosePosition(ctx context.Context, params OrderClosePositionParams) ([]Order, error)
- func (b *Bitmex) ConfirmEmail(ctx context.Context, token string) (ConfirmEmail, error)
- func (b *Bitmex) ConfirmTwoFactorAuth(ctx context.Context, token, typ string) (bool, error)
- func (b *Bitmex) ConfirmWithdrawal(ctx context.Context, token string) (TransactionInfo, error)
- func (b *Bitmex) CreateBulkOrders(ctx context.Context, params OrderNewBulkParams) ([]Order, error)
- func (b *Bitmex) CreateOrder(ctx context.Context, params *OrderNewParams) (Order, error)
- func (b *Bitmex) DisableAPIKey(ctx context.Context, params APIKeyParams) (APIKey, error)
- func (b *Bitmex) DisableTFA(ctx context.Context, token, typ string) (bool, error)
- func (b *Bitmex) EnableAPIKey(ctx context.Context, params APIKeyParams) (APIKey, error)
- func (b *Bitmex) EnableTFA(ctx context.Context, typ string) (bool, error)
- func (b *Bitmex) FetchAccountInfo(ctx context.Context, assetType asset.Item) (account.Holdings, error)
- func (b *Bitmex) FetchOrderbook(ctx context.Context, p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
- func (b *Bitmex) FetchTicker(ctx context.Context, p currency.Pair, assetType asset.Item) (*ticker.Price, error)
- func (b *Bitmex) FetchTradablePairs(ctx context.Context, a asset.Item) (currency.Pairs, error)
- func (b *Bitmex) GenerateAuthenticatedSubscriptions() ([]subscription.Subscription, error)
- func (b *Bitmex) GenerateDefaultSubscriptions() ([]subscription.Subscription, error)
- func (b *Bitmex) GetAPIKeys(ctx context.Context) ([]APIKey, error)
- func (b *Bitmex) GetAccountExecutionTradeHistory(ctx context.Context, params *GenericRequestParams) ([]Execution, error)
- func (b *Bitmex) GetAccountExecutions(ctx context.Context, params *GenericRequestParams) ([]Execution, error)
- func (b *Bitmex) GetAccountFundingHistory(ctx context.Context) ([]exchange.FundingHistory, error)
- func (b *Bitmex) GetActionFromString(s string) (orderbook.Action, error)
- func (b *Bitmex) GetActiveAndIndexInstruments(ctx context.Context) ([]Instrument, error)
- func (b *Bitmex) GetActiveInstruments(ctx context.Context, params *GenericRequestParams) ([]Instrument, error)
- func (b *Bitmex) GetActiveIntervals(ctx context.Context) (InstrumentInterval, error)
- func (b *Bitmex) GetActiveOrders(ctx context.Context, req *order.MultiOrderRequest) (order.FilteredOrders, error)
- func (b *Bitmex) GetAffiliateStatus(ctx context.Context) (AffiliateStatus, error)
- func (b *Bitmex) GetAliasOnLeaderboard(ctx context.Context) (Alias, error)
- func (b *Bitmex) GetAllUserMargin(ctx context.Context) ([]UserMargin, error)
- func (b *Bitmex) GetAnnouncement(ctx context.Context) ([]Announcement, error)
- func (b *Bitmex) GetCompositeIndex(ctx context.Context, symbol, count, filter, columns, start, reverse string, ...) ([]IndexComposite, error)
- func (b *Bitmex) GetCryptoDepositAddress(ctx context.Context, cryptoCurrency string) (string, error)
- func (b *Bitmex) GetCurrencyTradeURL(_ context.Context, a asset.Item, cp currency.Pair) (string, error)
- func (b *Bitmex) GetCurrentNotifications(ctx context.Context) ([]Notification, error)
- func (b *Bitmex) GetDepositAddress(ctx context.Context, cryptocurrency currency.Code, _, _ string) (*deposit.Address, error)
- func (b *Bitmex) GetFee(feeBuilder *exchange.FeeBuilder) (float64, error)
- func (b *Bitmex) GetFeeByType(ctx context.Context, feeBuilder *exchange.FeeBuilder) (float64, error)
- func (b *Bitmex) GetFullFundingHistory(ctx context.Context, symbol, count, filter, columns, start string, ...) ([]Funding, error)
- func (b *Bitmex) GetFuturesContractDetails(ctx context.Context, item asset.Item) ([]futures.Contract, error)
- func (b *Bitmex) GetHistoricCandles(_ context.Context, _ currency.Pair, _ asset.Item, _ kline.Interval, ...) (*kline.Item, error)
- func (b *Bitmex) GetHistoricCandlesExtended(_ context.Context, _ currency.Pair, _ asset.Item, _ kline.Interval, ...) (*kline.Item, error)
- func (b *Bitmex) GetHistoricTrades(ctx context.Context, p currency.Pair, assetType asset.Item, ...) ([]trade.Data, error)
- func (b *Bitmex) GetIndices(ctx context.Context) ([]Instrument, error)
- func (b *Bitmex) GetInstrument(ctx context.Context, params *GenericRequestParams) ([]Instrument, error)
- func (b *Bitmex) GetInstruments(ctx context.Context, params *GenericRequestParams) ([]Instrument, error)
- func (b *Bitmex) GetInsuranceFundHistory(ctx context.Context, params *GenericRequestParams) ([]Insurance, error)
- func (b *Bitmex) GetLatestFundingRates(ctx context.Context, r *fundingrate.LatestRateRequest) ([]fundingrate.LatestRateResponse, error)
- func (b *Bitmex) GetLeaderboard(ctx context.Context, params LeaderboardGetParams) ([]Leaderboard, error)
- func (b *Bitmex) GetLiquidationOrders(ctx context.Context, params *GenericRequestParams) ([]Liquidation, error)
- func (b *Bitmex) GetMinimumWithdrawalFee(ctx context.Context, currency string) (MinWithdrawalFee, error)
- func (b *Bitmex) GetOpenInterest(ctx context.Context, k ...key.PairAsset) ([]futures.OpenInterest, error)
- func (b *Bitmex) GetOrderHistory(ctx context.Context, req *order.MultiOrderRequest) (order.FilteredOrders, error)
- func (b *Bitmex) GetOrderInfo(ctx context.Context, orderID string, pair currency.Pair, assetType asset.Item) (*order.Detail, error)
- func (b *Bitmex) GetOrderbook(ctx context.Context, params OrderBookGetL2Params) ([]OrderBookL2, error)
- func (b *Bitmex) GetOrders(ctx context.Context, params *OrdersRequest) ([]Order, error)
- func (b *Bitmex) GetPositions(ctx context.Context, params PositionGetParams) ([]Position, error)
- func (b *Bitmex) GetPreviousTrades(ctx context.Context, params *TradeGetBucketedParams) ([]Trade, error)
- func (b *Bitmex) GetQuotes(ctx context.Context, params *GenericRequestParams) ([]Quote, error)
- func (b *Bitmex) GetQuotesByBuckets(ctx context.Context, params *QuoteGetBucketedParams) ([]Quote, error)
- func (b *Bitmex) GetRecentTrades(ctx context.Context, p currency.Pair, assetType asset.Item) ([]trade.Data, error)
- func (b *Bitmex) GetServerTime(_ context.Context, _ asset.Item) (time.Time, error)
- func (b *Bitmex) GetSettlementHistory(ctx context.Context, params *GenericRequestParams) ([]Settlement, error)
- func (b *Bitmex) GetStatSummary(ctx context.Context) ([]StatsUSD, error)
- func (b *Bitmex) GetStats(ctx context.Context) ([]Stats, error)
- func (b *Bitmex) GetStatsHistorical(ctx context.Context) ([]StatsHistory, error)
- func (b *Bitmex) GetTrade(ctx context.Context, params *GenericRequestParams) ([]Trade, error)
- func (b *Bitmex) GetTrollboxChannels(ctx context.Context) ([]ChatChannel, error)
- func (b *Bitmex) GetTrollboxConnectedUsers(ctx context.Context) (ConnectedUsers, error)
- func (b *Bitmex) GetTrollboxMessages(ctx context.Context, params ChatGetParams) ([]Chat, error)
- func (b *Bitmex) GetUrgentAnnouncement(ctx context.Context) ([]Announcement, error)
- func (b *Bitmex) GetUserCommision(ctx context.Context) (UserCommission, error)
- func (b *Bitmex) GetUserInfo(ctx context.Context) (User, error)
- func (b *Bitmex) GetUserMargin(ctx context.Context, currency string) (UserMargin, error)
- func (b *Bitmex) GetUserPreferences(ctx context.Context, params UserPreferencesParams) (User, error)
- func (b *Bitmex) GetWalletHistory(ctx context.Context, currency string) ([]TransactionInfo, error)
- func (b *Bitmex) GetWalletInfo(ctx context.Context, currency string) (WalletInfo, error)
- func (b *Bitmex) GetWalletSummary(ctx context.Context, currency string) ([]TransactionInfo, error)
- func (b *Bitmex) GetWithdrawalsHistory(ctx context.Context, c currency.Code, _ asset.Item) ([]exchange.WithdrawalHistory, error)
- func (b *Bitmex) IsPerpetualFutureCurrency(a asset.Item, _ currency.Pair) (bool, error)
- func (b *Bitmex) IsolatePosition(ctx context.Context, params PositionIsolateMarginParams) (Position, error)
- func (b *Bitmex) LeveragePosition(ctx context.Context, params PositionUpdateLeverageParams) (Position, error)
- func (b *Bitmex) ModifyOrder(ctx context.Context, action *order.Modify) (*order.ModifyResponse, error)
- func (b *Bitmex) RemoveAPIKey(ctx context.Context, params APIKeyParams) (bool, error)
- func (b *Bitmex) SendAuthenticatedHTTPRequest(ctx context.Context, ep exchange.URL, verb, path string, params Parameter, ...) error
- func (b *Bitmex) SendHTTPRequest(ctx context.Context, ep exchange.URL, path string, params Parameter, ...) error
- func (b *Bitmex) SendTrollboxMessage(ctx context.Context, params ChatSendParams) ([]Chat, error)
- func (b *Bitmex) SetDefaults()
- func (b *Bitmex) Setup(exch *config.Exchange) error
- func (b *Bitmex) SubmitOrder(ctx context.Context, s *order.Submit) (*order.SubmitResponse, error)
- func (b *Bitmex) SubmitOrders(ctx context.Context, ss ...*order.Submit) ([]*order.SubmitResponse, error)
- func (b *Bitmex) Subscribe(channelsToSubscribe []subscription.Subscription) error
- func (b *Bitmex) TransferMargin(ctx context.Context, params PositionTransferIsolatedMarginParams) (Position, error)
- func (b *Bitmex) Unsubscribe(channelsToUnsubscribe []subscription.Subscription) error
- func (b *Bitmex) UpdateAccountInfo(ctx context.Context, assetType asset.Item) (account.Holdings, error)
- func (b *Bitmex) UpdateOrderExecutionLimits(_ context.Context, _ asset.Item) error
- func (b *Bitmex) UpdateOrderbook(ctx context.Context, p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
- func (b *Bitmex) UpdateRiskLimit(ctx context.Context, params PositionUpdateRiskLimitParams) (Position, error)
- func (b *Bitmex) UpdateTicker(ctx context.Context, p currency.Pair, a asset.Item) (*ticker.Price, error)
- func (b *Bitmex) UpdateTickers(ctx context.Context, a asset.Item) error
- func (b *Bitmex) UpdateTradablePairs(ctx context.Context, _ bool) error
- func (b *Bitmex) UpdateUserInfo(ctx context.Context, params *UserUpdateParams) (User, error)
- func (b *Bitmex) UserLogOut(ctx context.Context) error
- func (b *Bitmex) UserLogOutAll(ctx context.Context) (int64, error)
- func (b *Bitmex) UserRequestWithdrawal(ctx context.Context, params UserRequestWithdrawalParams) (TransactionInfo, error)
- func (b *Bitmex) ValidateAPICredentials(ctx context.Context, assetType asset.Item) error
- func (b *Bitmex) WithdrawCryptocurrencyFunds(ctx context.Context, withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
- func (b *Bitmex) WithdrawFiatFunds(_ context.Context, _ *withdraw.Request) (*withdraw.ExchangeResponse, error)
- func (b *Bitmex) WithdrawFiatFundsToInternationalBank(_ context.Context, _ *withdraw.Request) (*withdraw.ExchangeResponse, error)
- func (b *Bitmex) WsConnect() error
- type Chat
- type ChatChannel
- type ChatGetParams
- type ChatSendParams
- type ConfirmEmail
- type ConnectedUsers
- type Execution
- type Funding
- type GenericRequestParams
- type IndexComposite
- type Instrument
- type InstrumentInterval
- type Insurance
- type Leaderboard
- type LeaderboardGetParams
- type Liquidation
- type MinWithdrawalFee
- type Notification
- type Order
- type OrderAmendBulkParams
- type OrderAmendParams
- type OrderBookData
- type OrderBookGetL2Params
- type OrderBookL2
- type OrderCancelAllAfterParams
- type OrderCancelAllParams
- type OrderCancelParams
- type OrderClosePositionParams
- type OrderInsertData
- type OrderNewBulkParams
- type OrderNewParams
- type OrdersRequest
- type Parameter
- type Position
- type PositionGetParams
- type PositionIsolateMarginParams
- type PositionTransferIsolatedMarginParams
- type PositionUpdateLeverageParams
- type PositionUpdateRiskLimitParams
- type Quote
- type QuoteGetBucketedParams
- type RateLimit
- type RequestError
- type Settlement
- type Stats
- type StatsHistory
- type StatsUSD
- type Trade
- type TradeData
- type TradeGetBucketedParams
- type TransactionInfo
- type User
- type UserCheckReferralCodeParams
- type UserCommission
- type UserConfirmTFAParams
- type UserCurrencyParams
- type UserMargin
- type UserPreferences
- type UserPreferencesParams
- type UserRequestWithdrawalParams
- type UserTokenParams
- type UserUpdateParams
- type WalletInfo
- type WebsocketErrorResponse
- type WebsocketMainResponse
- type WebsocketRequest
- type WebsocketSubscribeResp
- type WebsocketWelcome
- type WsAffiliateResponse
- type WsAffiliateResponseAttributes
- type WsAffiliateResponseFilter
- type WsDataResponse
- type WsExecutionResponse
- type WsExecutionResponseAttributes
- type WsExecutionResponseFilter
- type WsExecutionResponseForeignKeys
- type WsMarginResponse
- type WsMarginResponseAttributes
- type WsMarginResponseData
- type WsMarginResponseFilter
- type WsOrderResponse
- type WsOrderResponseAttributes
- type WsOrderResponseFilter
- type WsOrderResponseForeignKeys
- type WsPositionResponse
- type WsPositionResponseAttributes
- type WsPositionResponseFilter
- type WsPositionResponseForeignKeys
- type WsPrivateNotificationsResponse
- type WsTransactResponse
- type WsTransactResponseAttributes
- type WsTransactResponseFilter
- type WsWalletResponse
- type WsWalletResponseAttributes
- type WsWalletResponseData
- type WsWalletResponseFilter
Constants ¶
const ( // ContractPerpetual perpetual contract type ContractPerpetual = iota // ContractFutures futures contract type ContractFutures // ContractDownsideProfit downside profit contract type ContractDownsideProfit // ContractUpsideProfit upside profit contract type ContractUpsideProfit )
Variables ¶
This section is empty.
Functions ¶
func StructValsToURLVals ¶
StructValsToURLVals converts a struct into url.values for easy encoding can set json tags for outgoing naming conventions.
Types ¶
type APIKey ¶
type APIKey struct { Cidr string `json:"cidr"` Created string `json:"created"` Enabled bool `json:"enabled"` ID string `json:"id"` Name string `json:"name"` Nonce int64 `json:"nonce"` Permissions []interface{} `json:"permissions"` Secret string `json:"secret"` UserID int32 `json:"userId"` }
APIKey Persistent API Keys for Developers
type APIKeyParams ¶
type APIKeyParams struct { // API Key ID (public component). APIKeyID string `json:"apiKeyID,omitempty"` }
APIKeyParams contains all the parameters to send to the API endpoint
func (*APIKeyParams) IsNil ¶
func (p *APIKeyParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (*APIKeyParams) ToURLVals ¶
func (p *APIKeyParams) ToURLVals(path string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (*APIKeyParams) VerifyData ¶
func (p *APIKeyParams) VerifyData() error
VerifyData verifies outgoing data sets
type AffiliateStatus ¶
type AffiliateStatus struct { Account int64 `json:"account"` Currency string `json:"currency"` ExecComm int64 `json:"execComm"` ExecTurnover int64 `json:"execTurnover"` PayoutPcnt float64 `json:"payoutPcnt"` PendingPayout int64 `json:"pendingPayout"` PrevComm int64 `json:"prevComm"` PrevPayout int64 `json:"prevPayout"` PrevTimestamp time.Time `json:"prevTimestamp"` PrevTurnover int64 `json:"prevTurnover"` ReferrerAccount float64 `json:"referrerAccount"` Timestamp time.Time `json:"timestamp"` TotalComm int64 `json:"totalComm"` TotalReferrals int64 `json:"totalReferrals"` TotalTurnover int64 `json:"totalTurnover"` }
AffiliateStatus affiliate Status details
type Alias ¶
type Alias struct {
Name string `json:"name"`
}
Alias Name refers to Trollbox client name
type Announcement ¶
type Announcement struct { Content string `json:"content"` Date string `json:"date"` ID int32 `json:"id"` Link string `json:"link"` Title string `json:"title"` }
Announcement General Announcements
type AnnouncementData ¶
type AnnouncementData struct { Data []Announcement `json:"data"` Action string `json:"action"` }
AnnouncementData contains announcement resp data with action to be taken
type Bitmex ¶
Bitmex is the overarching type across this package
func (*Bitmex) AmendBulkOrders ¶
AmendBulkOrders amends multiple orders for the same symbol
func (*Bitmex) AmendOrder ¶
AmendOrder amends the quantity or price of an open order
func (*Bitmex) AuthenticateWebsocket ¶
AuthenticateWebsocket sends an authentication message to the websocket
func (*Bitmex) CancelAllExistingOrders ¶
func (b *Bitmex) CancelAllExistingOrders(ctx context.Context, params OrderCancelAllParams) ([]Order, error)
CancelAllExistingOrders cancels all open orders on the exchange
func (*Bitmex) CancelAllOrders ¶
func (b *Bitmex) CancelAllOrders(ctx context.Context, _ *order.Cancel) (order.CancelAllResponse, error)
CancelAllOrders cancels all orders associated with a currency pair
func (*Bitmex) CancelAllOrdersAfterTime ¶
func (b *Bitmex) CancelAllOrdersAfterTime(ctx context.Context, params OrderCancelAllAfterParams) ([]Order, error)
CancelAllOrdersAfterTime closes all positions after a certain time period
func (*Bitmex) CancelBatchOrders ¶
func (b *Bitmex) CancelBatchOrders(ctx context.Context, o []order.Cancel) (*order.CancelBatchResponse, error)
CancelBatchOrders cancels an orders by their corresponding ID numbers
func (*Bitmex) CancelOrder ¶
CancelOrder cancels an order by its corresponding ID number
func (*Bitmex) CancelOrders ¶
CancelOrders cancels one or a batch of orders on the exchange and returns a cancelled order list
func (*Bitmex) CancelWithdraw ¶
CancelWithdraw cancels a current withdrawal
func (*Bitmex) CaptureError ¶
CaptureError little hack that captures an error
func (*Bitmex) CheckReferalCode ¶
CheckReferalCode checks a code, will return a percentage eg 0.1 for 10% or if err a 404
func (*Bitmex) ClosePosition ¶
func (b *Bitmex) ClosePosition(ctx context.Context, params OrderClosePositionParams) ([]Order, error)
ClosePosition closes a position WARNING deprecated use /order endpoint
func (*Bitmex) ConfirmEmail ¶
ConfirmEmail confirms email address with a token
func (*Bitmex) ConfirmTwoFactorAuth ¶
ConfirmTwoFactorAuth confirms 2FA for this account.
func (*Bitmex) ConfirmWithdrawal ¶
ConfirmWithdrawal confirms a withdrawal
func (*Bitmex) CreateBulkOrders ¶
CreateBulkOrders creates multiple orders for the same symbol
func (*Bitmex) CreateOrder ¶
CreateOrder creates a new order
func (*Bitmex) DisableAPIKey ¶
DisableAPIKey disables an Apikey from the bitmex trading engine
func (*Bitmex) DisableTFA ¶
DisableTFA dsiables 2 factor authentication for your account
func (*Bitmex) EnableAPIKey ¶
EnableAPIKey enables an Apikey from the bitmex trading engine
func (*Bitmex) FetchAccountInfo ¶
func (b *Bitmex) FetchAccountInfo(ctx context.Context, assetType asset.Item) (account.Holdings, error)
FetchAccountInfo retrieves balances for all enabled currencies
func (*Bitmex) FetchOrderbook ¶
func (b *Bitmex) FetchOrderbook(ctx context.Context, p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
FetchOrderbook returns orderbook base on the currency pair
func (*Bitmex) FetchTicker ¶
func (b *Bitmex) FetchTicker(ctx context.Context, p currency.Pair, assetType asset.Item) (*ticker.Price, error)
FetchTicker returns the ticker for a currency pair
func (*Bitmex) FetchTradablePairs ¶
FetchTradablePairs returns a list of the exchanges tradable pairs
func (*Bitmex) GenerateAuthenticatedSubscriptions ¶
func (b *Bitmex) GenerateAuthenticatedSubscriptions() ([]subscription.Subscription, error)
GenerateAuthenticatedSubscriptions Adds authenticated subscriptions to websocket to be handled by ManageSubscriptions()
func (*Bitmex) GenerateDefaultSubscriptions ¶
func (b *Bitmex) GenerateDefaultSubscriptions() ([]subscription.Subscription, error)
GenerateDefaultSubscriptions Adds default subscriptions to websocket to be handled by ManageSubscriptions()
func (*Bitmex) GetAPIKeys ¶
GetAPIKeys returns the APIkeys from bitmex
func (*Bitmex) GetAccountExecutionTradeHistory ¶
func (b *Bitmex) GetAccountExecutionTradeHistory(ctx context.Context, params *GenericRequestParams) ([]Execution, error)
GetAccountExecutionTradeHistory returns all balance-affecting executions. This includes each trade, insurance charge, and settlement.
func (*Bitmex) GetAccountExecutions ¶
func (b *Bitmex) GetAccountExecutions(ctx context.Context, params *GenericRequestParams) ([]Execution, error)
GetAccountExecutions returns all raw transactions, which includes order opening and cancellation, and order status changes. It can be quite noisy. More focused information is available at /execution/tradeHistory.
func (*Bitmex) GetAccountFundingHistory ¶
GetAccountFundingHistory returns funding history, deposits and withdrawals
func (*Bitmex) GetActionFromString ¶
GetActionFromString matches a string action to an internal action.
func (*Bitmex) GetActiveAndIndexInstruments ¶
func (b *Bitmex) GetActiveAndIndexInstruments(ctx context.Context) ([]Instrument, error)
GetActiveAndIndexInstruments returns all active instruments and all indices
func (*Bitmex) GetActiveInstruments ¶
func (b *Bitmex) GetActiveInstruments(ctx context.Context, params *GenericRequestParams) ([]Instrument, error)
GetActiveInstruments returns active instruments
func (*Bitmex) GetActiveIntervals ¶
func (b *Bitmex) GetActiveIntervals(ctx context.Context) (InstrumentInterval, error)
GetActiveIntervals returns funding history
func (*Bitmex) GetActiveOrders ¶
func (b *Bitmex) GetActiveOrders(ctx context.Context, req *order.MultiOrderRequest) (order.FilteredOrders, error)
GetActiveOrders retrieves any orders that are active/open This function is not concurrency safe due to orderSide/orderType maps
func (*Bitmex) GetAffiliateStatus ¶
func (b *Bitmex) GetAffiliateStatus(ctx context.Context) (AffiliateStatus, error)
GetAffiliateStatus returns your affiliate status
func (*Bitmex) GetAliasOnLeaderboard ¶
GetAliasOnLeaderboard returns your alias on the leaderboard
func (*Bitmex) GetAllUserMargin ¶
func (b *Bitmex) GetAllUserMargin(ctx context.Context) ([]UserMargin, error)
GetAllUserMargin returns user margin information
func (*Bitmex) GetAnnouncement ¶
func (b *Bitmex) GetAnnouncement(ctx context.Context) ([]Announcement, error)
GetAnnouncement returns the general announcements from Bitmex
func (*Bitmex) GetCompositeIndex ¶
func (b *Bitmex) GetCompositeIndex(ctx context.Context, symbol, count, filter, columns, start, reverse string, startTime, endTime time.Time) ([]IndexComposite, error)
GetCompositeIndex returns composite index
func (*Bitmex) GetCryptoDepositAddress ¶
func (b *Bitmex) GetCryptoDepositAddress(ctx context.Context, cryptoCurrency string) (string, error)
GetCryptoDepositAddress returns a deposit address for a cryptocurrency
func (*Bitmex) GetCurrencyTradeURL ¶
func (b *Bitmex) GetCurrencyTradeURL(_ context.Context, a asset.Item, cp currency.Pair) (string, error)
GetCurrencyTradeURL returns the URL to the exchange's trade page for the given asset and currency pair
func (*Bitmex) GetCurrentNotifications ¶
func (b *Bitmex) GetCurrentNotifications(ctx context.Context) ([]Notification, error)
GetCurrentNotifications returns your current notifications
func (*Bitmex) GetDepositAddress ¶
func (b *Bitmex) GetDepositAddress(ctx context.Context, cryptocurrency currency.Code, _, _ string) (*deposit.Address, error)
GetDepositAddress returns a deposit address for a specified currency
func (*Bitmex) GetFee ¶
func (b *Bitmex) GetFee(feeBuilder *exchange.FeeBuilder) (float64, error)
GetFee returns an estimate of fee based on type of transaction
func (*Bitmex) GetFeeByType ¶
func (b *Bitmex) GetFeeByType(ctx context.Context, feeBuilder *exchange.FeeBuilder) (float64, error)
GetFeeByType returns an estimate of fee based on type of transaction
func (*Bitmex) GetFullFundingHistory ¶
func (b *Bitmex) GetFullFundingHistory(ctx context.Context, symbol, count, filter, columns, start string, reverse bool, startTime, endTime time.Time) ([]Funding, error)
GetFullFundingHistory returns funding history
func (*Bitmex) GetFuturesContractDetails ¶
func (b *Bitmex) GetFuturesContractDetails(ctx context.Context, item asset.Item) ([]futures.Contract, error)
GetFuturesContractDetails returns details about futures contracts
func (*Bitmex) GetHistoricCandles ¶
func (b *Bitmex) GetHistoricCandles(_ context.Context, _ currency.Pair, _ asset.Item, _ kline.Interval, _, _ time.Time) (*kline.Item, error)
GetHistoricCandles returns candles between a time period for a set time interval
func (*Bitmex) GetHistoricCandlesExtended ¶
func (b *Bitmex) GetHistoricCandlesExtended(_ context.Context, _ currency.Pair, _ asset.Item, _ kline.Interval, _, _ time.Time) (*kline.Item, error)
GetHistoricCandlesExtended returns candles between a time period for a set time interval
func (*Bitmex) GetHistoricTrades ¶
func (b *Bitmex) GetHistoricTrades(ctx context.Context, p currency.Pair, assetType asset.Item, timestampStart, timestampEnd time.Time) ([]trade.Data, error)
GetHistoricTrades returns historic trade data within the timeframe provided
func (*Bitmex) GetIndices ¶
func (b *Bitmex) GetIndices(ctx context.Context) ([]Instrument, error)
GetIndices returns all price indices
func (*Bitmex) GetInstrument ¶
func (b *Bitmex) GetInstrument(ctx context.Context, params *GenericRequestParams) ([]Instrument, error)
GetInstrument returns instrument data
func (*Bitmex) GetInstruments ¶
func (b *Bitmex) GetInstruments(ctx context.Context, params *GenericRequestParams) ([]Instrument, error)
GetInstruments returns instrument data
func (*Bitmex) GetInsuranceFundHistory ¶
func (b *Bitmex) GetInsuranceFundHistory(ctx context.Context, params *GenericRequestParams) ([]Insurance, error)
GetInsuranceFundHistory returns insurance fund history
func (*Bitmex) GetLatestFundingRates ¶
func (b *Bitmex) GetLatestFundingRates(ctx context.Context, r *fundingrate.LatestRateRequest) ([]fundingrate.LatestRateResponse, error)
GetLatestFundingRates returns the latest funding rates data
func (*Bitmex) GetLeaderboard ¶
func (b *Bitmex) GetLeaderboard(ctx context.Context, params LeaderboardGetParams) ([]Leaderboard, error)
GetLeaderboard returns leaderboard information
func (*Bitmex) GetLiquidationOrders ¶
func (b *Bitmex) GetLiquidationOrders(ctx context.Context, params *GenericRequestParams) ([]Liquidation, error)
GetLiquidationOrders returns liquidation orders
func (*Bitmex) GetMinimumWithdrawalFee ¶
func (b *Bitmex) GetMinimumWithdrawalFee(ctx context.Context, currency string) (MinWithdrawalFee, error)
GetMinimumWithdrawalFee returns minimum withdrawal fee information
func (*Bitmex) GetOpenInterest ¶
func (b *Bitmex) GetOpenInterest(ctx context.Context, k ...key.PairAsset) ([]futures.OpenInterest, error)
GetOpenInterest returns the open interest rate for a given asset pair
func (*Bitmex) GetOrderHistory ¶
func (b *Bitmex) GetOrderHistory(ctx context.Context, req *order.MultiOrderRequest) (order.FilteredOrders, error)
GetOrderHistory retrieves account order information Can Limit response to specific order status This function is not concurrency safe due to orderSide/orderType maps
func (*Bitmex) GetOrderInfo ¶
func (b *Bitmex) GetOrderInfo(ctx context.Context, orderID string, pair currency.Pair, assetType asset.Item) (*order.Detail, error)
GetOrderInfo returns order information based on order ID
func (*Bitmex) GetOrderbook ¶
func (b *Bitmex) GetOrderbook(ctx context.Context, params OrderBookGetL2Params) ([]OrderBookL2, error)
GetOrderbook returns layer two orderbook data
func (*Bitmex) GetPositions ¶
GetPositions returns positions
func (*Bitmex) GetPreviousTrades ¶
func (b *Bitmex) GetPreviousTrades(ctx context.Context, params *TradeGetBucketedParams) ([]Trade, error)
GetPreviousTrades previous trade history in time buckets
func (*Bitmex) GetQuotesByBuckets ¶
func (b *Bitmex) GetQuotesByBuckets(ctx context.Context, params *QuoteGetBucketedParams) ([]Quote, error)
GetQuotesByBuckets returns previous quotes in time buckets
func (*Bitmex) GetRecentTrades ¶
func (b *Bitmex) GetRecentTrades(ctx context.Context, p currency.Pair, assetType asset.Item) ([]trade.Data, error)
GetRecentTrades returns the most recent trades for a currency and asset
func (*Bitmex) GetServerTime ¶
GetServerTime returns the current exchange server time.
func (*Bitmex) GetSettlementHistory ¶
func (b *Bitmex) GetSettlementHistory(ctx context.Context, params *GenericRequestParams) ([]Settlement, error)
GetSettlementHistory returns settlement history
func (*Bitmex) GetStatSummary ¶
GetStatSummary returns the stats summary in USD terms
func (*Bitmex) GetStatsHistorical ¶
func (b *Bitmex) GetStatsHistorical(ctx context.Context) ([]StatsHistory, error)
GetStatsHistorical historic stats
func (*Bitmex) GetTrollboxChannels ¶
func (b *Bitmex) GetTrollboxChannels(ctx context.Context) ([]ChatChannel, error)
GetTrollboxChannels the channels from the bitmex trollbox
func (*Bitmex) GetTrollboxConnectedUsers ¶
func (b *Bitmex) GetTrollboxConnectedUsers(ctx context.Context) (ConnectedUsers, error)
GetTrollboxConnectedUsers the channels from the bitmex trollbox
func (*Bitmex) GetTrollboxMessages ¶
GetTrollboxMessages returns messages from the bitmex trollbox
func (*Bitmex) GetUrgentAnnouncement ¶
func (b *Bitmex) GetUrgentAnnouncement(ctx context.Context) ([]Announcement, error)
GetUrgentAnnouncement returns an urgent announcement for your account
func (*Bitmex) GetUserCommision ¶
func (b *Bitmex) GetUserCommision(ctx context.Context) (UserCommission, error)
GetUserCommision returns your account's commission status.
func (*Bitmex) GetUserInfo ¶
GetUserInfo returns your user information
func (*Bitmex) GetUserMargin ¶
GetUserMargin returns user margin information
func (*Bitmex) GetUserPreferences ¶
func (b *Bitmex) GetUserPreferences(ctx context.Context, params UserPreferencesParams) (User, error)
GetUserPreferences returns user preferences
func (*Bitmex) GetWalletHistory ¶
GetWalletHistory returns user wallet history transaction data
func (*Bitmex) GetWalletInfo ¶
GetWalletInfo returns user wallet information
func (*Bitmex) GetWalletSummary ¶
GetWalletSummary returns user wallet summary
func (*Bitmex) GetWithdrawalsHistory ¶
func (b *Bitmex) GetWithdrawalsHistory(ctx context.Context, c currency.Code, _ asset.Item) ([]exchange.WithdrawalHistory, error)
GetWithdrawalsHistory returns previous withdrawals data
func (*Bitmex) IsPerpetualFutureCurrency ¶
IsPerpetualFutureCurrency ensures a given asset and currency is a perpetual future
func (*Bitmex) IsolatePosition ¶
func (b *Bitmex) IsolatePosition(ctx context.Context, params PositionIsolateMarginParams) (Position, error)
IsolatePosition enables isolated margin or cross margin per-position
func (*Bitmex) LeveragePosition ¶
func (b *Bitmex) LeveragePosition(ctx context.Context, params PositionUpdateLeverageParams) (Position, error)
LeveragePosition chooses leverage for a position
func (*Bitmex) ModifyOrder ¶
func (b *Bitmex) ModifyOrder(ctx context.Context, action *order.Modify) (*order.ModifyResponse, error)
ModifyOrder will allow of changing orderbook placement and limit to market conversion
func (*Bitmex) RemoveAPIKey ¶
RemoveAPIKey removes an Apikey from the bitmex trading engine
func (*Bitmex) SendAuthenticatedHTTPRequest ¶
func (b *Bitmex) SendAuthenticatedHTTPRequest(ctx context.Context, ep exchange.URL, verb, path string, params Parameter, result interface{}) error
SendAuthenticatedHTTPRequest sends an authenticated HTTP request to bitmex
func (*Bitmex) SendHTTPRequest ¶
func (b *Bitmex) SendHTTPRequest(ctx context.Context, ep exchange.URL, path string, params Parameter, result interface{}) error
SendHTTPRequest sends an unauthenticated HTTP request
func (*Bitmex) SendTrollboxMessage ¶
SendTrollboxMessage sends a message to the bitmex trollbox
func (*Bitmex) SetDefaults ¶
func (b *Bitmex) SetDefaults()
SetDefaults sets the basic defaults for Bitmex
func (*Bitmex) SubmitOrder ¶
SubmitOrder submits a new order
func (*Bitmex) SubmitOrders ¶ added in v1.0.7
func (*Bitmex) Subscribe ¶
func (b *Bitmex) Subscribe(channelsToSubscribe []subscription.Subscription) error
Subscribe subscribes to a websocket channel
func (*Bitmex) TransferMargin ¶
func (b *Bitmex) TransferMargin(ctx context.Context, params PositionTransferIsolatedMarginParams) (Position, error)
TransferMargin transfers equity in or out of a position
func (*Bitmex) Unsubscribe ¶
func (b *Bitmex) Unsubscribe(channelsToUnsubscribe []subscription.Subscription) error
Unsubscribe sends a websocket message to stop receiving data from the channel
func (*Bitmex) UpdateAccountInfo ¶
func (b *Bitmex) UpdateAccountInfo(ctx context.Context, assetType asset.Item) (account.Holdings, error)
UpdateAccountInfo retrieves balances for all enabled currencies for the Bitmex exchange
func (*Bitmex) UpdateOrderExecutionLimits ¶
UpdateOrderExecutionLimits updates order execution limits
func (*Bitmex) UpdateOrderbook ¶
func (b *Bitmex) UpdateOrderbook(ctx context.Context, p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
UpdateOrderbook updates and returns the orderbook for a currency pair
func (*Bitmex) UpdateRiskLimit ¶
func (b *Bitmex) UpdateRiskLimit(ctx context.Context, params PositionUpdateRiskLimitParams) (Position, error)
UpdateRiskLimit updates risk limit on a position
func (*Bitmex) UpdateTicker ¶
func (b *Bitmex) UpdateTicker(ctx context.Context, p currency.Pair, a asset.Item) (*ticker.Price, error)
UpdateTicker updates and returns the ticker for a currency pair
func (*Bitmex) UpdateTickers ¶
UpdateTickers updates the ticker for all currency pairs of a given asset type
func (*Bitmex) UpdateTradablePairs ¶
UpdateTradablePairs updates the exchanges available pairs and stores them in the exchanges config
func (*Bitmex) UpdateUserInfo ¶
UpdateUserInfo updates user information
func (*Bitmex) UserLogOut ¶
UserLogOut logs you out of BitMEX
func (*Bitmex) UserLogOutAll ¶
UserLogOutAll logs you out of all systems for BitMEX
func (*Bitmex) UserRequestWithdrawal ¶
func (b *Bitmex) UserRequestWithdrawal(ctx context.Context, params UserRequestWithdrawalParams) (TransactionInfo, error)
UserRequestWithdrawal This will send a confirmation email to the email address on record, unless requested via an API Key with the withdraw permission.
func (*Bitmex) ValidateAPICredentials ¶
ValidateAPICredentials validates current credentials used for wrapper functionality
func (*Bitmex) WithdrawCryptocurrencyFunds ¶
func (b *Bitmex) WithdrawCryptocurrencyFunds(ctx context.Context, withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
WithdrawCryptocurrencyFunds returns a withdrawal ID when a withdrawal is submitted
func (*Bitmex) WithdrawFiatFunds ¶
func (b *Bitmex) WithdrawFiatFunds(_ context.Context, _ *withdraw.Request) (*withdraw.ExchangeResponse, error)
WithdrawFiatFunds returns a withdrawal ID when a withdrawal is submitted
func (*Bitmex) WithdrawFiatFundsToInternationalBank ¶
func (b *Bitmex) WithdrawFiatFundsToInternationalBank(_ context.Context, _ *withdraw.Request) (*withdraw.ExchangeResponse, error)
WithdrawFiatFundsToInternationalBank returns a withdrawal ID when a withdrawal is submitted
type Chat ¶
type Chat struct { ChannelID float64 `json:"channelID"` Date string `json:"date"` FromBot bool `json:"fromBot"` HTML string `json:"html"` ID int32 `json:"id"` Message string `json:"message"` User string `json:"user"` }
Chat Trollbox Data
type ChatChannel ¶
ChatChannel chat channel
type ChatGetParams ¶
type ChatGetParams struct { // ChannelID - [Optional] Leave blank for all. ChannelID float64 `json:"channelID,omitempty"` // Count - [Optional] Number of results to fetch. Count int32 `json:"count,omitempty"` // Reverse - [Optional] If true, will sort results newest first. Reverse bool `json:"reverse,omitempty"` // Start - [Optional] Starting ID for results. Start int32 `json:"start,omitempty"` }
ChatGetParams contains all the parameters to send to the API endpoint
func (*ChatGetParams) IsNil ¶
func (p *ChatGetParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (*ChatGetParams) ToURLVals ¶
func (p *ChatGetParams) ToURLVals(path string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (*ChatGetParams) VerifyData ¶
func (p *ChatGetParams) VerifyData() error
VerifyData verifies outgoing data sets
type ChatSendParams ¶
type ChatSendParams struct { // ChannelID - Channel to post to. Default 1 (English). ChannelID float64 `json:"channelID,omitempty"` // Message to send Message string `json:"message,omitempty"` }
ChatSendParams contains all the parameters to send to the API endpoint
func (*ChatSendParams) IsNil ¶
func (p *ChatSendParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (ChatSendParams) ToURLVals ¶
func (p ChatSendParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (ChatSendParams) VerifyData ¶
func (p ChatSendParams) VerifyData() error
VerifyData verifies outgoing data sets
type ConfirmEmail ¶
type ConfirmEmail struct { ID string `json:"id"` TTL int64 `json:"ttl"` Created string `json:"created"` UserID int64 `json:"userId"` }
ConfirmEmail confirmatin email endpoint data
type ConnectedUsers ¶
ConnectedUsers connected users
type Execution ¶
type Execution struct { Account int64 `json:"account"` AvgPx float64 `json:"avgPx"` ClOrdID string `json:"clOrdID"` ClOrdLinkID string `json:"clOrdLinkID"` Commission float64 `json:"commission"` ContingencyType string `json:"contingencyType"` CumQty int64 `json:"cumQty"` Currency string `json:"currency"` DisplayQuantity int64 `json:"displayQty"` ExDestination string `json:"exDestination"` ExecComm int64 `json:"execComm"` ExecCost int64 `json:"execCost"` ExecID string `json:"execID"` ExecInst string `json:"execInst"` ExecType string `json:"execType"` ForeignNotional float64 `json:"foreignNotional"` HomeNotional float64 `json:"homeNotional"` LastLiquidityInd string `json:"lastLiquidityInd"` LastMkt string `json:"lastMkt"` LastPx float64 `json:"lastPx"` LastQty int64 `json:"lastQty"` LeavesQty int64 `json:"leavesQty"` MultiLegReportingType string `json:"multiLegReportingType"` OrdRejReason string `json:"ordRejReason"` OrdStatus string `json:"ordStatus"` OrdType string `json:"ordType"` OrderID string `json:"orderID"` OrderQty int64 `json:"orderQty"` PegOffsetValue float64 `json:"pegOffsetValue"` PegPriceType string `json:"pegPriceType"` Price float64 `json:"price"` SettlCurrency string `json:"settlCurrency"` Side string `json:"side"` SimpleCumQty float64 `json:"simpleCumQty"` SimpleLeavesQty float64 `json:"simpleLeavesQty"` SimpleOrderQty float64 `json:"simpleOrderQty"` StopPx float64 `json:"stopPx"` Symbol string `json:"symbol"` Text string `json:"text"` TimeInForce string `json:"timeInForce"` Timestamp time.Time `json:"timestamp"` TradePublishIndicator string `json:"tradePublishIndicator"` TransactTime string `json:"transactTime"` TrdMatchID string `json:"trdMatchID"` Triggered string `json:"triggered"` UnderlyingLastPx float64 `json:"underlyingLastPx"` WorkingIndicator bool `json:"workingIndicator"` }
Execution Raw Order and Balance Data
type Funding ¶
type Funding struct { FundingInterval string `json:"fundingInterval"` FundingRate float64 `json:"fundingRate"` FundingRateDaily float64 `json:"fundingRateDaily"` Symbol string `json:"symbol"` Timestamp time.Time `json:"timestamp"` }
Funding Swap Funding History
type GenericRequestParams ¶
type GenericRequestParams struct { // Columns - [Optional] Array of column names to fetch. If omitted, will // return all columns. // NOTE that this method will always return item keys, even when not // specified, so you may receive more columns that you expect. Columns string `json:"columns,omitempty"` // Count - Number of results to fetch. Count int32 `json:"count,omitempty"` // EndTime - Ending date filter for results. EndTime string `json:"endTime,omitempty"` // Filter - Generic table filter. Send JSON key/value pairs, such as // `{"key": "value"}`. You can key on individual fields, and do more advanced // querying on timestamps. See the // [Timestamp Docs](https://testnet.bitmex.com/app/restAPI#Timestamp-Filters) // for more details. Filter string `json:"filter,omitempty"` // Reverse - If true, will sort results newest first. Reverse bool `json:"reverse,omitempty"` // Start - Starting point for results. Start int32 `json:"start,omitempty"` // StartTime - Starting date filter for results. StartTime string `json:"startTime,omitempty"` // Symbol - Instrument symbol. Send a bare series (e.g. XBU) to get data for // the nearest expiring contract in that series. // You can also send a timeframe, e.g. `XBU:monthly`. Timeframes are `daily`, // `weekly`, `monthly`, `quarterly`, and `biquarterly`. Symbol string `json:"symbol,omitempty"` }
GenericRequestParams contains all the parameters for some general functions
func (*GenericRequestParams) IsNil ¶
func (p *GenericRequestParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (*GenericRequestParams) ToURLVals ¶
func (p *GenericRequestParams) ToURLVals(path string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (*GenericRequestParams) VerifyData ¶
func (p *GenericRequestParams) VerifyData() error
VerifyData verifies outgoing data sets
type IndexComposite ¶
type IndexComposite struct { IndexSymbol string `json:"indexSymbol"` LastPrice float64 `json:"lastPrice"` Logged string `json:"logged"` Reference string `json:"reference"` Symbol string `json:"symbol"` Timestamp time.Time `json:"timestamp"` Weight float64 `json:"weight"` }
IndexComposite index composite
type Instrument ¶
type Instrument struct { AskPrice float64 `json:"askPrice"` BankruptLimitDownPrice float64 `json:"bankruptLimitDownPrice"` BankruptLimitUpPrice float64 `json:"bankruptLimitUpPrice"` BidPrice float64 `json:"bidPrice"` BuyLeg string `json:"buyLeg"` CalcInterval string `json:"calcInterval"` Capped bool `json:"capped"` ClosingTimestamp time.Time `json:"closingTimestamp"` Deleverage bool `json:"deleverage"` Expiry string `json:"expiry"` FairBasis float64 `json:"fairBasis"` FairBasisRate float64 `json:"fairBasisRate"` FairMethod string `json:"fairMethod"` FairPrice float64 `json:"fairPrice"` Front string `json:"front"` FundingBaseSymbol string `json:"fundingBaseSymbol"` FundingInterval time.Time `json:"fundingInterval"` FundingPremiumSymbol string `json:"fundingPremiumSymbol"` FundingQuoteSymbol string `json:"fundingQuoteSymbol"` FundingRate float64 `json:"fundingRate"` FundingTimestamp time.Time `json:"fundingTimestamp"` HasLiquidity bool `json:"hasLiquidity"` HighPrice float64 `json:"highPrice"` ImpactAskPrice float64 `json:"impactAskPrice"` ImpactBidPrice float64 `json:"impactBidPrice"` ImpactMidPrice float64 `json:"impactMidPrice"` IndicativeFundingRate float64 `json:"indicativeFundingRate"` IndicativeSettlePrice float64 `json:"indicativeSettlePrice"` IndicativeTaxRate float64 `json:"indicativeTaxRate"` InitMargin float64 `json:"initMargin"` InsuranceFee float64 `json:"insuranceFee"` InverseLeg string `json:"inverseLeg"` IsInverse bool `json:"isInverse"` IsQuanto bool `json:"isQuanto"` LastChangePcnt float64 `json:"lastChangePcnt"` LastPrice float64 `json:"lastPrice"` LastPriceProtected float64 `json:"lastPriceProtected"` LastTickDirection string `json:"lastTickDirection"` Limit float64 `json:"limit"` LimitDownPrice float64 `json:"limitDownPrice"` LimitUpPrice float64 `json:"limitUpPrice"` Listing string `json:"listing"` LotSize float64 `json:"lotSize"` LowPrice float64 `json:"lowPrice"` MaintMargin float64 `json:"maintMargin"` MakerFee float64 `json:"makerFee"` MarkMethod string `json:"markMethod"` MarkPrice float64 `json:"markPrice"` MaxOrderQty float64 `json:"maxOrderQty"` MaxPrice float64 `json:"maxPrice"` MidPrice float64 `json:"midPrice"` Multiplier float64 `json:"multiplier"` OpenInterest float64 `json:"openInterest"` OpenValue float64 `json:"openValue"` OpeningTimestamp time.Time `json:"openingTimestamp"` OptionMultiplier float64 `json:"optionMultiplier"` OptionStrikePcnt float64 `json:"optionStrikePcnt"` OptionStrikePrice float64 `json:"optionStrikePrice"` OptionStrikeRound float64 `json:"optionStrikeRound"` OptionUnderlyingPrice float64 `json:"optionUnderlyingPrice"` PositionCurrency string `json:"positionCurrency"` PrevClosePrice float64 `json:"prevClosePrice"` PrevPrice24h float64 `json:"prevPrice24h"` PrevTotalTurnover float64 `json:"prevTotalTurnover"` PrevTotalVolume float64 `json:"prevTotalVolume"` PublishInterval string `json:"publishInterval"` PublishTime string `json:"publishTime"` QuoteCurrency string `json:"quoteCurrency"` QuoteToSettleMultiplier int64 `json:"quoteToSettleMultiplier"` RebalanceInterval string `json:"rebalanceInterval"` RebalanceTimestamp time.Time `json:"rebalanceTimestamp"` Reference string `json:"reference"` ReferenceSymbol string `json:"referenceSymbol"` RelistInterval string `json:"relistInterval"` RiskLimit float64 `json:"riskLimit"` RiskStep float64 `json:"riskStep"` RootSymbol string `json:"rootSymbol"` SellLeg string `json:"sellLeg"` SessionInterval string `json:"sessionInterval"` SettlCurrency string `json:"settlCurrency"` Settle string `json:"settle"` SettledPrice float64 `json:"settledPrice"` SettlementFee float64 `json:"settlementFee"` State string `json:"state"` Symbol string `json:"symbol"` TakerFee float64 `json:"takerFee"` Taxed bool `json:"taxed"` TickSize float64 `json:"tickSize"` Timestamp time.Time `json:"timestamp"` TotalTurnover float64 `json:"totalTurnover"` TotalVolume float64 `json:"totalVolume"` Turnover float64 `json:"turnover"` Turnover24h float64 `json:"turnover24h"` Typ string `json:"typ"` Underlying string `json:"underlying"` UnderlyingSymbol string `json:"underlyingSymbol"` UnderlyingToPositionMultiplier float64 `json:"underlyingToPositionMultiplier"` UnderlyingToSettleMultiplier float64 `json:"underlyingToSettleMultiplier"` Volume float64 `json:"volume"` Volume24h float64 `json:"volume24h"` Vwap float64 `json:"vwap"` }
Instrument Tradeable Contracts, Indices, and History
type InstrumentInterval ¶
type InstrumentInterval struct { Intervals []string `json:"intervals"` Symbols []string `json:"symbols"` }
InstrumentInterval instrument interval
type Insurance ¶
type Insurance struct { Currency string `json:"currency"` Timestamp time.Time `json:"timestamp"` WalletBalance int64 `json:"walletBalance"` }
Insurance stores insurance fund data
type Leaderboard ¶
type Leaderboard struct { IsRealName bool `json:"isRealName"` Name string `json:"name"` Profit float64 `json:"profit"` }
Leaderboard Information on Top Users
type LeaderboardGetParams ¶
type LeaderboardGetParams struct { // MethodRanking - [Optional] type. Options: "notional", "ROE" Method string `json:"method,omitempty"` }
LeaderboardGetParams contains all the parameters to send to the API endpoint
func (LeaderboardGetParams) IsNil ¶
func (p LeaderboardGetParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (LeaderboardGetParams) ToURLVals ¶
func (p LeaderboardGetParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (LeaderboardGetParams) VerifyData ¶
func (p LeaderboardGetParams) VerifyData() error
VerifyData verifies outgoing data sets
type Liquidation ¶
type Liquidation struct { LeavesQty int64 `json:"leavesQty"` OrderID string `json:"orderID"` Price float64 `json:"price"` Side string `json:"side"` Symbol string `json:"symbol"` }
Liquidation Active Liquidations
type MinWithdrawalFee ¶
type MinWithdrawalFee struct { Currency string `json:"currency"` Fee int64 `json:"fee"` MinFee int64 `json:"minFee"` }
MinWithdrawalFee minimum withdrawal fee information
type Notification ¶
type Notification struct { Body string `json:"body"` Closable bool `json:"closable"` Date string `json:"date"` ID int32 `json:"id"` Persist bool `json:"persist"` Sound string `json:"sound"` Title string `json:"title"` TTL int32 `json:"ttl"` Type string `json:"type"` WaitForVisibility bool `json:"waitForVisibility"` }
Notification Account Notifications
type Order ¶
type Order struct { Account int64 `json:"account"` AvgPx float64 `json:"avgPx"` ClOrdID string `json:"clOrdID"` ClOrdLinkID string `json:"clOrdLinkID"` ContingencyType string `json:"contingencyType"` CumQty float64 `json:"cumQty"` Currency string `json:"currency"` DisplayQuantity int64 `json:"displayQty"` ExDestination string `json:"exDestination"` ExecInst string `json:"execInst"` LeavesQty float64 `json:"leavesQty"` MultiLegReportingType string `json:"multiLegReportingType"` OrdRejReason string `json:"ordRejReason"` OrdStatus string `json:"ordStatus"` OrdType int64 `json:"ordType,string"` OrderID string `json:"orderID"` OrderQty float64 `json:"orderQty"` PegOffsetValue float64 `json:"pegOffsetValue"` PegPriceType string `json:"pegPriceType"` Price float64 `json:"price"` SettlCurrency string `json:"settlCurrency"` Side int64 `json:"side,string"` SimpleCumQty float64 `json:"simpleCumQty"` SimpleLeavesQty float64 `json:"simpleLeavesQty"` SimpleOrderQty float64 `json:"simpleOrderQty"` StopPx float64 `json:"stopPx"` Symbol string `json:"symbol"` Text string `json:"text"` TimeInForce string `json:"timeInForce"` Timestamp time.Time `json:"timestamp"` TransactTime time.Time `json:"transactTime"` Triggered string `json:"triggered"` WorkingIndicator bool `json:"workingIndicator"` }
Order Placement, Cancellation, Amending, and History
type OrderAmendBulkParams ¶
type OrderAmendBulkParams struct { // Orders - An array of orders. Orders []OrderAmendParams `json:"orders,omitempty"` }
OrderAmendBulkParams contains all the parameters to send to the API endpoint
func (OrderAmendBulkParams) IsNil ¶
func (p OrderAmendBulkParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (OrderAmendBulkParams) ToURLVals ¶
func (p OrderAmendBulkParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (OrderAmendBulkParams) VerifyData ¶
func (p OrderAmendBulkParams) VerifyData() error
VerifyData verifies outgoing data sets
type OrderAmendParams ¶
type OrderAmendParams struct { // ClientOrderID - [Optional] new Client Order ID, requires `origClOrdID`. ClientOrderID string `json:"clOrdID,omitempty"` // LeavesQuantity - [Optional] leaves quantity in units of the instrument // (i.e. contracts). Useful for amending partially filled orders. LeavesQuantity int32 `json:"leavesQty,omitempty"` OrderID string `json:"orderID,omitempty"` // OrderQuantity - [Optional] order quantity in units of the instrument // (i.e. contracts). OrderQty int32 `json:"orderQty,omitempty"` // OrigClOrdID - Client Order ID. See POST /order. OrigClOrdID string `json:"origClOrdID,omitempty"` // PegOffsetValue - [Optional] trailing offset from the current price for // 'Stop', 'StopLimit', 'MarketIfTouched', and 'LimitIfTouched' orders; use a // negative offset for stop-sell orders and buy-if-touched orders. [Optional] // offset from the peg price for 'Pegged' orders. PegOffsetValue float64 `json:"pegOffsetValue,omitempty"` // Price - [Optional] limit price for 'Limit', 'StopLimit', and // 'LimitIfTouched' orders. Price float64 `json:"price,omitempty"` // SimpleLeavesQuantity - [Optional] leaves quantity in units of the underlying // instrument (i.e. Bitcoin). Useful for amending partially filled orders. SimpleLeavesQuantity float64 `json:"simpleLeavesQty,omitempty"` // SimpleOrderQuantity - [Optional] order quantity in units of the underlying // instrument (i.e. Bitcoin). SimpleOrderQuantity float64 `json:"simpleOrderQty,omitempty"` // StopPrice - [Optional] trigger price for 'Stop', 'StopLimit', // 'MarketIfTouched', and 'LimitIfTouched' orders. Use a price below the // current price for stop-sell orders and buy-if-touched orders. StopPx float64 `json:"stopPx,omitempty"` // Text - [Optional] amend annotation. e.g. 'Adjust skew'. Text string `json:"text,omitempty"` }
OrderAmendParams contains all the parameters to send to the API endpoint for the order amend operation
func (*OrderAmendParams) IsNil ¶
func (p *OrderAmendParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (*OrderAmendParams) ToURLVals ¶
func (p *OrderAmendParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (*OrderAmendParams) VerifyData ¶
func (p *OrderAmendParams) VerifyData() error
VerifyData verifies outgoing data sets
type OrderBookData ¶
type OrderBookData struct { Data []OrderBookL2 `json:"data"` Action string `json:"action"` }
OrderBookData contains orderbook resp data with action to be taken
type OrderBookGetL2Params ¶
type OrderBookGetL2Params struct { // Depth - Orderbook depth per side. Send 0 for full depth. Depth int32 `json:"depth,omitempty"` // Symbol -Instrument symbol. Send a series (e.g. XBT) to get data for the // nearest contract in that series. Symbol string `json:"symbol,omitempty"` }
OrderBookGetL2Params contains all the parameters to send to the API endpoint
func (OrderBookGetL2Params) IsNil ¶
func (p OrderBookGetL2Params) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (OrderBookGetL2Params) ToURLVals ¶
func (p OrderBookGetL2Params) ToURLVals(path string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (OrderBookGetL2Params) VerifyData ¶
func (p OrderBookGetL2Params) VerifyData() error
VerifyData verifies outgoing data sets
type OrderBookL2 ¶
type OrderBookL2 struct { ID int64 `json:"id"` Price float64 `json:"price"` Side string `json:"side"` Size int64 `json:"size"` Symbol string `json:"symbol"` Timestamp time.Time `json:"timestamp"` }
OrderBookL2 contains order book l2
type OrderCancelAllAfterParams ¶
type OrderCancelAllAfterParams struct { // Timeout in ms. Set to 0 to cancel this timer. Timeout float64 `json:"timeout,omitempty"` }
OrderCancelAllAfterParams contains all the parameters to send to the API endpoint
func (OrderCancelAllAfterParams) IsNil ¶
func (p OrderCancelAllAfterParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (OrderCancelAllAfterParams) ToURLVals ¶
func (p OrderCancelAllAfterParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (OrderCancelAllAfterParams) VerifyData ¶
func (p OrderCancelAllAfterParams) VerifyData() error
VerifyData verifies outgoing data sets
type OrderCancelAllParams ¶
type OrderCancelAllParams struct { // Filter - [Optional] filter for cancellation. Use to only cancel some // orders, e.g. `{"side": "Buy"}`. Filter string `json:"filter,omitempty"` // Symbol - [Optional] symbol. If provided, only cancels orders for that // symbol. Symbol string `json:"symbol,omitempty"` // Text - [Optional] cancellation annotation. e.g. 'Spread Exceeded' Text string `json:"text,omitempty"` }
OrderCancelAllParams contains all the parameters to send to the API endpoint for cancelling all your orders
func (OrderCancelAllParams) IsNil ¶
func (p OrderCancelAllParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (OrderCancelAllParams) ToURLVals ¶
func (p OrderCancelAllParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (OrderCancelAllParams) VerifyData ¶
func (p OrderCancelAllParams) VerifyData() error
VerifyData verifies outgoing data sets
type OrderCancelParams ¶
type OrderCancelParams struct { // ClientOrderID - Client Order ID(s). See POST /order. ClientOrderID string `json:"clOrdID,omitempty"` // OrderID - Order ID(s). OrderID string `json:"orderID,omitempty"` // Text - [Optional] cancellation annotation. e.g. 'Spread Exceeded'. Text string `json:"text,omitempty"` }
OrderCancelParams contains all the parameters to send to the API endpoint
func (OrderCancelParams) IsNil ¶
func (p OrderCancelParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (OrderCancelParams) ToURLVals ¶
func (p OrderCancelParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (OrderCancelParams) VerifyData ¶
func (p OrderCancelParams) VerifyData() error
VerifyData verifies outgoing data sets
type OrderClosePositionParams ¶
type OrderClosePositionParams struct { // Price - [Optional] limit price. Price float64 `json:"price,omitempty"` // Symbol of position to close. Symbol string `json:"symbol,omitempty"` }
OrderClosePositionParams contains all the parameters to send to the API endpoint
func (OrderClosePositionParams) IsNil ¶
func (p OrderClosePositionParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (OrderClosePositionParams) ToURLVals ¶
func (p OrderClosePositionParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (OrderClosePositionParams) VerifyData ¶
func (p OrderClosePositionParams) VerifyData() error
VerifyData verifies outgoing data sets
type OrderInsertData ¶
type OrderInsertData struct { WorkingIndicator bool `json:"workingIndicator"` Account int64 `json:"account"` AveragePrice float64 `json:"avgPx"` Commission float64 `json:"commission"` FilledQuantity float64 `json:"cumQty"` DisplayQuantity float64 `json:"displayQty"` ExecComm float64 `json:"execComm"` ExecCost float64 `json:"execCost"` ForeignNotional float64 `json:"foreignNotional"` HomeNotional float64 `json:"homeNotional"` LastPrice float64 `json:"lastPx"` LastQuantity float64 `json:"lastQty"` LeavesQuantity float64 `json:"leavesQty"` OrderQuantity float64 `json:"orderQty"` PegOffsetValue float64 `json:"pegOffsetValue"` Price float64 `json:"price"` SimpleFilledQuantity float64 `json:"simpleCumQty"` SimpleLeavesQuantity float64 `json:"simpleLeavesQty"` SimpleOrderQuantity float64 `json:"simpleOrderQty"` StopPrice float64 `json:"stopPx"` ExDestination string `json:"exDestination"` ContingencyType string `json:"contingencyType"` Currency string `json:"currency"` ExecutionID string `json:"execID"` ExecutionInstance string `json:"execInst"` ExecutionType string `json:"execType"` LastLiquidityInd string `json:"lastLiquidityInd"` LastMkt string `json:"lastMkt"` UnderlyingLastPrice float64 `json:"underlyingLastPx"` MultiLegReportingType string `json:"multiLegReportingType"` OrderRejectedReason string `json:"ordRejReason"` OrderStatus string `json:"ordStatus"` OrderType string `json:"ordType"` OrderID string `json:"orderID"` PegPriceType string `json:"pegPriceType"` ClientOrderID string `json:"clOrdID"` ClientOrderLinkID string `json:"clOrdLinkID"` Symbol string `json:"symbol"` Text string `json:"text"` TimeInForce string `json:"timeInForce"` Timestamp time.Time `json:"timestamp"` TradePublishIndicator string `json:"tradePublishIndicator"` TransactTime time.Time `json:"transactTime"` TradingMatchID string `json:"trdMatchID"` Triggered string `json:"triggered"` SettleCurrency string `json:"settlCurrency"` Side string `json:"side"` }
OrderInsertData holds order data from an order response
type OrderNewBulkParams ¶
type OrderNewBulkParams struct { // Orders - An array of orders. Orders []OrderNewParams `json:"orders,omitempty"` }
OrderNewBulkParams contains all the parameters to send to the API endpoint
func (OrderNewBulkParams) IsNil ¶
func (p OrderNewBulkParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (OrderNewBulkParams) ToURLVals ¶
func (p OrderNewBulkParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (OrderNewBulkParams) VerifyData ¶
func (p OrderNewBulkParams) VerifyData() error
VerifyData verifies outgoing data sets
type OrderNewParams ¶
type OrderNewParams struct { // ClientOrderID - [Optional] Client Order ID. This clOrdID will come back on the // order and any related executions. ClientOrderID string `json:"clOrdID,omitempty"` // ClientOrderLinkID - [Optional] Client Order Link ID for contingent orders. ClientOrderLinkID string `json:"clOrdLinkID,omitempty"` // ContingencyType - [Optional] contingency type for use with `clOrdLinkID`. // Valid options: OneCancelsTheOther, OneTriggersTheOther, // OneUpdatesTheOtherAbsolute, OneUpdatesTheOtherProportional. ContingencyType string `json:"contingencyType,omitempty"` // DisplayQuantity- [Optional] quantity to display in the book. Use 0 for a fully // hidden order. DisplayQuantity float64 `json:"displayQty,omitempty"` // ExecutionInstance - [Optional] execution instructions. Valid options: // ParticipateDoNotInitiate, AllOrNone, MarkPrice, IndexPrice, LastPrice, // Close, ReduceOnly, Fixed. 'AllOrNone' instruction requires `displayQty` // to be 0. 'MarkPrice', 'IndexPrice' or 'LastPrice' instruction valid for // 'Stop', 'StopLimit', 'MarketIfTouched', and 'LimitIfTouched' orders. ExecInst string `json:"execInst,omitempty"` // OrderType - Order type. Valid options: Market, Limit, Stop, StopLimit, // MarketIfTouched, LimitIfTouched, MarketWithLeftOverAsLimit, Pegged. // Defaults to 'Limit' when `price` is specified. Defaults to 'Stop' when // `stopPx` is specified. Defaults to 'StopLimit' when `price` and `stopPx` // are specified. OrderType string `json:"ordType,omitempty"` // OrderQuantity Order quantity in units of the instrument (i.e. contracts). OrderQuantity float64 `json:"orderQty,omitempty"` // PegOffsetValue - [Optional] trailing offset from the current price for // 'Stop', 'StopLimit', 'MarketIfTouched', and 'LimitIfTouched' orders; use a // negative offset for stop-sell orders and buy-if-touched orders. [Optional] // offset from the peg price for 'Pegged' orders. PegOffsetValue float64 `json:"pegOffsetValue,omitempty"` // PegPriceType - [Optional] peg price type. Valid options: LastPeg, // MidPricePeg, MarketPeg, PrimaryPeg, TrailingStopPeg. PegPriceType string `json:"pegPriceType,omitempty"` // Price - [Optional] limit price for 'Limit', 'StopLimit', and // 'LimitIfTouched' orders. Price float64 `json:"price,omitempty"` // Side - Order side. Valid options: Buy, Sell. Defaults to 'Buy' unless // `orderQty` or `simpleOrderQty` is negative. Side string `json:"side,omitempty"` // SimpleOrderQuantity - Order quantity in units of the underlying instrument // (i.e. Bitcoin). SimpleOrderQuantity float64 `json:"simpleOrderQty,omitempty"` // StopPrice - [Optional] trigger price for 'Stop', 'StopLimit', // 'MarketIfTouched', and 'LimitIfTouched' orders. Use a price below the // current price for stop-sell orders and buy-if-touched orders. Use // `execInst` of 'MarkPrice' or 'LastPrice' to define the current price used // for triggering. StopPx float64 `json:"stopPx,omitempty"` // Symbol - Instrument symbol. e.g. 'XBTUSD'. Symbol string `json:"symbol,omitempty"` // Text - [Optional] order annotation. e.g. 'Take profit'. Text string `json:"text,omitempty"` // TimeInForce - Valid options: Day, GoodTillCancel, ImmediateOrCancel, // FillOrKill. Defaults to 'GoodTillCancel' for 'Limit', 'StopLimit', // 'LimitIfTouched', and 'MarketWithLeftOverAsLimit' orders. TimeInForce string `json:"timeInForce,omitempty"` }
OrderNewParams contains all the parameters to send to the API endpoint
func (*OrderNewParams) IsNil ¶
func (p *OrderNewParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (*OrderNewParams) ToURLVals ¶
func (p *OrderNewParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (*OrderNewParams) VerifyData ¶
func (p *OrderNewParams) VerifyData() error
VerifyData verifies outgoing data sets
type OrdersRequest ¶
type OrdersRequest struct { Symbol string `json:"symbol,omitempty"` Filter string `json:"filter,omitempty"` Columns string `json:"columns,omitempty"` Count float64 `json:"count,omitempty"` Start float64 `json:"start,omitempty"` Reverse bool `json:"reverse,omitempty"` StartTime string `json:"startTime,omitempty"` EndTime string `json:"endTime,omitempty"` }
OrdersRequest used for GetOrderHistory
func (*OrdersRequest) IsNil ¶
func (p *OrdersRequest) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (*OrdersRequest) ToURLVals ¶
func (p *OrdersRequest) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (*OrdersRequest) VerifyData ¶
func (p *OrdersRequest) VerifyData() error
VerifyData verifies parameter data during SendAuthenticatedHTTPRequest
type Position ¶
type Position struct { Account int64 `json:"account"` AvgCostPrice float64 `json:"avgCostPrice"` AvgEntryPrice float64 `json:"avgEntryPrice"` BankruptPrice float64 `json:"bankruptPrice"` BreakEvenPrice float64 `json:"breakEvenPrice"` Commission float64 `json:"commission"` CrossMargin bool `json:"crossMargin"` Currency string `json:"currency"` CurrentComm int64 `json:"currentComm"` CurrentCost int64 `json:"currentCost"` CurrentQty int64 `json:"currentQty"` CurrentTimestamp time.Time `json:"currentTimestamp"` DeleveragePercentile float64 `json:"deleveragePercentile"` ExecBuyCost int64 `json:"execBuyCost"` ExecBuyQty int64 `json:"execBuyQty"` ExecComm int64 `json:"execComm"` ExecCost int64 `json:"execCost"` ExecQty int64 `json:"execQty"` ExecSellCost int64 `json:"execSellCost"` ExecSellQty int64 `json:"execSellQty"` ForeignNotional float64 `json:"foreignNotional"` GrossExecCost int64 `json:"grossExecCost"` GrossOpenCost int64 `json:"grossOpenCost"` GrossOpenPremium int64 `json:"grossOpenPremium"` HomeNotional float64 `json:"homeNotional"` IndicativeTax int64 `json:"indicativeTax"` IndicativeTaxRate float64 `json:"indicativeTaxRate"` InitMargin int64 `json:"initMargin"` InitMarginReq float64 `json:"initMarginReq"` IsOpen bool `json:"isOpen"` LastPrice float64 `json:"lastPrice"` LastValue int64 `json:"lastValue"` Leverage float64 `json:"leverage"` LiquidationPrice float64 `json:"liquidationPrice"` LongBankrupt int64 `json:"longBankrupt"` MaintMargin int64 `json:"maintMargin"` MaintMarginReq float64 `json:"maintMarginReq"` MarginCallPrice float64 `json:"marginCallPrice"` MarkPrice float64 `json:"markPrice"` MarkValue int64 `json:"markValue"` OpenOrderBuyCost int64 `json:"openOrderBuyCost"` OpenOrderBuyPremium int64 `json:"openOrderBuyPremium"` OpenOrderBuyQty int64 `json:"openOrderBuyQty"` OpenOrderSellCost int64 `json:"openOrderSellCost"` OpenOrderSellPremium int64 `json:"openOrderSellPremium"` OpenOrderSellQty int64 `json:"openOrderSellQty"` OpeningComm int64 `json:"openingComm"` OpeningCost int64 `json:"openingCost"` OpeningQty int64 `json:"openingQty"` OpeningTimestamp time.Time `json:"openingTimestamp"` PosAllowance int64 `json:"posAllowance"` PosComm int64 `json:"posComm"` PosCost int64 `json:"posCost"` PosCost2 int64 `json:"posCost2"` PosCross int64 `json:"posCross"` PosInit int64 `json:"posInit"` PosLoss int64 `json:"posLoss"` PosMaint int64 `json:"posMaint"` PosMargin int64 `json:"posMargin"` PosState string `json:"posState"` PrevClosePrice float64 `json:"prevClosePrice"` PrevRealisedPnl int64 `json:"prevRealisedPnl"` PrevUnrealisedPnl int64 `json:"prevUnrealisedPnl"` QuoteCurrency string `json:"quoteCurrency"` RealisedCost int64 `json:"realisedCost"` RealisedGrossPnl int64 `json:"realisedGrossPnl"` RealisedPnl int64 `json:"realisedPnl"` RealisedTax int64 `json:"realisedTax"` RebalancedPnl int64 `json:"rebalancedPnl"` RiskLimit int64 `json:"riskLimit"` RiskValue int64 `json:"riskValue"` SessionMargin int64 `json:"sessionMargin"` ShortBankrupt int64 `json:"shortBankrupt"` SimpleCost float64 `json:"simpleCost"` SimplePnl float64 `json:"simplePnl"` SimplePnlPcnt float64 `json:"simplePnlPcnt"` SimpleQty float64 `json:"simpleQty"` SimpleValue float64 `json:"simpleValue"` Symbol string `json:"symbol"` TargetExcessMargin int64 `json:"targetExcessMargin"` TaxBase int64 `json:"taxBase"` TaxableMargin int64 `json:"taxableMargin"` Timestamp time.Time `json:"timestamp"` Underlying string `json:"underlying"` UnrealisedCost int64 `json:"unrealisedCost"` UnrealisedGrossPnl int64 `json:"unrealisedGrossPnl"` UnrealisedPnl int64 `json:"unrealisedPnl"` UnrealisedPnlPcnt float64 `json:"unrealisedPnlPcnt"` UnrealisedRoePcnt float64 `json:"unrealisedRoePcnt"` UnrealisedTax int64 `json:"unrealisedTax"` VarMargin int64 `json:"varMargin"` }
Position Summary of Open and Closed Positions
type PositionGetParams ¶
type PositionGetParams struct { // Columns - Which columns to fetch. For example, send ["columnName"]. Columns string `json:"columns,omitempty"` // Count - Number of rows to fetch. Count int32 `json:"count,omitempty"` // Filter - Table filter. For example, send {"symbol": "XBTUSD"}. Filter string `json:"filter,omitempty"` }
PositionGetParams contains all the parameters to send to the API endpoint
func (PositionGetParams) IsNil ¶
func (p PositionGetParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (PositionGetParams) ToURLVals ¶
func (p PositionGetParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (PositionGetParams) VerifyData ¶
func (p PositionGetParams) VerifyData() error
VerifyData verifies outgoing data sets
type PositionIsolateMarginParams ¶
type PositionIsolateMarginParams struct { // Enabled - True for isolated margin, false for cross margin. Enabled bool `json:"enabled,omitempty"` // Symbol - Position symbol to isolate. Symbol string `json:"symbol,omitempty"` }
PositionIsolateMarginParams contains all the parameters to send to the API endpoint
func (PositionIsolateMarginParams) IsNil ¶
func (p PositionIsolateMarginParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (PositionIsolateMarginParams) ToURLVals ¶
func (p PositionIsolateMarginParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (PositionIsolateMarginParams) VerifyData ¶
func (p PositionIsolateMarginParams) VerifyData() error
VerifyData verifies outgoing data sets
type PositionTransferIsolatedMarginParams ¶
type PositionTransferIsolatedMarginParams struct { // Amount - Amount to transfer, in Satoshis. May be negative. Amount int64 `json:"amount,omitempty"` // Symbol - Symbol of position to isolate. Symbol string `json:"symbol,omitempty"` }
PositionTransferIsolatedMarginParams contains all the parameters to send to the API endpoint
func (PositionTransferIsolatedMarginParams) IsNil ¶
func (p PositionTransferIsolatedMarginParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (PositionTransferIsolatedMarginParams) ToURLVals ¶
func (p PositionTransferIsolatedMarginParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (PositionTransferIsolatedMarginParams) VerifyData ¶
func (p PositionTransferIsolatedMarginParams) VerifyData() error
VerifyData verifies outgoing data sets
type PositionUpdateLeverageParams ¶
type PositionUpdateLeverageParams struct { // Leverage - Leverage value. Send a number between 0.01 and 100 to enable // isolated margin with a fixed leverage. Send 0 to enable cross margin. Leverage float64 `json:"leverage,omitempty"` // Symbol - Symbol of position to adjust. Symbol string `json:"symbol,omitempty"` }
PositionUpdateLeverageParams contains all the parameters to send to the API endpoint
func (PositionUpdateLeverageParams) IsNil ¶
func (p PositionUpdateLeverageParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (PositionUpdateLeverageParams) ToURLVals ¶
func (p PositionUpdateLeverageParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (PositionUpdateLeverageParams) VerifyData ¶
func (p PositionUpdateLeverageParams) VerifyData() error
VerifyData verifies outgoing data sets
type PositionUpdateRiskLimitParams ¶
type PositionUpdateRiskLimitParams struct { // RiskLimit - New Risk Limit, in Satoshis. RiskLimit int64 `json:"riskLimit,omitempty"` // Symbol - Symbol of position to update risk limit on. Symbol string `json:"symbol,omitempty"` }
PositionUpdateRiskLimitParams contains all the parameters to send to the API endpoint
func (PositionUpdateRiskLimitParams) IsNil ¶
func (p PositionUpdateRiskLimitParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (PositionUpdateRiskLimitParams) ToURLVals ¶
func (p PositionUpdateRiskLimitParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (PositionUpdateRiskLimitParams) VerifyData ¶
func (p PositionUpdateRiskLimitParams) VerifyData() error
VerifyData verifies outgoing data sets
type Quote ¶
type Quote struct { AskPrice float64 `json:"askPrice"` AskSize int64 `json:"askSize"` BidPrice float64 `json:"bidPrice"` BidSize int64 `json:"bidSize"` Symbol string `json:"symbol"` Timestamp time.Time `json:"timestamp"` }
Quote Best Bid/Offer Snapshots & Historical Bins
type QuoteGetBucketedParams ¶
type QuoteGetBucketedParams struct { // BinSize - Time interval to bucket by. Available options: [1m,5m,1h,1d]. BinSize string `json:"binSize,omitempty"` // Columns - Array of column names to fetch. If omitted, will return all // columns. NOTE that this method will always return item keys, even when not // specified, so you may receive more columns that you expect. Columns string `json:"columns,omitempty"` // Count - Number of results to fetch. Count int32 `json:"count,omitempty"` // EndTime - Ending date filter for results. EndTime string `json:"endTime,omitempty"` // Filter - Generic table filter. Send JSON key/value pairs, such as // `{"key": "value"}`. You can key on individual fields, and do more advanced // querying on timestamps. See the // [Timestamp Docs](https://testnet.bitmex.com/app/restAPI#Timestamp-Filters) // for more details. Filter string `json:"filter,omitempty"` // Partial - If true, will send in-progress (incomplete) bins for the current // time period. Partial bool `json:"partial,omitempty"` // Reverse - If true, will sort results newest first. Reverse bool `json:"reverse,omitempty"` // Start - Starting point for results. Start int32 `json:"start,omitempty"` // StartTime - Starting date filter for results. StartTime string `json:"startTime,omitempty"` // Symbol - Instrument symbol. Send a bare series (e.g. XBU) to get data for // the nearest expiring contract in that series.You can also send a timeframe, // e.g. `XBU:monthly`. Timeframes are `daily`, `weekly`, `monthly`, // `quarterly`, and `biquarterly`. Symbol string `json:"symbol,omitempty"` }
QuoteGetBucketedParams contains all the parameters to send to the API endpoint
func (*QuoteGetBucketedParams) IsNil ¶
func (p *QuoteGetBucketedParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (*QuoteGetBucketedParams) ToURLVals ¶
func (p *QuoteGetBucketedParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (*QuoteGetBucketedParams) VerifyData ¶
func (p *QuoteGetBucketedParams) VerifyData() error
VerifyData verifies outgoing data sets
type RateLimit ¶
RateLimit implements the request.Limiter interface
func SetRateLimit ¶
func SetRateLimit() *RateLimit
SetRateLimit returns the rate limit for the exchange
type RequestError ¶
type RequestError struct { Error struct { Message string `json:"message"` Name string `json:"name"` } `json:"error"` }
RequestError allows for a general error capture from requests
type Settlement ¶
type Settlement struct { Bankrupt int64 `json:"bankrupt"` OptionStrikePrice float64 `json:"optionStrikePrice"` OptionUnderlyingPrice float64 `json:"optionUnderlyingPrice"` SettledPrice float64 `json:"settledPrice"` SettlementType string `json:"settlementType"` Symbol string `json:"symbol"` TaxBase int64 `json:"taxBase"` TaxRate float64 `json:"taxRate"` Timestamp time.Time `json:"timestamp"` }
Settlement Historical Settlement Data
type Stats ¶
type Stats struct { Currency string `json:"currency"` OpenInterest int64 `json:"openInterest"` OpenValue int64 `json:"openValue"` RootSymbol string `json:"rootSymbol"` Turnover24h int64 `json:"turnover24h"` Volume24h int64 `json:"volume24h"` }
Stats Exchange Statistics
type StatsHistory ¶
type StatsHistory struct { Currency string `json:"currency"` Date string `json:"date"` RootSymbol string `json:"rootSymbol"` Turnover int64 `json:"turnover"` Volume int64 `json:"volume"` }
StatsHistory stats history
type StatsUSD ¶
type StatsUSD struct { Currency string `json:"currency"` RootSymbol string `json:"rootSymbol"` Turnover int64 `json:"turnover"` Turnover24h int64 `json:"turnover24h"` Turnover30d int64 `json:"turnover30d"` Turnover365d int64 `json:"turnover365d"` }
StatsUSD contains summary of exchange stats
type Trade ¶
type Trade struct { ForeignNotional float64 `json:"foreignNotional"` GrossValue int64 `json:"grossValue"` HomeNotional float64 `json:"homeNotional"` Price float64 `json:"price"` Side string `json:"side"` Size int64 `json:"size"` Symbol string `json:"symbol"` TickDirection string `json:"tickDirection"` Timestamp time.Time `json:"timestamp"` TrdMatchID string `json:"trdMatchID"` }
Trade Individual & Bucketed Trades
type TradeGetBucketedParams ¶
type TradeGetBucketedParams struct { // BinSize - Time interval to bucket by. Available options: [1m,5m,1h,1d]. BinSize string `json:"binSize,omitempty"` // Columns - Array of column names to fetch. If omitted, will return all // columns. // Note that this method will always return item keys, even when not // specified, so you may receive more columns that you expect. Columns string `json:"columns,omitempty"` // Count - Number of results to fetch. Count int32 `json:"count,omitempty"` // EndTime - Ending date filter for results. EndTime string `json:"endTime,omitempty"` // Filter - Generic table filter. Send JSON key/value pairs, such as // `{"key": "value"}`. You can key on individual fields, and do more advanced // querying on timestamps. See the // [Timestamp Docs](https://testnet.bitmex.com/app/restAPI#Timestamp-Filters) // for more details. Filter string `json:"filter,omitempty"` // Partial - If true, will send in-progress (incomplete) bins for the current // time period. Partial bool `json:"partial,omitempty"` // Reverse - If true, will sort results newest first. Reverse bool `json:"reverse,omitempty"` // Start - Starting point for results. Start int32 `json:"start,omitempty"` // StartTime - Starting date filter for results. StartTime string `json:"startTime,omitempty"` // Symbol - Instrument symbol. Send a bare series (e.g. XBU) to get data for // the nearest expiring contract in that series.You can also send a timeframe, // e.g. `XBU:monthly`. Timeframes are `daily`, `weekly`, `monthly`, // `quarterly`, and `biquarterly`. Symbol string `json:"symbol,omitempty"` }
TradeGetBucketedParams contains all the parameters to send to the API endpoint
func (*TradeGetBucketedParams) IsNil ¶
func (p *TradeGetBucketedParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (*TradeGetBucketedParams) ToURLVals ¶
func (p *TradeGetBucketedParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (*TradeGetBucketedParams) VerifyData ¶
func (p *TradeGetBucketedParams) VerifyData() error
VerifyData verifies outgoing data sets
type TransactionInfo ¶
type TransactionInfo struct { Account int64 `json:"account"` Address string `json:"address"` Amount float64 `json:"amount"` Currency string `json:"currency"` Fee float64 `json:"fee"` Text string `json:"text"` Timestamp time.Time `json:"timestamp"` TransactID string `json:"transactID"` Network string `json:"network"` TransactStatus string `json:"transactStatus"` TransactTime string `json:"transactTime"` TransactType string `json:"transactType"` Tx string `json:"tx"` }
TransactionInfo Information
type User ¶
type User struct { TFAEnabled string `json:"TFAEnabled"` AffiliateID string `json:"affiliateID"` Country string `json:"country"` Created string `json:"created"` Email string `json:"email"` Firstname string `json:"firstname"` GeoipCountry string `json:"geoipCountry"` GeoipRegion string `json:"geoipRegion"` ID int32 `json:"id"` LastUpdated string `json:"lastUpdated"` Lastname string `json:"lastname"` OwnerID int32 `json:"ownerId"` PgpPubKey string `json:"pgpPubKey"` Phone string `json:"phone"` Preferences UserPreferences `json:"preferences"` Typ string `json:"typ"` Username string `json:"username"` }
User Account Operations
type UserCheckReferralCodeParams ¶
type UserCheckReferralCodeParams struct {
ReferralCode string `json:"referralCode,omitempty"`
}
UserCheckReferralCodeParams contains all the parameters to send to the API endpoint
func (UserCheckReferralCodeParams) IsNil ¶
func (p UserCheckReferralCodeParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (UserCheckReferralCodeParams) ToURLVals ¶
func (p UserCheckReferralCodeParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (UserCheckReferralCodeParams) VerifyData ¶
func (p UserCheckReferralCodeParams) VerifyData() error
VerifyData verifies outgoing data sets
type UserCommission ¶
type UserCommission struct { MakerFee float64 `json:"makerFee"` MaxFee float64 `json:"maxFee"` SettlementFee float64 `json:"settlementFee"` TakerFee float64 `json:"takerFee"` }
UserCommission user commission
type UserConfirmTFAParams ¶
type UserConfirmTFAParams struct { // Token - Token from your selected TFA type. Token string `json:"token,omitempty"` // Type - Two-factor auth type. Supported types: 'GA' (Google Authenticator), // 'Yubikey' Type string `json:"type,omitempty"` }
UserConfirmTFAParams contains all the parameters to send to the API endpoint
func (UserConfirmTFAParams) IsNil ¶
func (p UserConfirmTFAParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (UserConfirmTFAParams) ToURLVals ¶
func (p UserConfirmTFAParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (UserConfirmTFAParams) VerifyData ¶
func (p UserConfirmTFAParams) VerifyData() error
VerifyData verifies outgoing data sets
type UserCurrencyParams ¶
type UserCurrencyParams struct {
Currency string `json:"currency,omitempty"`
}
UserCurrencyParams contains all the parameters to send to the API endpoint
func (UserCurrencyParams) IsNil ¶
func (p UserCurrencyParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (UserCurrencyParams) ToURLVals ¶
func (p UserCurrencyParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (UserCurrencyParams) VerifyData ¶
func (p UserCurrencyParams) VerifyData() error
VerifyData verifies outgoing data sets
type UserMargin ¶
type UserMargin struct { Account int64 `json:"account"` Action string `json:"action"` Amount int64 `json:"amount"` AvailableMargin int64 `json:"availableMargin"` Commission float64 `json:"commission"` ConfirmedDebit int64 `json:"confirmedDebit"` Currency string `json:"currency"` ExcessMargin int64 `json:"excessMargin"` ExcessMarginPcnt float64 `json:"excessMarginPcnt"` GrossComm int64 `json:"grossComm"` GrossExecCost int64 `json:"grossExecCost"` GrossLastValue int64 `json:"grossLastValue"` GrossMarkValue int64 `json:"grossMarkValue"` GrossOpenCost int64 `json:"grossOpenCost"` GrossOpenPremium int64 `json:"grossOpenPremium"` IndicativeTax int64 `json:"indicativeTax"` InitMargin int64 `json:"initMargin"` MaintMargin int64 `json:"maintMargin"` MarginBalance int64 `json:"marginBalance"` MarginBalancePcnt float64 `json:"marginBalancePcnt"` MarginLeverage float64 `json:"marginLeverage"` MarginUsedPcnt float64 `json:"marginUsedPcnt"` PendingCredit int64 `json:"pendingCredit"` PendingDebit int64 `json:"pendingDebit"` PrevRealisedPnl int64 `json:"prevRealisedPnl"` PrevState string `json:"prevState"` PrevUnrealisedPnl int64 `json:"prevUnrealisedPnl"` RealisedPnl int64 `json:"realisedPnl"` RiskLimit int64 `json:"riskLimit"` RiskValue int64 `json:"riskValue"` SessionMargin int64 `json:"sessionMargin"` State string `json:"state"` SyntheticMargin int64 `json:"syntheticMargin"` TargetExcessMargin int64 `json:"targetExcessMargin"` TaxableMargin int64 `json:"taxableMargin"` Timestamp time.Time `json:"timestamp"` UnrealisedPnl int64 `json:"unrealisedPnl"` UnrealisedProfit int64 `json:"unrealisedProfit"` VarMargin int64 `json:"varMargin"` WalletBalance int64 `json:"walletBalance"` WithdrawableMargin int64 `json:"withdrawableMargin"` }
UserMargin margin information
type UserPreferences ¶
type UserPreferences struct { AlertOnLiquidations bool `json:"alertOnLiquidations"` AnimationsEnabled bool `json:"animationsEnabled"` AnnouncementsLastSeen string `json:"announcementsLastSeen"` ChatChannelID float64 `json:"chatChannelID"` ColorTheme string `json:"colorTheme"` Currency string `json:"currency"` Debug bool `json:"debug"` DisableEmails []string `json:"disableEmails"` HideConfirmDialogs []string `json:"hideConfirmDialogs"` HideConnectionModal bool `json:"hideConnectionModal"` HideFromLeaderboard bool `json:"hideFromLeaderboard"` HideNameFromLeaderboard bool `json:"hideNameFromLeaderboard"` HideNotifications []string `json:"hideNotifications"` Locale string `json:"locale"` MsgsSeen []string `json:"msgsSeen"` OrderBookBinning interface{} `json:"orderBookBinning"` OrderBookType string `json:"orderBookType"` OrderClearImmediate bool `json:"orderClearImmediate"` OrderControlsPlusMinus bool `json:"orderControlsPlusMinus"` ShowLocaleNumbers bool `json:"showLocaleNumbers"` Sounds []string `json:"sounds"` StrictIPCheck bool `json:"strictIPCheck"` StrictTimeout bool `json:"strictTimeout"` TickerGroup string `json:"tickerGroup"` TickerPinned bool `json:"tickerPinned"` TradeLayout string `json:"tradeLayout"` }
UserPreferences user preferences
type UserPreferencesParams ¶
type UserPreferencesParams struct { // Overwrite - If true, will overwrite all existing preferences. Overwrite bool `json:"overwrite,omitempty"` // Prefs - preferences Prefs string `json:"prefs,omitempty"` }
UserPreferencesParams contains all the parameters to send to the API endpoint
func (UserPreferencesParams) IsNil ¶
func (p UserPreferencesParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (UserPreferencesParams) ToURLVals ¶
func (p UserPreferencesParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (UserPreferencesParams) VerifyData ¶
func (p UserPreferencesParams) VerifyData() error
VerifyData verifies outgoing data sets
type UserRequestWithdrawalParams ¶
type UserRequestWithdrawalParams struct { // Address - Destination Address. Address string `json:"address,omitempty"` // Amount - Amount of withdrawal currency. Amount float64 `json:"amount,omitempty"` // Currency - Currency you're withdrawing. Options: `XBt` Currency string `json:"currency,omitempty"` // Fee - Network fee for Bitcoin withdrawals. If not specified, a default // value will be calculated based on Bitcoin network conditions. You will have // a chance to confirm this via email. Fee float64 `json:"fee,omitempty"` // OtpToken - 2FA token. Required if 2FA is enabled on your account. OtpToken int64 `json:"otpToken,omitempty"` }
UserRequestWithdrawalParams contains all the parameters to send to the API endpoint
func (UserRequestWithdrawalParams) IsNil ¶
func (p UserRequestWithdrawalParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (UserRequestWithdrawalParams) ToURLVals ¶
func (p UserRequestWithdrawalParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (UserRequestWithdrawalParams) VerifyData ¶
func (p UserRequestWithdrawalParams) VerifyData() error
VerifyData verifies outgoing data sets
type UserTokenParams ¶
type UserTokenParams struct {
Token string `json:"token,omitempty"`
}
UserTokenParams contains all the parameters to send to the API endpoint
func (UserTokenParams) IsNil ¶
func (p UserTokenParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (UserTokenParams) ToURLVals ¶
func (p UserTokenParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (UserTokenParams) VerifyData ¶
func (p UserTokenParams) VerifyData() error
VerifyData verifies outgoing data sets
type UserUpdateParams ¶
type UserUpdateParams struct { // Country - Country of residence. Country string `json:"country,omitempty"` // New Password string NewPassword string `json:"newPassword,omitempty"` // Confirmation string - must match NewPasswordConfirm string `json:"newPasswordConfirm,omitempty"` // old password string OldPassword string `json:"oldPassword,omitempty"` // PGP Public Key. If specified, automated emails will be sent with this key. PgpPubKey string `json:"pgpPubKey,omitempty"` // Username can only be set once. To reset, email support. Username string `json:"username,omitempty"` }
UserUpdateParams contains all the parameters to send to the API endpoint
func (*UserUpdateParams) IsNil ¶
func (p *UserUpdateParams) IsNil() bool
IsNil checks to see if any values has been set for the parameter
func (*UserUpdateParams) ToURLVals ¶
func (p *UserUpdateParams) ToURLVals(_ string) (string, error)
ToURLVals converts struct values to url.values and encodes it on the supplied path
func (*UserUpdateParams) VerifyData ¶
func (p *UserUpdateParams) VerifyData() error
VerifyData verifies outgoing data sets
type WalletInfo ¶
type WalletInfo struct { Account int64 `json:"account"` Addr string `json:"addr"` Amount float64 `json:"amount"` ConfirmedDebit int64 `json:"confirmedDebit"` Currency string `json:"currency"` DeltaAmount int64 `json:"deltaAmount"` DeltaDeposited int64 `json:"deltaDeposited"` DeltaTransferIn int64 `json:"deltaTransferIn"` DeltaTransferOut int64 `json:"deltaTransferOut"` DeltaWithdrawn int64 `json:"deltaWithdrawn"` Deposited int64 `json:"deposited"` PendingCredit int64 `json:"pendingCredit"` PendingDebit int64 `json:"pendingDebit"` PrevAmount int64 `json:"prevAmount"` PrevDeposited int64 `json:"prevDeposited"` PrevTimestamp time.Time `json:"prevTimestamp"` PrevTransferIn int64 `json:"prevTransferIn"` PrevTransferOut int64 `json:"prevTransferOut"` PrevWithdrawn int64 `json:"prevWithdrawn"` Script string `json:"script"` Timestamp time.Time `json:"timestamp"` TransferIn int64 `json:"transferIn"` TransferOut int64 `json:"transferOut"` WithdrawalLock []string `json:"withdrawalLock"` Withdrawn int64 `json:"withdrawn"` }
WalletInfo wallet information
type WebsocketErrorResponse ¶
type WebsocketErrorResponse struct { Status int64 `json:"status"` Error string `json:"error"` Meta interface{} `json:"meta"` Request WebsocketRequest `json:"request"` }
WebsocketErrorResponse main error response
type WebsocketMainResponse ¶
type WebsocketMainResponse struct { Table string `json:"table"` Keys []string `json:"keys"` Types struct { ID string `json:"id"` Price string `json:"price"` Side string `json:"side"` Size string `json:"size"` Symbol string `json:"symbol"` } `json:"types"` ForeignKeys struct { Side string `json:"side"` Symbol string `json:"symbol"` } `json:"foreignKeys"` Attributes struct { ID string `json:"id"` Symbol string `json:"symbol"` } `json:"Attributes"` Action string `json:"action,omitempty"` }
WebsocketMainResponse main table defined response
type WebsocketRequest ¶
type WebsocketRequest struct { Command string `json:"op"` Arguments []interface{} `json:"args"` }
WebsocketRequest is the main request type
type WebsocketSubscribeResp ¶
type WebsocketSubscribeResp struct { Success bool `json:"success"` Subscribe string `json:"subscribe"` Request WebsocketRequest `json:"request"` }
WebsocketSubscribeResp is a response that occurs after a subscription
type WebsocketWelcome ¶
type WebsocketWelcome struct { Info string `json:"info"` Version string `json:"version"` Timestamp string `json:"timestamp"` Docs string `json:"docs"` Limit struct { Remaining int64 `json:"remaining"` } `json:"limit"` }
WebsocketWelcome initial welcome type
type WsAffiliateResponse ¶
type WsAffiliateResponse struct { WsDataResponse ForeignKeys interface{} `json:"foreignKeys"` Attributes WsAffiliateResponseAttributes `json:"attributes"` Filter WsAffiliateResponseFilter `json:"filter"` Data []interface{} `json:"data"` }
WsAffiliateResponse private api response
type WsAffiliateResponseAttributes ¶
type WsAffiliateResponseAttributes struct { Account string `json:"account"` Currency string `json:"currency"` }
WsAffiliateResponseAttributes private api data
type WsAffiliateResponseFilter ¶
type WsAffiliateResponseFilter struct {
Account int64 `json:"account"`
}
WsAffiliateResponseFilter private api data
type WsDataResponse ¶
type WsDataResponse struct { Table string `json:"table"` Action string `json:"action"` Keys []string `json:"keys"` Types map[string]string `json:"types"` }
WsDataResponse contains common elements
type WsExecutionResponse ¶
type WsExecutionResponse struct { WsDataResponse ForeignKeys WsExecutionResponseForeignKeys `json:"foreignKeys"` Attributes WsExecutionResponseAttributes `json:"attributes"` Filter WsExecutionResponseFilter `json:"filter"` Data []wsExecutionData `json:"data"` }
WsExecutionResponse private api response
type WsExecutionResponseAttributes ¶
type WsExecutionResponseAttributes struct { ExecID string `json:"execID"` Account string `json:"account"` ExecType string `json:"execType"` TransactTime string `json:"transactTime"` }
WsExecutionResponseAttributes private api data
type WsExecutionResponseFilter ¶
type WsExecutionResponseFilter struct { Account int64 `json:"account"` Symbol string `json:"symbol"` }
WsExecutionResponseFilter private api data
type WsExecutionResponseForeignKeys ¶
type WsExecutionResponseForeignKeys struct { Symbol string `json:"symbol"` Side string `json:"side"` OrdStatus string `json:"ordStatus"` }
WsExecutionResponseForeignKeys private api data
type WsMarginResponse ¶
type WsMarginResponse struct { WsDataResponse ForeignKeys interface{} `json:"foreignKeys"` Attributes WsMarginResponseAttributes `json:"attributes"` Filter WsMarginResponseFilter `json:"filter"` Data []WsMarginResponseData `json:"data"` }
WsMarginResponse private api response
type WsMarginResponseAttributes ¶
type WsMarginResponseAttributes struct { Account string `json:"account"` Currency string `json:"currency"` }
WsMarginResponseAttributes private api data
type WsMarginResponseData ¶
type WsMarginResponseData struct { Account int64 `json:"account"` Currency string `json:"currency"` RiskLimit float64 `json:"riskLimit"` PrevState string `json:"prevState"` State string `json:"state"` Action string `json:"action"` Amount float64 `json:"amount"` PendingCredit float64 `json:"pendingCredit"` PendingDebit float64 `json:"pendingDebit"` ConfirmedDebit float64 `json:"confirmedDebit"` PrevRealisedPnl float64 `json:"prevRealisedPnl"` PrevUnrealisedPnl float64 `json:"prevUnrealisedPnl"` GrossComm float64 `json:"grossComm"` GrossOpenCost float64 `json:"grossOpenCost"` GrossOpenPremium float64 `json:"grossOpenPremium"` GrossExecCost float64 `json:"grossExecCost"` GrossMarkValue float64 `json:"grossMarkValue"` RiskValue float64 `json:"riskValue"` TaxableMargin float64 `json:"taxableMargin"` InitMargin float64 `json:"initMargin"` MaintMargin float64 `json:"maintMargin"` SessionMargin float64 `json:"sessionMargin"` TargetExcessMargin float64 `json:"targetExcessMargin"` VarMargin float64 `json:"varMargin"` RealisedPnl float64 `json:"realisedPnl"` UnrealisedPnl float64 `json:"unrealisedPnl"` IndicativeTax float64 `json:"indicativeTax"` UnrealisedProfit float64 `json:"unrealisedProfit"` SyntheticMargin interface{} `json:"syntheticMargin"` WalletBalance float64 `json:"walletBalance"` MarginBalance float64 `json:"marginBalance"` MarginBalancePcnt float64 `json:"marginBalancePcnt"` MarginLeverage float64 `json:"marginLeverage"` MarginUsedPcnt float64 `json:"marginUsedPcnt"` ExcessMargin float64 `json:"excessMargin"` ExcessMarginPcnt float64 `json:"excessMarginPcnt"` AvailableMargin float64 `json:"availableMargin"` WithdrawableMargin float64 `json:"withdrawableMargin"` Timestamp time.Time `json:"timestamp"` GrossLastValue float64 `json:"grossLastValue"` Commission interface{} `json:"commission"` }
WsMarginResponseData private api data
type WsMarginResponseFilter ¶
type WsMarginResponseFilter struct {
Account int64 `json:"account"`
}
WsMarginResponseFilter private api data
type WsOrderResponse ¶
type WsOrderResponse struct { WsDataResponse ForeignKeys WsOrderResponseForeignKeys `json:"foreignKeys"` Attributes WsOrderResponseAttributes `json:"attributes"` Filter WsOrderResponseFilter `json:"filter"` Data []OrderInsertData `json:"data"` }
WsOrderResponse private api response
type WsOrderResponseAttributes ¶
type WsOrderResponseAttributes struct { OrderID string `json:"orderID"` Account string `json:"account"` OrdStatus string `json:"ordStatus"` WorkingIndicator string `json:"workingIndicator"` }
WsOrderResponseAttributes private api data
type WsOrderResponseFilter ¶
type WsOrderResponseFilter struct {
Account int64 `json:"account"`
}
WsOrderResponseFilter private api data
type WsOrderResponseForeignKeys ¶
type WsOrderResponseForeignKeys struct { Symbol string `json:"symbol"` Side string `json:"side"` OrdStatus string `json:"ordStatus"` }
WsOrderResponseForeignKeys private api data
type WsPositionResponse ¶
type WsPositionResponse struct { WsDataResponse ForeignKeys WsPositionResponseForeignKeys `json:"foreignKeys"` Attributes WsPositionResponseAttributes `json:"attributes"` Filter WsPositionResponseFilter `json:"filter"` Data []wsPositionData `json:"data"` }
WsPositionResponse private api response
type WsPositionResponseAttributes ¶
type WsPositionResponseAttributes struct { Account string `json:"account"` Symbol string `json:"symbol"` Currency string `json:"currency"` Underlying string `json:"underlying"` QuoteCurrency string `json:"quoteCurrency"` }
WsPositionResponseAttributes private api data
type WsPositionResponseFilter ¶
type WsPositionResponseFilter struct { Account int64 `json:"account"` Symbol string `json:"symbol"` }
WsPositionResponseFilter private api data
type WsPositionResponseForeignKeys ¶
type WsPositionResponseForeignKeys struct {
Symbol string `json:"symbol"`
}
WsPositionResponseForeignKeys private api data
type WsPrivateNotificationsResponse ¶
type WsPrivateNotificationsResponse struct { Table string `json:"table"` Action string `json:"action"` Data []interface{} `json:"data"` }
WsPrivateNotificationsResponse private api response
type WsTransactResponse ¶
type WsTransactResponse struct { WsDataResponse ForeignKeys interface{} `json:"foreignKeys"` Attributes WsTransactResponseAttributes `json:"attributes"` Filter WsTransactResponseFilter `json:"filter"` Data []interface{} `json:"data"` }
WsTransactResponse private api response
type WsTransactResponseAttributes ¶
type WsTransactResponseAttributes struct { TransactID string `json:"transactID"` TransactTime string `json:"transactTime"` }
WsTransactResponseAttributes private api data
type WsTransactResponseFilter ¶
type WsTransactResponseFilter struct {
Account int64 `json:"account"`
}
WsTransactResponseFilter private api data
type WsWalletResponse ¶
type WsWalletResponse struct { WsDataResponse ForeignKeys interface{} `json:"foreignKeys"` Attributes WsWalletResponseAttributes `json:"attributes"` Filter WsWalletResponseFilter `json:"filter"` Data []WsWalletResponseData `json:"data"` }
WsWalletResponse private api response
type WsWalletResponseAttributes ¶
type WsWalletResponseAttributes struct { Account string `json:"account"` Currency string `json:"currency"` }
WsWalletResponseAttributes private api data
type WsWalletResponseData ¶
type WsWalletResponseData struct { Account int64 `json:"account"` Currency string `json:"currency"` PrevDeposited float64 `json:"prevDeposited"` PrevWithdrawn float64 `json:"prevWithdrawn"` PrevTransferIn float64 `json:"prevTransferIn"` PrevTransferOut float64 `json:"prevTransferOut"` PrevAmount float64 `json:"prevAmount"` PrevTimestamp string `json:"prevTimestamp"` DeltaDeposited float64 `json:"deltaDeposited"` DeltaWithdrawn float64 `json:"deltaWithdrawn"` DeltaTransferIn float64 `json:"deltaTransferIn"` DeltaTransferOut float64 `json:"deltaTransferOut"` DeltaAmount float64 `json:"deltaAmount"` Deposited float64 `json:"deposited"` Withdrawn float64 `json:"withdrawn"` TransferIn float64 `json:"transferIn"` TransferOut float64 `json:"transferOut"` Amount float64 `json:"amount"` PendingCredit float64 `json:"pendingCredit"` PendingDebit float64 `json:"pendingDebit"` ConfirmedDebit int64 `json:"confirmedDebit"` Timestamp string `json:"timestamp"` Addr string `json:"addr"` Script string `json:"script"` WithdrawalLock []interface{} `json:"withdrawalLock"` }
WsWalletResponseData private api data
type WsWalletResponseFilter ¶
type WsWalletResponseFilter struct {
Account int64 `json:"account"`
}
WsWalletResponseFilter private api data