Documentation ¶
Index ¶
- Variables
- func GetError(apiErrors []string) error
- type AccountsData
- type AddOrder
- type AddOrderOptions
- type AddOrderResponse
- type Asset
- type AssetPairs
- type AuthErrorData
- type Balance
- type BatchOrderData
- type CancelAllOrdersData
- type CancelOrderResponse
- type CancelOrdersAfterData
- type ClosedOrders
- type DepositAddress
- type DepositMethods
- type ExecutionData
- type FOpenOrdersData
- type FutureTradeOrder
- type FuturesAccountsData
- type FuturesCancelOrderData
- type FuturesCandle
- type FuturesCandles
- type FuturesEditedOrderData
- type FuturesFillsData
- type FuturesInstrumentData
- type FuturesNotificationData
- type FuturesOpenOrdersData
- type FuturesOpenPositions
- type FuturesOrderData
- type FuturesOrderbookData
- type FuturesPublicTrades
- type FuturesRecentOrdersData
- type FuturesSendOrderData
- type FuturesTicker
- type FuturesTickerData
- type FuturesTickersData
- type FuturesTradeHistoryData
- type FuturesTradeOrderData
- type FuturesTransferData
- type GenericResponse
- type GetClosedOrdersOptions
- type GetLedgersOptions
- type GetTradesHistoryOptions
- type Kraken
- func (k *Kraken) AddOrder(ctx context.Context, symbol currency.Pair, side, orderType string, ...) (AddOrderResponse, error)
- func (k *Kraken) AuthenticateWebsocket(ctx context.Context) error
- func (k *Kraken) CancelAllOrders(ctx context.Context, req *order.Cancel) (order.CancelAllResponse, error)
- func (k *Kraken) CancelBatchOrders(_ context.Context, o []order.Cancel) (*order.CancelBatchResponse, error)
- func (k *Kraken) CancelExistingOrder(ctx context.Context, txid string) (CancelOrderResponse, error)
- func (k *Kraken) CancelOrder(ctx context.Context, o *order.Cancel) error
- func (k *Kraken) FetchAccountInfo(ctx context.Context, assetType asset.Item) (account.Holdings, error)
- func (k *Kraken) FetchOrderbook(ctx context.Context, p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
- func (k *Kraken) FetchTicker(ctx context.Context, p currency.Pair, assetType asset.Item) (*ticker.Price, error)
- func (k *Kraken) FetchTradablePairs(ctx context.Context, a asset.Item) (currency.Pairs, error)
- func (k *Kraken) FormatExchangeKlineInterval(in kline.Interval) string
- func (k *Kraken) FormatExchangeKlineIntervalFutures(in kline.Interval) string
- func (k *Kraken) FuturesBatchOrder(ctx context.Context, data []PlaceBatchOrderData) (BatchOrderData, error)
- func (k *Kraken) FuturesCancelAllOrders(ctx context.Context, symbol currency.Pair) (CancelAllOrdersData, error)
- func (k *Kraken) FuturesCancelAllOrdersAfter(ctx context.Context, timeout int64) (CancelOrdersAfterData, error)
- func (k *Kraken) FuturesCancelOrder(ctx context.Context, orderID, clientOrderID string) (FuturesCancelOrderData, error)
- func (k *Kraken) FuturesEditOrder(ctx context.Context, orderID, clientOrderID string, ...) (FuturesAccountsData, error)
- func (k *Kraken) FuturesGetFills(ctx context.Context, lastFillTime time.Time) (FuturesFillsData, error)
- func (k *Kraken) FuturesGetOpenPositions(ctx context.Context) (FuturesOpenPositions, error)
- func (k *Kraken) FuturesGetTransfers(ctx context.Context, lastTransferTime time.Time) (GenericResponse, error)
- func (k *Kraken) FuturesNotifications(ctx context.Context) (FuturesNotificationData, error)
- func (k *Kraken) FuturesOpenOrders(ctx context.Context) (FuturesOpenOrdersData, error)
- func (k *Kraken) FuturesRecentOrders(ctx context.Context, symbol currency.Pair) (FuturesRecentOrdersData, error)
- func (k *Kraken) FuturesSendOrder(ctx context.Context, orderType order.Type, symbol currency.Pair, ...) (FuturesSendOrderData, error)
- func (k *Kraken) FuturesTransfer(ctx context.Context, fromAccount, toAccount, unit string, amount float64) (FuturesTransferData, error)
- func (k *Kraken) FuturesWithdrawToSpotWallet(ctx context.Context, currency string, amount float64) (GenericResponse, error)
- func (k *Kraken) GenerateDefaultSubscriptions() ([]subscription.Subscription, error)
- func (k *Kraken) GetAccountFundingHistory(_ context.Context) ([]exchange.FundingHistory, error)
- func (k *Kraken) GetActiveOrders(ctx context.Context, req *order.MultiOrderRequest) (order.FilteredOrders, error)
- func (k *Kraken) GetAssetPairs(ctx context.Context, assetPairs []string, info string) (map[string]*AssetPairs, error)
- func (k *Kraken) GetAssets(ctx context.Context) (map[string]*Asset, error)
- func (k *Kraken) GetAvailableTransferChains(ctx context.Context, cryptocurrency currency.Code) ([]string, error)
- func (k *Kraken) GetBalance(ctx context.Context) (map[string]Balance, error)
- func (k *Kraken) GetClosedOrders(ctx context.Context, args GetClosedOrdersOptions) (ClosedOrders, error)
- func (k *Kraken) GetCryptoDepositAddress(ctx context.Context, method, code string, createNew bool) ([]DepositAddress, error)
- func (k *Kraken) GetCurrencyTradeURL(_ context.Context, a asset.Item, cp currency.Pair) (string, error)
- func (k *Kraken) GetCurrentServerTime(ctx context.Context) (TimeResponse, error)
- func (k *Kraken) GetDepositAddress(ctx context.Context, cryptocurrency currency.Code, _, chain string) (*deposit.Address, error)
- func (k *Kraken) GetDepositMethods(ctx context.Context, currency string) ([]DepositMethods, error)
- func (k *Kraken) GetDepth(ctx context.Context, symbol currency.Pair) (*Orderbook, error)
- func (k *Kraken) GetFee(ctx context.Context, feeBuilder *exchange.FeeBuilder) (float64, error)
- func (k *Kraken) GetFeeByType(ctx context.Context, feeBuilder *exchange.FeeBuilder) (float64, error)
- func (k *Kraken) GetFuturesAccountData(ctx context.Context) (FuturesAccountsData, error)
- func (k *Kraken) GetFuturesCharts(ctx context.Context, resolution, tickType string, symbol currency.Pair, ...) (*FuturesCandles, error)
- func (k *Kraken) GetFuturesContractDetails(ctx context.Context, item asset.Item) ([]futures.Contract, error)
- func (k *Kraken) GetFuturesOrderbook(ctx context.Context, symbol currency.Pair) (*FuturesOrderbookData, error)
- func (k *Kraken) GetFuturesTickerBySymbol(ctx context.Context, symbol string) (FuturesTickerData, error)
- func (k *Kraken) GetFuturesTickers(ctx context.Context) (FuturesTickersData, error)
- func (k *Kraken) GetFuturesTradeHistory(ctx context.Context, symbol currency.Pair, lastTime time.Time) (FuturesTradeHistoryData, error)
- func (k *Kraken) GetFuturesTrades(ctx context.Context, symbol currency.Pair, to, from time.Time) (*FuturesPublicTrades, error)
- func (k *Kraken) GetHistoricCandles(ctx context.Context, pair currency.Pair, a asset.Item, interval kline.Interval, ...) (*kline.Item, error)
- func (k *Kraken) GetHistoricCandlesExtended(_ context.Context, _ currency.Pair, _ asset.Item, _ kline.Interval, ...) (*kline.Item, error)
- func (k *Kraken) GetHistoricTrades(_ context.Context, _ currency.Pair, _ asset.Item, _, _ time.Time) ([]trade.Data, error)
- func (k *Kraken) GetInstruments(ctx context.Context) (FuturesInstrumentData, error)
- func (k *Kraken) GetLatestFundingRates(ctx context.Context, r *fundingrate.LatestRateRequest) ([]fundingrate.LatestRateResponse, error)
- func (k *Kraken) GetLedgers(ctx context.Context, args ...GetLedgersOptions) (Ledgers, error)
- func (k *Kraken) GetOHLC(ctx context.Context, symbol currency.Pair, interval string) ([]OpenHighLowClose, error)
- func (k *Kraken) GetOpenInterest(ctx context.Context, keys ...key.PairAsset) ([]futures.OpenInterest, error)
- func (k *Kraken) GetOpenOrders(ctx context.Context, args OrderInfoOptions) (OpenOrders, error)
- func (k *Kraken) GetOrderHistory(ctx context.Context, getOrdersRequest *order.MultiOrderRequest) (order.FilteredOrders, error)
- func (k *Kraken) GetOrderInfo(ctx context.Context, orderID string, _ currency.Pair, assetType asset.Item) (*order.Detail, error)
- func (k *Kraken) GetRecentTrades(ctx context.Context, p currency.Pair, assetType asset.Item) ([]trade.Data, error)
- func (k *Kraken) GetServerTime(ctx context.Context, _ asset.Item) (time.Time, error)
- func (k *Kraken) GetSpread(ctx context.Context, symbol currency.Pair) ([]Spread, error)
- func (k *Kraken) GetTicker(ctx context.Context, symbol currency.Pair) (Ticker, error)
- func (k *Kraken) GetTickers(ctx context.Context, pairList string) (map[string]Ticker, error)
- func (k *Kraken) GetTradeBalance(ctx context.Context, args ...TradeBalanceOptions) (TradeBalanceInfo, error)
- func (k *Kraken) GetTradeVolume(ctx context.Context, feeinfo bool, symbol ...currency.Pair) (*TradeVolumeResponse, error)
- func (k *Kraken) GetTrades(ctx context.Context, symbol currency.Pair) ([]RecentTrades, error)
- func (k *Kraken) GetTradesHistory(ctx context.Context, args ...GetTradesHistoryOptions) (TradesHistory, error)
- func (k *Kraken) GetWebsocketToken(ctx context.Context) (string, error)
- func (k *Kraken) GetWithdrawInfo(ctx context.Context, currency string, amount float64) (WithdrawInformation, error)
- func (k *Kraken) GetWithdrawalsHistory(ctx context.Context, c currency.Code, _ asset.Item) ([]exchange.WithdrawalHistory, error)
- func (k *Kraken) IsPerpetualFutureCurrency(a asset.Item, cp currency.Pair) (bool, error)
- func (k *Kraken) ModifyOrder(_ context.Context, _ *order.Modify) (*order.ModifyResponse, error)
- func (k *Kraken) OpenPositions(ctx context.Context, docalcs bool, txids ...string) (map[string]Position, error)
- func (k *Kraken) QueryLedgers(ctx context.Context, id string, ids ...string) (map[string]LedgerInfo, error)
- func (k *Kraken) QueryOrdersInfo(ctx context.Context, args OrderInfoOptions, txid string, txids ...string) (map[string]OrderInfo, error)
- func (k *Kraken) QueryTrades(ctx context.Context, trades bool, txid string, txids ...string) (map[string]TradeInfo, error)
- func (k *Kraken) SeedAssets(ctx context.Context) error
- func (k *Kraken) SendAuthenticatedHTTPRequest(ctx context.Context, ep exchange.URL, method string, params url.Values, ...) error
- func (k *Kraken) SendFuturesAuthRequest(ctx context.Context, method, path string, data url.Values, result interface{}) error
- func (k *Kraken) SendHTTPRequest(ctx context.Context, ep exchange.URL, path string, result interface{}) error
- func (k *Kraken) SetDefaults()
- func (k *Kraken) Setup(exch *config.Exchange) error
- func (k *Kraken) SubmitOrder(ctx context.Context, s *order.Submit) (*order.SubmitResponse, error)
- func (k *Kraken) SubmitOrders(ctx context.Context, ss ...*order.Submit) ([]*order.SubmitResponse, error)
- func (k *Kraken) Subscribe(channelsToSubscribe []subscription.Subscription) error
- func (k *Kraken) Unsubscribe(channelsToUnsubscribe []subscription.Subscription) error
- func (k *Kraken) UpdateAccountInfo(ctx context.Context, assetType asset.Item) (account.Holdings, error)
- func (k *Kraken) UpdateOrderExecutionLimits(ctx context.Context, a asset.Item) error
- func (k *Kraken) UpdateOrderbook(ctx context.Context, p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
- func (k *Kraken) UpdateTicker(ctx context.Context, p currency.Pair, a asset.Item) (*ticker.Price, error)
- func (k *Kraken) UpdateTickers(ctx context.Context, a asset.Item) error
- func (k *Kraken) UpdateTradablePairs(ctx context.Context, forceUpdate bool) error
- func (k *Kraken) ValidateAPICredentials(ctx context.Context, assetType asset.Item) error
- func (k *Kraken) Withdraw(ctx context.Context, asset, key string, amount float64) (string, error)
- func (k *Kraken) WithdrawCancel(ctx context.Context, c currency.Code, refID string) (bool, error)
- func (k *Kraken) WithdrawCryptocurrencyFunds(ctx context.Context, withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
- func (k *Kraken) WithdrawFiatFunds(ctx context.Context, withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
- func (k *Kraken) WithdrawFiatFundsToInternationalBank(ctx context.Context, withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
- func (k *Kraken) WithdrawStatus(ctx context.Context, c currency.Code, method string) ([]WithdrawStatusResponse, error)
- func (k *Kraken) WsConnect() error
- type LedgerInfo
- type Ledgers
- type OpenHighLowClose
- type OpenOrders
- type OrderDescription
- type OrderInfo
- type OrderInfoOptions
- type OrderVars
- type Orderbook
- type OrderbookBase
- type PlaceBatchOrderData
- type Position
- type RecentOrderData
- type RecentTrades
- type RecentTradesResponse
- type RequestParamsTimeForceType
- type SpotAuthError
- type Spread
- type Ticker
- type TickerResponse
- type Tickers
- type TimeResponse
- type TradeBalanceInfo
- type TradeBalanceOptions
- type TradeInfo
- type TradeVolumeFee
- type TradeVolumeResponse
- type TradesHistory
- type WSFuturesTickerData
- type WebsocketBaseEventRequest
- type WebsocketChannelData
- type WebsocketDataResponse
- type WebsocketErrorResponse
- type WebsocketEventResponse
- type WebsocketSubscriptionData
- type WebsocketSubscriptionEventRequest
- type WebsocketSubscriptionEventResponse
- type WebsocketSubscriptionResponseData
- type WebsocketUnsubscribeByChannelIDEventRequest
- type WithdrawInformation
- type WithdrawStatusResponse
- type WsAccountBalancesAndMargin
- type WsAddOrderRequest
- type WsAddOrderResponse
- type WsCancelOrderRequest
- type WsCancelOrderResponse
- type WsFuturesAccountLog
- type WsFuturesFillsData
- type WsFuturesNotifications
- type WsFuturesOB
- type WsFuturesOpenOrders
- type WsFuturesTickerLite
- type WsFuturesTradeData
- type WsOpenOrder
- type WsOpenOrderDescription
- type WsOpenOrders
- type WsOpenPositions
- type WsOwnTrade
- type WsTokenResponse
- type WsVerboseOpenOrders
Constants ¶
This section is empty.
Variables ¶
var ( // RequestParamsTimeGTC GTC RequestParamsTimeGTC = RequestParamsTimeForceType("GTC") // RequestParamsTimeIOC IOC RequestParamsTimeIOC = RequestParamsTimeForceType("IOC") )
DepositFees the large list of predefined deposit fees Prone to change
var WithdrawalFees = map[currency.Code]float64{ currency.ZUSD: 5, currency.ZEUR: 5, currency.USD: 5, currency.EUR: 5, currency.REP: 0.01, currency.XXBT: 0.0005, currency.BTC: 0.0005, currency.XBT: 0.0005, currency.BCH: 0.0001, currency.ADA: 0.3, currency.DASH: 0.005, currency.XDG: 2, currency.EOS: 0.05, currency.ETH: 0.005, currency.ETC: 0.005, currency.GNO: 0.005, currency.ICN: 0.2, currency.LTC: 0.001, currency.MLN: 0.003, currency.XMR: 0.05, currency.QTUM: 0.01, currency.XRP: 0.02, currency.XLM: 0.00002, currency.USDT: 5, currency.XTZ: 0.05, currency.ZEC: 0.0001, }
WithdrawalFees the large list of predefined withdrawal fees Prone to change
Functions ¶
Types ¶
type AccountsData ¶
type AccountsData struct { AccType string `json:"type"` Currency string `json:"currency"` Balances map[string]float64 `json:"balances"` Auxiliary struct { AvailableFunds float64 `json:"af"` ProfitAndLoss float64 `json:"pnl"` PortfolioValue float64 `json:"pv"` } `json:"auxiliary"` MarginRequirements struct { InitialMargin float64 `json:"im"` MaintenanceMargin float64 `json:"mm"` LiquidationThreshold float64 `json:"lt"` TerminationThreshold float64 `json:"tt"` } `json:"marginRequirements"` TriggerEstimates struct { InitialMargin float64 `json:"im"` MaintenanceMargin float64 `json:"mm"` LiquidationThreshold float64 `json:"lt"` TerminationThreshold float64 `json:"tt"` } `json:"triggerEstimates"` }
AccountsData stores data of an account
type AddOrderOptions ¶
type AddOrderOptions struct { UserRef int32 OrderFlags string StartTm string ExpireTm string CloseOrderType string ClosePrice float64 ClosePrice2 float64 Validate bool TimeInForce RequestParamsTimeForceType }
AddOrderOptions represents the AddOrder options
type AddOrderResponse ¶
type AddOrderResponse struct { Description OrderDescription `json:"descr"` TransactionIDs []string `json:"txid"` }
AddOrderResponse type
type Asset ¶
type Asset struct { Altname string `json:"altname"` AclassBase string `json:"aclass_base"` Decimals int `json:"decimals"` DisplayDecimals int `json:"display_decimals"` }
Asset holds asset information
type AssetPairs ¶
type AssetPairs struct { Altname string `json:"altname"` Wsname string `json:"wsname"` AclassBase string `json:"aclass_base"` Base string `json:"base"` AclassQuote string `json:"aclass_quote"` Quote string `json:"quote"` Lot string `json:"lot"` PairDecimals int `json:"pair_decimals"` LotDecimals int `json:"lot_decimals"` LotMultiplier int `json:"lot_multiplier"` LeverageBuy []int `json:"leverage_buy"` LeverageSell []int `json:"leverage_sell"` Fees [][]float64 `json:"fees"` FeesMaker [][]float64 `json:"fees_maker"` FeeVolumeCurrency string `json:"fee_volume_currency"` MarginCall int `json:"margin_call"` MarginStop int `json:"margin_stop"` OrderMinimum float64 `json:"ordermin,string"` TickSize float64 `json:"tick_size,string"` Status string `json:"status"` }
AssetPairs holds asset pair information
type AuthErrorData ¶
type AuthErrorData struct { Result string `json:"result"` ServerTime string `json:"serverTime"` Error string `json:"error"` }
AuthErrorData stores authenticated error messages
type Balance ¶
type Balance struct { Total float64 `json:"balance,string"` Hold float64 `json:"hold_trade,string"` }
Balance represents account asset balances
type BatchOrderData ¶
type BatchOrderData struct { Result string `json:"result"` ServerTime string `json:"serverTime"` BatchStatus []struct { Status string `json:"status"` OrderTag string `json:"order_tag"` OrderID string `json:"order_id"` DateTimeReceived string `json:"dateTimeReceived"` OrderEvents []struct { OrderPlaced FuturesOrderData `json:"orderPlaced"` ReduceOnly bool `json:"reduceOnly"` Timestamp string `json:"timestamp"` OldEditedOrder FuturesOrderData `json:"old"` NewEditedOrder FuturesOrderData `json:"new"` UID string `json:"uid"` RequestType string `json:"requestType"` } `json:"orderEvents"` } `json:"batchStatus"` }
BatchOrderData stores batch order data
type CancelAllOrdersData ¶
type CancelAllOrdersData struct { CancelStatus struct { ReceivedTime string `json:"receivedTime"` CancelOnly string `json:"cancelOnly"` Status string `json:"status"` CancelledOrders []struct { OrderID string `json:"order_id"` } `json:"cancelledOrders"` OrderEvents []struct { UID string `json:"uid"` } `json:"uid"` Order FuturesOrderData `json:"order"` DataType string `json:"type"` } `json:"cancelStatus"` ServerTime string `json:"serverTime"` }
CancelAllOrdersData stores order data for all cancelled orders
type CancelOrderResponse ¶
type CancelOrderResponse struct { Count int64 `json:"count"` Pending interface{} `json:"pending"` }
CancelOrderResponse type
type CancelOrdersAfterData ¶
type CancelOrdersAfterData struct { Result string `json:"result"` Status struct { CurrentTime string `json:"currentTime"` TriggerTime string `json:"triggerTime"` } `json:"status"` ServerTime string `json:"serverTime"` }
CancelOrdersAfterData stores data of all orders after a certain time that are cancelled
type ClosedOrders ¶
ClosedOrders type
type DepositAddress ¶
type DepositAddress struct { Address string `json:"address"` ExpireTime interface{} `json:"expiretm"` // this is an int when new is specified Tag string `json:"tag"` New bool `json:"new"` }
DepositAddress defines a deposit address
type DepositMethods ¶
type DepositMethods struct { Method string `json:"method"` Limit interface{} `json:"limit"` // If no limit amount, this comes back as boolean Fee float64 `json:"fee,string"` AddressSetupFee float64 `json:"address-setup-fee,string"` }
DepositMethods Used to check deposit fees
type ExecutionData ¶
type ExecutionData struct { UID string `json:"uid"` TakerOrder RecentOrderData `json:"takerOrder"` }
ExecutionData stores execution data
type FOpenOrdersData ¶
type FOpenOrdersData struct { OrderID string `json:"order_id"` ClientOrderID string `json:"cliOrdId"` Symbol string `json:"symbol"` Side string `json:"side"` OrderType string `json:"orderType"` LimitPrice float64 `json:"limitPrice"` StopPrice float64 `json:"stopPrice"` UnfilledSize float64 `json:"unfilledSize"` ReceivedTime string `json:"receivedTime"` Status string `json:"status"` FilledSize float64 `json:"filledSize"` ReduceOnly bool `json:"reduceOnly"` TriggerSignal string `json:"triggerSignal"` LastUpdateTime string `json:"lastUpdateTime"` }
FOpenOrdersData stores open orders data for futures
type FutureTradeOrder ¶
type FutureTradeOrder struct { AccountUID string `json:"accountUid"` ClientID string `json:"clientId"` Direction string `json:"direction"` Filled string `json:"filled"` LastUpdateTimestamp int64 `json:"lastUpdateTimestamp"` LimitPrice float64 `json:"limitPrice,string"` OrderType string `json:"orderType"` Quantity float64 `json:"quantity,string"` ReduceOnly bool `json:"reduceOnly"` SpotData string `json:"spotData"` Timestamp int64 `json:"timestamp"` Tradeable string `json:"tradeable"` UID string `json:"uid"` }
FutureTradeOrder holds details about the order for a futures trade
type FuturesAccountsData ¶
type FuturesAccountsData struct { ServerTime string `json:"serverTime"` Accounts map[string]AccountsData `json:"accounts"` }
FuturesAccountsData stores account data
type FuturesCancelOrderData ¶
type FuturesCancelOrderData struct { CancelStatus struct { Status string `json:"status"` OrderID string `json:"order_id"` ReceivedTime string `json:"receivedTime"` OrderEvents []struct { UID string `json:"uid"` Order FuturesOrderData `json:"order"` DataType string `json:"type"` } `json:"orderEvents"` } `json:"cancelStatus"` ServerTime string `json:"serverTime"` }
FuturesCancelOrderData stores cancel order data for futures
type FuturesCandle ¶
type FuturesCandle struct { Close float64 `json:"close,string"` High float64 `json:"high,string"` Low float64 `json:"low,string"` Open float64 `json:"open,string"` Time int64 `json:"time"` Volume float64 `json:"volume,string"` }
FuturesCandle is an individual candle
type FuturesCandles ¶
type FuturesCandles struct { Candles []FuturesCandle `json:"candles"` MoreCandles bool `json:"more_candles"` }
FuturesCandles is the response when requesting futures candles
type FuturesEditedOrderData ¶
type FuturesEditedOrderData struct { ServerTime string `json:"serverTime"` EditStatus struct { Status string `json:"status"` OrderID string `json:"orderId"` ReceivedTime string `json:"receivedTime"` OrderEvents []struct { Old FuturesOrderData `json:"old"` New FuturesOrderData `json:"new"` } `json:"orderEvents"` ReduceQuantity string `json:"reduceQuantity"` DataType string `json:"type"` } `json:"editStatus"` }
FuturesEditedOrderData stores an edited order's data
type FuturesFillsData ¶
type FuturesFillsData struct { Fills []struct { FillID string `json:"fill_id"` Symbol string `json:"symbol"` Side string `json:"buy"` OrderID string `json:"order_id"` Size float64 `json:"size"` Price float64 `json:"price"` FillTime string `json:"fillTime"` FillType string `json:"fillType"` } `json:"fills"` ServerTime string `json:"serverTime"` }
FuturesFillsData stores fills data
type FuturesInstrumentData ¶
type FuturesInstrumentData struct { Instruments []struct { Symbol string `json:"symbol"` FutureType string `json:"type"` Underlying string `json:"underlying"` OpeningDate string `json:"openingDate"` LastTradingTime string `json:"lastTradingTime"` TickSize float64 `json:"tickSize"` ContractSize float64 `json:"contractSize"` Tradable bool `json:"tradeable"` MarginLevels []struct { Contracts float64 `json:"contracts"` InitialMargin float64 `json:"initialMargin"` MaintenanceMargin float64 `json:"maintenanceMargin"` } `json:"marginLevels"` } `json:"instruments"` }
FuturesInstrumentData stores info for futures market
type FuturesNotificationData ¶
type FuturesNotificationData struct { Notifications []struct { NotificationType string `json:"type"` Priority string `json:"priority"` Note string `json:"note"` EffectiveTime string `json:"effectiveTime"` } `json:"notifications"` ServerTime string `json:"serverTime"` }
FuturesNotificationData stores notification data
type FuturesOpenOrdersData ¶
type FuturesOpenOrdersData struct { Result string `json:"result"` OpenOrders []FOpenOrdersData `json:"openOrders"` ServerTime string `json:"serverTime"` }
FuturesOpenOrdersData stores open orders data for futures
type FuturesOpenPositions ¶
type FuturesOpenPositions struct { OpenPositions []struct { Side string `json:"side"` Symbol string `json:"symbol"` Price float64 `json:"price"` FillTime string `json:"fillTime"` Size float64 `json:"size"` UnrealizedFunding float64 `json:"unrealizedFunding"` } `json:"openPositions"` ServerTime string `json:"serverTime"` }
FuturesOpenPositions stores open positions data for futures
type FuturesOrderData ¶
type FuturesOrderData struct { OrderID string `json:"orderId"` ClientOrderID string `json:"cliOrderId"` OrderType string `json:"type"` Symbol string `json:"symbol"` Side string `json:"side"` Quantity float64 `json:"quantity"` Filled float64 `json:"filled"` LimitPrice float64 `json:"limitPrice"` ReduceOnly bool `json:"reduceOnly"` Timestamp string `json:"timestamp"` LastUpdateTimestamp string `json:"lastUpdateTimestamp"` }
FuturesOrderData stores order data
type FuturesOrderbookData ¶
type FuturesOrderbookData struct { ServerTime string `json:"serverTime"` Orderbook struct { Bids [][2]float64 `json:"bids"` Asks [][2]float64 `json:"asks"` } `json:"orderBook"` }
FuturesOrderbookData stores orderbook data for futures
type FuturesPublicTrades ¶
type FuturesPublicTrades struct { ContinuationToken string `json:"continuationToken"` Elements []struct { ExecutionEvent struct { OuterExecutionHolder struct { Execution struct { LimitFilled bool `json:"limitFilled"` MakerOrder FutureTradeOrder `json:"makerOrder"` MakerOrderData FuturesTradeOrderData `json:"makerOrderData"` MarkPrice float64 `json:"markPrice,string"` OldTakerOrder FutureTradeOrder `json:"oldTakerOrder"` Price float64 `json:"price,string"` Quantity float64 `json:"quantity,string"` TakerOrder FutureTradeOrder `json:"takerOrder"` TakerOrderData FuturesTradeOrderData `json:"takerOrderData"` Timestamp int64 `json:"timestamp"` UID string `json:"uid"` UsdValue float64 `json:"usdValue,string"` } `json:"execution"` TakerReducedQuantity string `json:"takerReducedQuantity"` } `json:"execution"` } `json:"event"` Timestamp int64 `json:"timestamp"` UID string `json:"uid"` } `json:"elements"` Len int64 `json:"len"` }
FuturesPublicTrades returns public trade data a terrible type for parsing data
type FuturesRecentOrdersData ¶
type FuturesRecentOrdersData struct { OrderEvents []struct { Timestamp int64 `json:"timestamp"` Event struct { Timestamp string `json:"timestamp"` UID string `json:"uid"` OrderPlaced struct { RecentOrder RecentOrderData `json:"order"` Reason string `json:"reason"` } `json:"orderPlaced"` OrderCancelled struct { RecentOrder RecentOrderData `json:"order"` Reason string `json:"reason"` } `json:"orderCancelled"` OrderRejected struct { RecentOrder RecentOrderData `json:"order"` Reason string `json:"reason"` } `json:"orderRejected"` ExecutionEvent struct { Execution ExecutionData `json:"execution"` Timestamp string `json:"timestamp"` Quantity float64 `json:"quantity"` Price float64 `json:"price"` MarkPrice float64 `json:"markPrice"` LimitFilled bool `json:"limitFilled"` } `json:"executionEvent"` } `json:"event"` } `json:"orderEvents"` }
FuturesRecentOrdersData stores recent orders data
type FuturesSendOrderData ¶
type FuturesSendOrderData struct { SendStatus struct { OrderID string `json:"order_id"` Status string `json:"status"` ReceivedTime string `json:"receivedTime"` OrderEvents []struct { UID string `json:"uid"` Order FuturesOrderData `json:"order"` Reason string `json:"reason"` DataType string `json:"type"` } `json:"orderEvents"` } `json:"sendStatus"` ServerTime string `json:"serverTime"` }
FuturesSendOrderData stores send order data
type FuturesTicker ¶
type FuturesTicker struct { Tag string `json:"tag"` Pair string `json:"pair"` Symbol string `json:"symbol"` MarkPrice float64 `json:"markPrice"` Bid float64 `json:"bid"` BidSize float64 `json:"bidSize"` Ask float64 `json:"ask"` AskSize float64 `json:"askSize"` Vol24h float64 `json:"vol24h"` OpenInterest float64 `json:"openInterest"` Open24H float64 `json:"open24h"` Last float64 `json:"last"` LastTime string `json:"lastTime"` LastSize float64 `json:"lastSize"` Suspended bool `json:"suspended"` FundingRate float64 `json:"fundingRate"` FundingRatePrediction float64 `json:"fundingRatePrediction"` IndexPrice float64 `json:"indexPrice"` PostOnly bool `json:"postOnly"` Change24H float64 `json:"change24h"` }
FuturesTicker holds futures ticker data
type FuturesTickerData ¶
type FuturesTickerData struct { Ticker FuturesTicker `json:"ticker"` ServerTime string `json:"serverTime"` }
FuturesTickerData stores info for futures ticker
type FuturesTickersData ¶
type FuturesTickersData struct { Tickers []FuturesTicker `json:"tickers"` ServerTime string `json:"serverTime"` }
FuturesTickersData stores info for futures tickers
type FuturesTradeHistoryData ¶
type FuturesTradeHistoryData struct { History []struct { Time string `json:"time"` TradeID int64 `json:"trade_id"` Price float64 `json:"price"` Size float64 `json:"size"` Side string `json:"side"` TradeType string `json:"type"` } `json:"history"` }
FuturesTradeHistoryData stores trade history data for futures
type FuturesTradeOrderData ¶
type FuturesTradeOrderData struct { Fee float64 `json:"fee,string"` PositionSize float64 `json:"positionSize,string"` }
FuturesTradeOrderData holds additional order details for a futures trade order
type FuturesTransferData ¶
type FuturesTransferData struct { Result string `json:"result"` ServerTime string `json:"serverTime"` }
FuturesTransferData stores transfer data
type GenericResponse ¶
GenericResponse stores general response data for functions that only return success
type GetClosedOrdersOptions ¶
type GetClosedOrdersOptions struct { Trades bool UserRef int32 Start string End string Ofs int64 CloseTime string }
GetClosedOrdersOptions type
type GetLedgersOptions ¶
type GetLedgersOptions struct { Aclass string Asset string Type string Start string End string Ofs int64 }
GetLedgersOptions type
type GetTradesHistoryOptions ¶
GetTradesHistoryOptions type
type Kraken ¶
Kraken is the overarching type across the kraken package
func (*Kraken) AddOrder ¶
func (k *Kraken) AddOrder(ctx context.Context, symbol currency.Pair, side, orderType string, volume, price, price2, leverage float64, args *AddOrderOptions) (AddOrderResponse, error)
AddOrder adds a new order for Kraken exchange
func (*Kraken) AuthenticateWebsocket ¶
AuthenticateWebsocket sends an authentication message to the websocket
func (*Kraken) CancelAllOrders ¶
func (k *Kraken) CancelAllOrders(ctx context.Context, req *order.Cancel) (order.CancelAllResponse, error)
CancelAllOrders cancels all orders associated with a currency pair
func (*Kraken) CancelBatchOrders ¶
func (k *Kraken) CancelBatchOrders(_ context.Context, o []order.Cancel) (*order.CancelBatchResponse, error)
CancelBatchOrders cancels an orders by their corresponding ID numbers
func (*Kraken) CancelExistingOrder ¶
CancelExistingOrder cancels order by orderID
func (*Kraken) CancelOrder ¶
CancelOrder cancels an order by its corresponding ID number
func (*Kraken) FetchAccountInfo ¶
func (k *Kraken) FetchAccountInfo(ctx context.Context, assetType asset.Item) (account.Holdings, error)
FetchAccountInfo retrieves balances for all enabled currencies
func (*Kraken) FetchOrderbook ¶
func (k *Kraken) FetchOrderbook(ctx context.Context, p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
FetchOrderbook returns orderbook base on the currency pair
func (*Kraken) FetchTicker ¶
func (k *Kraken) FetchTicker(ctx context.Context, p currency.Pair, assetType asset.Item) (*ticker.Price, error)
FetchTicker returns the ticker for a currency pair
func (*Kraken) FetchTradablePairs ¶
FetchTradablePairs returns a list of the exchanges tradable pairs
func (*Kraken) FormatExchangeKlineInterval ¶
FormatExchangeKlineInterval returns Interval to exchange formatted string
func (*Kraken) FormatExchangeKlineIntervalFutures ¶
FormatExchangeKlineIntervalFutures returns Interval to exchange formatted string
func (*Kraken) FuturesBatchOrder ¶
func (k *Kraken) FuturesBatchOrder(ctx context.Context, data []PlaceBatchOrderData) (BatchOrderData, error)
FuturesBatchOrder places a batch order for futures
func (*Kraken) FuturesCancelAllOrders ¶
func (k *Kraken) FuturesCancelAllOrders(ctx context.Context, symbol currency.Pair) (CancelAllOrdersData, error)
FuturesCancelAllOrders cancels all futures orders for a given symbol or all symbols
func (*Kraken) FuturesCancelAllOrdersAfter ¶
func (k *Kraken) FuturesCancelAllOrdersAfter(ctx context.Context, timeout int64) (CancelOrdersAfterData, error)
FuturesCancelAllOrdersAfter cancels all futures orders for all symbols after a period of time (timeout measured in seconds)
func (*Kraken) FuturesCancelOrder ¶
func (k *Kraken) FuturesCancelOrder(ctx context.Context, orderID, clientOrderID string) (FuturesCancelOrderData, error)
FuturesCancelOrder cancels an order
func (*Kraken) FuturesEditOrder ¶
func (k *Kraken) FuturesEditOrder(ctx context.Context, orderID, clientOrderID string, size, limitPrice, stopPrice float64) (FuturesAccountsData, error)
FuturesEditOrder edits a futures order
func (*Kraken) FuturesGetFills ¶
func (k *Kraken) FuturesGetFills(ctx context.Context, lastFillTime time.Time) (FuturesFillsData, error)
FuturesGetFills gets order fills for futures
func (*Kraken) FuturesGetOpenPositions ¶
func (k *Kraken) FuturesGetOpenPositions(ctx context.Context) (FuturesOpenPositions, error)
FuturesGetOpenPositions gets futures platform's notifications
func (*Kraken) FuturesGetTransfers ¶
func (k *Kraken) FuturesGetTransfers(ctx context.Context, lastTransferTime time.Time) (GenericResponse, error)
FuturesGetTransfers withdraws currencies from futures wallet to spot wallet
func (*Kraken) FuturesNotifications ¶
func (k *Kraken) FuturesNotifications(ctx context.Context) (FuturesNotificationData, error)
FuturesNotifications gets futures notifications
func (*Kraken) FuturesOpenOrders ¶
func (k *Kraken) FuturesOpenOrders(ctx context.Context) (FuturesOpenOrdersData, error)
FuturesOpenOrders gets all futures open orders
func (*Kraken) FuturesRecentOrders ¶
func (k *Kraken) FuturesRecentOrders(ctx context.Context, symbol currency.Pair) (FuturesRecentOrdersData, error)
FuturesRecentOrders gets recent futures orders for a symbol or all symbols
func (*Kraken) FuturesSendOrder ¶
func (k *Kraken) FuturesSendOrder(ctx context.Context, orderType order.Type, symbol currency.Pair, side, triggerSignal, clientOrderID, reduceOnly string, ioc bool, size, limitPrice, stopPrice float64) (FuturesSendOrderData, error)
FuturesSendOrder sends a futures order
func (*Kraken) FuturesTransfer ¶
func (k *Kraken) FuturesTransfer(ctx context.Context, fromAccount, toAccount, unit string, amount float64) (FuturesTransferData, error)
FuturesTransfer transfers funds between accounts
func (*Kraken) FuturesWithdrawToSpotWallet ¶
func (k *Kraken) FuturesWithdrawToSpotWallet(ctx context.Context, currency string, amount float64) (GenericResponse, error)
FuturesWithdrawToSpotWallet withdraws currencies from futures wallet to spot wallet
func (*Kraken) GenerateDefaultSubscriptions ¶
func (k *Kraken) GenerateDefaultSubscriptions() ([]subscription.Subscription, error)
GenerateDefaultSubscriptions Adds default subscriptions to websocket to be handled by ManageSubscriptions()
func (*Kraken) GetAccountFundingHistory ¶
GetAccountFundingHistory returns funding history, deposits and withdrawals
func (*Kraken) GetActiveOrders ¶
func (k *Kraken) GetActiveOrders(ctx context.Context, req *order.MultiOrderRequest) (order.FilteredOrders, error)
GetActiveOrders retrieves any orders that are active/open
func (*Kraken) GetAssetPairs ¶
func (k *Kraken) GetAssetPairs(ctx context.Context, assetPairs []string, info string) (map[string]*AssetPairs, error)
GetAssetPairs returns a full asset pair list Parameter 'info' only supports 4 strings: "fees", "leverage", "margin", "info" <- (default)
func (*Kraken) GetAvailableTransferChains ¶
func (k *Kraken) GetAvailableTransferChains(ctx context.Context, cryptocurrency currency.Code) ([]string, error)
GetAvailableTransferChains returns the available transfer blockchains for the specific cryptocurrency
func (*Kraken) GetBalance ¶
GetBalance returns your balance associated with your keys
func (*Kraken) GetClosedOrders ¶
func (k *Kraken) GetClosedOrders(ctx context.Context, args GetClosedOrdersOptions) (ClosedOrders, error)
GetClosedOrders returns a list of closed orders
func (*Kraken) GetCryptoDepositAddress ¶
func (k *Kraken) GetCryptoDepositAddress(ctx context.Context, method, code string, createNew bool) ([]DepositAddress, error)
GetCryptoDepositAddress returns a deposit address for a cryptocurrency
func (*Kraken) GetCurrencyTradeURL ¶
func (k *Kraken) 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 (*Kraken) GetCurrentServerTime ¶
func (k *Kraken) GetCurrentServerTime(ctx context.Context) (TimeResponse, error)
GetCurrentServerTime returns current server time
func (*Kraken) GetDepositAddress ¶
func (k *Kraken) GetDepositAddress(ctx context.Context, cryptocurrency currency.Code, _, chain string) (*deposit.Address, error)
GetDepositAddress returns a deposit address for a specified currency
func (*Kraken) GetDepositMethods ¶
GetDepositMethods gets withdrawal fees
func (*Kraken) GetFeeByType ¶
func (k *Kraken) GetFeeByType(ctx context.Context, feeBuilder *exchange.FeeBuilder) (float64, error)
GetFeeByType returns an estimate of fee based on type of transaction
func (*Kraken) GetFuturesAccountData ¶
func (k *Kraken) GetFuturesAccountData(ctx context.Context) (FuturesAccountsData, error)
GetFuturesAccountData gets account data for futures
func (*Kraken) GetFuturesCharts ¶
func (k *Kraken) GetFuturesCharts(ctx context.Context, resolution, tickType string, symbol currency.Pair, to, from time.Time) (*FuturesCandles, error)
GetFuturesCharts returns candle data for kraken futures
func (*Kraken) GetFuturesContractDetails ¶
func (k *Kraken) GetFuturesContractDetails(ctx context.Context, item asset.Item) ([]futures.Contract, error)
GetFuturesContractDetails returns details about futures contracts
func (*Kraken) GetFuturesOrderbook ¶
func (k *Kraken) GetFuturesOrderbook(ctx context.Context, symbol currency.Pair) (*FuturesOrderbookData, error)
GetFuturesOrderbook gets orderbook data for futures
func (*Kraken) GetFuturesTickerBySymbol ¶
func (k *Kraken) GetFuturesTickerBySymbol(ctx context.Context, symbol string) (FuturesTickerData, error)
GetFuturesTickerBySymbol returns futures ticker data by symbol
func (*Kraken) GetFuturesTickers ¶
func (k *Kraken) GetFuturesTickers(ctx context.Context) (FuturesTickersData, error)
GetFuturesTickers gets a list of futures tickers and their data
func (*Kraken) GetFuturesTradeHistory ¶
func (k *Kraken) GetFuturesTradeHistory(ctx context.Context, symbol currency.Pair, lastTime time.Time) (FuturesTradeHistoryData, error)
GetFuturesTradeHistory gets public trade history data for futures
func (*Kraken) GetFuturesTrades ¶
func (k *Kraken) GetFuturesTrades(ctx context.Context, symbol currency.Pair, to, from time.Time) (*FuturesPublicTrades, error)
GetFuturesTrades returns public trade data for kraken futures
func (*Kraken) GetHistoricCandles ¶
func (k *Kraken) GetHistoricCandles(ctx context.Context, pair currency.Pair, a asset.Item, interval kline.Interval, start, end time.Time) (*kline.Item, error)
GetHistoricCandles returns candles between a time period for a set time interval
func (*Kraken) GetHistoricCandlesExtended ¶
func (k *Kraken) 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 (*Kraken) GetHistoricTrades ¶
func (k *Kraken) GetHistoricTrades(_ context.Context, _ currency.Pair, _ asset.Item, _, _ time.Time) ([]trade.Data, error)
GetHistoricTrades returns historic trade data within the timeframe provided
func (*Kraken) GetInstruments ¶
func (k *Kraken) GetInstruments(ctx context.Context) (FuturesInstrumentData, error)
GetInstruments gets a list of futures markets and their data
func (*Kraken) GetLatestFundingRates ¶
func (k *Kraken) GetLatestFundingRates(ctx context.Context, r *fundingrate.LatestRateRequest) ([]fundingrate.LatestRateResponse, error)
GetLatestFundingRates returns the latest funding rates data
func (*Kraken) GetLedgers ¶
GetLedgers returns current ledgers
func (*Kraken) GetOHLC ¶
func (k *Kraken) GetOHLC(ctx context.Context, symbol currency.Pair, interval string) ([]OpenHighLowClose, error)
GetOHLC returns an array of open high low close values of a currency pair
func (*Kraken) GetOpenInterest ¶
func (k *Kraken) GetOpenInterest(ctx context.Context, keys ...key.PairAsset) ([]futures.OpenInterest, error)
GetOpenInterest returns the open interest rate for a given asset pair
func (*Kraken) GetOpenOrders ¶
func (k *Kraken) GetOpenOrders(ctx context.Context, args OrderInfoOptions) (OpenOrders, error)
GetOpenOrders returns all current open orders
func (*Kraken) GetOrderHistory ¶
func (k *Kraken) GetOrderHistory(ctx context.Context, getOrdersRequest *order.MultiOrderRequest) (order.FilteredOrders, error)
GetOrderHistory retrieves account order information Can Limit response to specific order status
func (*Kraken) GetOrderInfo ¶
func (k *Kraken) GetOrderInfo(ctx context.Context, orderID string, _ currency.Pair, assetType asset.Item) (*order.Detail, error)
GetOrderInfo returns information on a current open order
func (*Kraken) GetRecentTrades ¶
func (k *Kraken) 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 (*Kraken) GetServerTime ¶
GetServerTime returns the current exchange server time.
func (*Kraken) GetTickers ¶
GetTickers supports fetching multiple tickers from Kraken pairList must be in the format pairs separated by commas ("LTCUSD,ETCUSD")
func (*Kraken) GetTradeBalance ¶
func (k *Kraken) GetTradeBalance(ctx context.Context, args ...TradeBalanceOptions) (TradeBalanceInfo, error)
GetTradeBalance returns full information about your trades on Kraken
func (*Kraken) GetTradeVolume ¶
func (k *Kraken) GetTradeVolume(ctx context.Context, feeinfo bool, symbol ...currency.Pair) (*TradeVolumeResponse, error)
GetTradeVolume returns your trade volume by currency
func (*Kraken) GetTradesHistory ¶
func (k *Kraken) GetTradesHistory(ctx context.Context, args ...GetTradesHistoryOptions) (TradesHistory, error)
GetTradesHistory returns trade history information
func (*Kraken) GetWebsocketToken ¶
GetWebsocketToken returns a websocket token
func (*Kraken) GetWithdrawInfo ¶
func (k *Kraken) GetWithdrawInfo(ctx context.Context, currency string, amount float64) (WithdrawInformation, error)
GetWithdrawInfo gets withdrawal fees
func (*Kraken) GetWithdrawalsHistory ¶
func (k *Kraken) GetWithdrawalsHistory(ctx context.Context, c currency.Code, _ asset.Item) ([]exchange.WithdrawalHistory, error)
GetWithdrawalsHistory returns previous withdrawals data
func (*Kraken) IsPerpetualFutureCurrency ¶
IsPerpetualFutureCurrency ensures a given asset and currency is a perpetual future
func (*Kraken) ModifyOrder ¶
ModifyOrder will allow of changing orderbook placement and limit to market conversion
func (*Kraken) OpenPositions ¶
func (k *Kraken) OpenPositions(ctx context.Context, docalcs bool, txids ...string) (map[string]Position, error)
OpenPositions returns current open positions
func (*Kraken) QueryLedgers ¶
func (k *Kraken) QueryLedgers(ctx context.Context, id string, ids ...string) (map[string]LedgerInfo, error)
QueryLedgers queries an individual ledger by ID
func (*Kraken) QueryOrdersInfo ¶
func (k *Kraken) QueryOrdersInfo(ctx context.Context, args OrderInfoOptions, txid string, txids ...string) (map[string]OrderInfo, error)
QueryOrdersInfo returns order information
func (*Kraken) QueryTrades ¶
func (k *Kraken) QueryTrades(ctx context.Context, trades bool, txid string, txids ...string) (map[string]TradeInfo, error)
QueryTrades returns information on a specific trade
func (*Kraken) SeedAssets ¶
SeedAssets seeds Kraken's asset list and stores it in the asset translator
func (*Kraken) SendAuthenticatedHTTPRequest ¶
func (k *Kraken) SendAuthenticatedHTTPRequest(ctx context.Context, ep exchange.URL, method string, params url.Values, result interface{}) error
SendAuthenticatedHTTPRequest sends an authenticated HTTP request
func (*Kraken) SendFuturesAuthRequest ¶
func (k *Kraken) SendFuturesAuthRequest(ctx context.Context, method, path string, data url.Values, result interface{}) error
SendFuturesAuthRequest will send an auth req
func (*Kraken) SendHTTPRequest ¶
func (k *Kraken) SendHTTPRequest(ctx context.Context, ep exchange.URL, path string, result interface{}) error
SendHTTPRequest sends an unauthenticated HTTP requests
func (*Kraken) SetDefaults ¶
func (k *Kraken) SetDefaults()
SetDefaults sets current default settings
func (*Kraken) SubmitOrder ¶
SubmitOrder submits a new order
func (*Kraken) SubmitOrders ¶ added in v1.0.7
func (*Kraken) Subscribe ¶
func (k *Kraken) Subscribe(channelsToSubscribe []subscription.Subscription) error
Subscribe sends a websocket message to receive data from the channel
func (*Kraken) Unsubscribe ¶
func (k *Kraken) Unsubscribe(channelsToUnsubscribe []subscription.Subscription) error
Unsubscribe sends a websocket message to stop receiving data from the channel
func (*Kraken) UpdateAccountInfo ¶
func (k *Kraken) UpdateAccountInfo(ctx context.Context, assetType asset.Item) (account.Holdings, error)
UpdateAccountInfo retrieves balances for all enabled currencies for the Kraken exchange - to-do
func (*Kraken) UpdateOrderExecutionLimits ¶
UpdateOrderExecutionLimits sets exchange execution order limits for an asset type
func (*Kraken) UpdateOrderbook ¶
func (k *Kraken) UpdateOrderbook(ctx context.Context, p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
UpdateOrderbook updates and returns the orderbook for a currency pair
func (*Kraken) UpdateTicker ¶
func (k *Kraken) UpdateTicker(ctx context.Context, p currency.Pair, a asset.Item) (*ticker.Price, error)
UpdateTicker updates and returns the ticker for a currency pair
func (*Kraken) UpdateTickers ¶
UpdateTickers updates the ticker for all currency pairs of a given asset type
func (*Kraken) UpdateTradablePairs ¶
UpdateTradablePairs updates the exchanges available pairs and stores them in the exchanges config
func (*Kraken) ValidateAPICredentials ¶
ValidateAPICredentials validates current credentials used for wrapper functionality
func (*Kraken) WithdrawCancel ¶
WithdrawCancel sends a withdrawal cancellation request
func (*Kraken) WithdrawCryptocurrencyFunds ¶
func (k *Kraken) WithdrawCryptocurrencyFunds(ctx context.Context, withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
WithdrawCryptocurrencyFunds returns a withdrawal ID when a withdrawal Populate exchange.WithdrawRequest.TradePassword with withdrawal key name, as set up on your account
func (*Kraken) WithdrawFiatFunds ¶
func (k *Kraken) WithdrawFiatFunds(ctx context.Context, withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
WithdrawFiatFunds returns a withdrawal ID when a withdrawal is submitted
func (*Kraken) WithdrawFiatFundsToInternationalBank ¶
func (k *Kraken) WithdrawFiatFundsToInternationalBank(ctx context.Context, withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
WithdrawFiatFundsToInternationalBank returns a withdrawal ID when a withdrawal is submitted
func (*Kraken) WithdrawStatus ¶
func (k *Kraken) WithdrawStatus(ctx context.Context, c currency.Code, method string) ([]WithdrawStatusResponse, error)
WithdrawStatus gets the status of recent withdrawals
type LedgerInfo ¶
type LedgerInfo struct { Refid string `json:"refid"` Time float64 `json:"time"` Type string `json:"type"` Aclass string `json:"aclass"` Asset string `json:"asset"` Amount float64 `json:"amount,string"` Fee float64 `json:"fee,string"` Balance float64 `json:"balance,string"` }
LedgerInfo type
type Ledgers ¶
type Ledgers struct { Ledger map[string]LedgerInfo `json:"ledger"` Count int64 `json:"count"` }
Ledgers type
type OpenHighLowClose ¶
type OpenHighLowClose struct { Time float64 Open float64 High float64 Low float64 Close float64 VolumeWeightedAveragePrice float64 Volume float64 Count float64 }
OpenHighLowClose contains ticker event information
type OpenOrders ¶
OpenOrders type
type OrderDescription ¶
OrderDescription represents an orders description
type OrderInfo ¶
type OrderInfo struct { RefID string `json:"refid"` UserRef int32 `json:"userref"` Status string `json:"status"` OpenTime float64 `json:"opentm"` CloseTime float64 `json:"closetm"` StartTime float64 `json:"starttm"` ExpireTime float64 `json:"expiretm"` Description struct { Pair string `json:"pair"` Type string `json:"type"` OrderType string `json:"ordertype"` Price float64 `json:"price,string"` Price2 float64 `json:"price2,string"` Leverage string `json:"leverage"` Order string `json:"order"` Close string `json:"close"` } `json:"descr"` Volume float64 `json:"vol,string"` VolumeExecuted float64 `json:"vol_exec,string"` Cost float64 `json:"cost,string"` Fee float64 `json:"fee,string"` Price float64 `json:"price,string"` StopPrice float64 `json:"stopprice,string"` LimitPrice float64 `json:"limitprice,string"` Misc string `json:"misc"` OrderFlags string `json:"oflags"` Trades []string `json:"trades"` }
OrderInfo type
type OrderInfoOptions ¶
OrderInfoOptions type
type Orderbook ¶
type Orderbook struct { Bids []OrderbookBase Asks []OrderbookBase }
Orderbook stores the bids and asks orderbook data
type OrderbookBase ¶
OrderbookBase stores the orderbook price and amount data
type PlaceBatchOrderData ¶
type PlaceBatchOrderData struct { PlaceOrderType string `json:"order,omitempty"` OrderType string `json:"orderType,omitempty"` OrderTag string `json:"order_tag,omitempty"` Symbol string `json:"symbol,omitempty"` Side string `json:"side,omitempty"` Size float64 `json:"size,omitempty"` LimitPrice float64 `json:"limitPrice,omitempty"` StopPrice float64 `json:"stopPrice,omitempty"` ClientOrderID int64 `json:"cliOrdId,omitempty"` ReduceOnly string `json:"reduceOnly,omitempty"` OrderID string `json:"order_id,omitempty"` }
PlaceBatchOrderData stores data required to place a batch order
type Position ¶
type Position struct { Ordertxid string `json:"ordertxid"` Pair string `json:"pair"` Time float64 `json:"time"` Type string `json:"type"` OrderType string `json:"ordertype"` Cost float64 `json:"cost,string"` Fee float64 `json:"fee,string"` Volume float64 `json:"vol,string"` VolumeClosed float64 `json:"vol_closed,string"` Margin float64 `json:"margin,string"` RolloverTime int64 `json:"rollovertm,string"` Misc string `json:"misc"` OrderFlags string `json:"oflags"` PositionStatus string `json:"posstatus"` Net string `json:"net"` Terms string `json:"terms"` }
Position holds the opened position
type RecentOrderData ¶
type RecentOrderData struct { UID string `json:"uid"` AccountID string `json:"accountId"` Tradeable string `json:"tradeable"` Direction string `json:"direction"` Quantity float64 `json:"quantity,string"` Filled float64 `json:"filled,string"` Timestamp string `json:"timestamp"` LimitPrice float64 `json:"limitPrice,string"` OrderType string `json:"orderType"` ClientID string `json:"clientId"` StopPrice float64 `json:"stopPrice,string"` }
RecentOrderData stores order data of a recent order
type RecentTrades ¶
type RecentTrades struct { Price float64 Volume float64 Time float64 BuyOrSell string MarketOrLimit string Miscellaneous interface{} TradeID int64 }
RecentTrades holds recent trade data
type RecentTradesResponse ¶
type RecentTradesResponse struct { Error []interface{} `json:"error"` Result map[string]interface{} `json:"result"` Last string `json:"last"` }
RecentTradesResponse defines the response for recent trades
type RequestParamsTimeForceType ¶
type RequestParamsTimeForceType string
RequestParamsTimeForceType Time in force
type SpotAuthError ¶
type SpotAuthError struct {
Error interface{} `json:"error"` // can be a []string or string
}
SpotAuthError stores authenticated error messages
type Ticker ¶
type Ticker struct { Ask float64 AskSize float64 Bid float64 BidSize float64 Last float64 Volume float64 VolumeWeightedAveragePrice float64 Trades int64 Low float64 High float64 Open float64 }
Ticker is a standard ticker type
type TickerResponse ¶
type TickerResponse struct { Ask [3]types.Number `json:"a"` Bid [3]types.Number `json:"b"` Last [2]types.Number `json:"c"` Volume [2]types.Number `json:"v"` VolumeWeightedAveragePrice [2]types.Number `json:"p"` Trades [2]int64 `json:"t"` Low [2]types.Number `json:"l"` High [2]types.Number `json:"h"` Open types.Number `json:"o"` }
TickerResponse holds ticker information before its put into the Ticker struct
type TimeResponse ¶
TimeResponse type
type TradeBalanceInfo ¶
type TradeBalanceInfo struct { EquivalentBalance float64 `json:"eb,string"` // combined balance of all currencies TradeBalance float64 `json:"tb,string"` // combined balance of all equity currencies MarginAmount float64 `json:"m,string"` // margin amount of open positions Net float64 `json:"n,string"` // unrealized net profit/loss of open positions Equity float64 `json:"e,string"` // trade balance + unrealized net profit/loss FreeMargin float64 `json:"mf,string"` // equity - initial margin (maximum margin available to open new positions) MarginLevel float64 `json:"ml,string"` // (equity / initial margin) * 100 }
TradeBalanceInfo type
type TradeBalanceOptions ¶
TradeBalanceOptions type
type TradeInfo ¶
type TradeInfo struct { OrderTxID string `json:"ordertxid"` Pair string `json:"pair"` Time float64 `json:"time"` Type string `json:"type"` OrderType string `json:"ordertype"` Price float64 `json:"price,string"` Cost float64 `json:"cost,string"` Fee float64 `json:"fee,string"` Volume float64 `json:"vol,string"` Margin float64 `json:"margin,string"` Misc string `json:"misc"` PosTxID string `json:"postxid"` ClosedPositionAveragePrice float64 `json:"cprice,string"` ClosedPositionFee float64 `json:"cfee,string"` ClosedPositionVolume float64 `json:"cvol,string"` ClosedPositionMargin float64 `json:"cmargin,string"` Trades []string `json:"trades"` PosStatus string `json:"posstatus"` }
TradeInfo type
type TradeVolumeFee ¶
type TradeVolumeFee struct { Fee float64 `json:"fee,string"` MinFee float64 `json:"minfee,string"` MaxFee float64 `json:"maxfee,string"` NextFee float64 `json:"nextfee,string"` NextVolume float64 `json:"nextvolume,string"` TierVolume float64 `json:"tiervolume,string"` }
TradeVolumeFee type
type TradeVolumeResponse ¶
type TradeVolumeResponse struct { Currency string `json:"currency"` Volume float64 `json:"volume,string"` Fees map[string]TradeVolumeFee `json:"fees"` FeesMaker map[string]TradeVolumeFee `json:"fees_maker"` }
TradeVolumeResponse type
type TradesHistory ¶
type TradesHistory struct { Trades map[string]TradeInfo `json:"trades"` Count int64 `json:"count"` }
TradesHistory type
type WSFuturesTickerData ¶
type WSFuturesTickerData struct { Time int64 `json:"time"` Feed string `json:"feed"` ProductID string `json:"product_id"` Bid float64 `json:"bid"` Ask float64 `json:"ask"` BidSize float64 `json:"bid_size"` AskSize float64 `json:"ask_size"` Volume float64 `json:"volume"` DTM float64 `json:"dtm"` Leverage string `json:"leverage"` Index float64 `json:"index"` Premium float64 `json:"premium"` Last float64 `json:"last"` Change float64 `json:"change"` Suspended bool `json:"suspended"` Tag string `json:"tag"` Pair string `json:"pair"` OpenInterest float64 `json:"openinterest"` MarkPrice float64 `json:"markPrice"` MaturityTime int64 `json:"maturityTime"` FundingRate float64 `json:"funding_rate"` FundingRatePrediction float64 `json:"funding_rate_prediction"` RelativeFundingRate float64 `json:"relative_funding_rate"` RelativeFundingRatePrediction float64 `json:"relative_funding_rate_prediction"` NextFundingRateTime int64 `json:"next_funding_rate_time"` }
WSFuturesTickerData stores ws ticker data for futures websocket
type WebsocketBaseEventRequest ¶
type WebsocketBaseEventRequest struct {
Event string `json:"event"` // eg "unsubscribe"
}
WebsocketBaseEventRequest Just has an "event" property
type WebsocketChannelData ¶
type WebsocketChannelData struct { Subscription string Pair currency.Pair ChannelID *int64 MaxDepth int }
WebsocketChannelData Holds relevant data for channels to identify what we're doing
type WebsocketDataResponse ¶
type WebsocketDataResponse []interface{}
WebsocketDataResponse defines a websocket data type
type WebsocketErrorResponse ¶
type WebsocketErrorResponse struct {
ErrorMessage string `json:"errorMessage"`
}
WebsocketErrorResponse defines a websocket error response
type WebsocketEventResponse ¶
type WebsocketEventResponse struct { WebsocketBaseEventRequest Status string `json:"status"` Pair currency.Pair `json:"pair,omitempty"` RequestID int64 `json:"reqid,omitempty"` // Optional, client originated ID reflected in response message. Subscription WebsocketSubscriptionResponseData `json:"subscription,omitempty"` ChannelName string `json:"channelName,omitempty"` WebsocketSubscriptionEventResponse WebsocketErrorResponse }
WebsocketEventResponse holds all data response types
type WebsocketSubscriptionData ¶
type WebsocketSubscriptionData struct { Name string `json:"name,omitempty"` // ticker|ohlc|trade|book|spread|*, * for all (ohlc interval value is 1 if all channels subscribed) Interval int64 `json:"interval,omitempty"` // Optional - Time interval associated with ohlc subscription in minutes. Default 1. Valid Interval values: 1|5|15|30|60|240|1440|10080|21600 Depth int64 `json:"depth,omitempty"` // Optional - depth associated with book subscription in number of levels each side, default 10. Valid Options are: 10, 25, 100, 500, 1000 Token string `json:"token,omitempty"` // Optional used for authenticated requests }
WebsocketSubscriptionData contains details on WS channel
type WebsocketSubscriptionEventRequest ¶
type WebsocketSubscriptionEventRequest struct { Event string `json:"event"` // subscribe RequestID int64 `json:"reqid,omitempty"` // Optional, client originated ID reflected in response message. Pairs []string `json:"pair,omitempty"` // Array of currency pairs (pair1,pair2,pair3). Subscription WebsocketSubscriptionData `json:"subscription,omitempty"` Channels []subscription.Subscription `json:"-"` // Keeps track of associated subscriptions in batched outgoings }
WebsocketSubscriptionEventRequest handles WS subscription events
type WebsocketSubscriptionEventResponse ¶
type WebsocketSubscriptionEventResponse struct {
ChannelID int64 `json:"channelID"`
}
WebsocketSubscriptionEventResponse defines a websocket socket event response
type WebsocketSubscriptionResponseData ¶
type WebsocketSubscriptionResponseData struct {
Name string `json:"name"`
}
WebsocketSubscriptionResponseData defines a websocket subscription response
type WebsocketUnsubscribeByChannelIDEventRequest ¶
type WebsocketUnsubscribeByChannelIDEventRequest struct { WebsocketBaseEventRequest RequestID int64 `json:"reqid,omitempty"` // Optional, client originated ID reflected in response message. Pairs []string `json:"pair,omitempty"` // Array of currency pairs (pair1,pair2,pair3). ChannelID int64 `json:"channelID,omitempty"` }
WebsocketUnsubscribeByChannelIDEventRequest handles WS unsubscribe events
type WithdrawInformation ¶
type WithdrawInformation struct { Method string `json:"method"` Limit float64 `json:"limit,string"` Fee float64 `json:"fee,string"` }
WithdrawInformation Used to check withdrawal fees
type WithdrawStatusResponse ¶
type WithdrawStatusResponse struct { Method string `json:"method"` Aclass string `json:"aclass"` Asset string `json:"asset"` Refid string `json:"refid"` TxID string `json:"txid"` Info string `json:"info"` Amount float64 `json:"amount,string"` Fee float64 `json:"fee,string"` Time float64 `json:"time"` Status string `json:"status"` }
WithdrawStatusResponse defines a withdrawal status response
type WsAccountBalancesAndMargin ¶
type WsAccountBalancesAndMargin struct { Seq int64 `json:"seq"` Feed string `json:"feed"` Account string `json:"account"` MarginAccounts []struct { Name string `json:"name"` PortfolioValue float64 `json:"pv"` Balance float64 `json:"balance"` Funding float64 `json:"funding"` MaintenanceMargin float64 `json:"mm"` ProfitAndLoss float64 `json:"pnl"` InitialMargin float64 `json:"im"` AM float64 `json:"am"` } `json:"margin_accounts"` }
WsAccountBalancesAndMargin stores account balances and margin data for futures websocket
type WsAddOrderRequest ¶
type WsAddOrderRequest struct { Event string `json:"event"` Token string `json:"token"` RequestID int64 `json:"reqid,omitempty"` // Optional, client originated ID reflected in response message. OrderType string `json:"ordertype"` OrderSide string `json:"type"` Pair string `json:"pair"` Price float64 `json:"price,string,omitempty"` // optional Price2 float64 `json:"price2,string,omitempty"` // optional Volume float64 `json:"volume,string,omitempty"` Leverage float64 `json:"leverage,omitempty"` // optional OFlags string `json:"oflags,omitempty"` // optional StartTime string `json:"starttm,omitempty"` // optional ExpireTime string `json:"expiretm,omitempty"` // optional UserReferenceID string `json:"userref,omitempty"` // optional Validate string `json:"validate,omitempty"` // optional CloseOrderType string `json:"close[ordertype],omitempty"` // optional ClosePrice float64 `json:"close[price],omitempty"` // optional ClosePrice2 float64 `json:"close[price2],omitempty"` // optional TimeInForce RequestParamsTimeForceType `json:"timeinforce,omitempty"` // optional }
WsAddOrderRequest request type for ws adding order
type WsAddOrderResponse ¶
type WsAddOrderResponse struct { Event string `json:"event"` RequestID int64 `json:"reqid"` Status string `json:"status"` TransactionID string `json:"txid"` Description string `json:"descr"` ErrorMessage string `json:"errorMessage"` }
WsAddOrderResponse response data for ws order
type WsCancelOrderRequest ¶
type WsCancelOrderRequest struct { Event string `json:"event"` Token string `json:"token"` TransactionIDs []string `json:"txid,omitempty"` RequestID int64 `json:"reqid,omitempty"` // Optional, client originated ID reflected in response message. }
WsCancelOrderRequest request for ws cancel order
type WsCancelOrderResponse ¶
type WsCancelOrderResponse struct { Event string `json:"event"` Status string `json:"status"` ErrorMessage string `json:"errorMessage"` RequestID int64 `json:"reqid"` Count int64 `json:"count"` }
WsCancelOrderResponse response data for ws cancel order and ws cancel all orders
type WsFuturesAccountLog ¶
type WsFuturesAccountLog struct { Feed string `json:"feed"` Logs []struct { ID int64 `json:"id"` Date string `json:"date"` Asset string `json:"asset"` Info string `json:"info"` BookingUID string `json:"booking_uid"` MarginAccount string `json:"margin_account"` OldBalance float64 `json:"old_balance"` NewBalance float64 `json:"new_balance"` OldAverageEntry float64 `json:"old_average_entry"` NewAverageEntry float64 `json:"new_average_entry"` TradePrice float64 `json:"trade_price"` MarkPrice float64 `json:"mark_price"` RealizedPNL float64 `json:"realized_pnl"` Fee float64 `json:"fee"` Execution string `json:"execution"` Collateral string `json:"collateral"` FundingRate float64 `json:"funding_rate"` RealizedFunding float64 `json:"realized_funding"` } `json:"logs"` }
WsFuturesAccountLog stores account log data for futures websocket
type WsFuturesFillsData ¶
type WsFuturesFillsData struct { Feed string `json:"feed"` Account string `json:"account"` Fills []struct { Instrument string `json:"instrument"` Time int64 `json:"time"` Price float64 `json:"price"` Seq int64 `json:"seq"` Buy bool `json:"buy"` Quantity float64 `json:"qty"` OrderID string `json:"order_id"` ClientOrderID string `json:"cli_order_id"` FillID string `json:"fill_id"` FillType string `json:"fill_type"` } `json:"fills"` }
WsFuturesFillsData stores fills data for futures websocket
type WsFuturesNotifications ¶
type WsFuturesNotifications struct { Feed string `json:"feed"` Notifications []struct { ID int64 `json:"id"` NotificationType string `json:"notificationType"` Priority string `json:"priority"` Note string `json:"note"` EffectiveTime int64 `json:"effective_time"` } }
WsFuturesNotifications stores notifications data for futures websocket
type WsFuturesOB ¶
type WsFuturesOB struct { Feed string `json:"feed"` ProductID string `json:"product_id"` Seq int64 `json:"seq"` Bids []wsOBItem `json:"bids"` Asks []wsOBItem `json:"asks"` }
WsFuturesOB stores orderbook data for futures websocket
type WsFuturesOpenOrders ¶
type WsFuturesOpenOrders struct { Feed string `json:"feed"` Account string `json:"account"` Orders []struct { Instrument string `json:"instrument"` Time int64 `json:"time"` LastUpdateTime int64 `json:"last_update_time"` Qty float64 `json:"qty"` Filled float64 `json:"filled"` LimitPrice float64 `json:"limit_price"` StopPrice float64 `json:"stop_price"` OrderType string `json:"order_type"` OrderID string `json:"order_id"` Direction string `json:"direction"` ReduceOnly bool `json:"reduce_only"` } `json:"orders"` }
WsFuturesOpenOrders stores open orders data for futures websocket
type WsFuturesTickerLite ¶
type WsFuturesTickerLite struct { Feed string `json:"feed"` ProductID string `json:"product_id"` Bid float64 `json:"bid"` Ask float64 `json:"ask"` Change float64 `json:"change"` Premium float64 `json:"premium"` Volume float64 `json:"volume"` Tag string `json:"tag"` Pair string `json:"pair"` DTM float64 `json:"dtm"` }
WsFuturesTickerLite stores ticker lite data for futures websocket
type WsFuturesTradeData ¶
type WsFuturesTradeData struct { Feed string `json:"feed"` ProductID string `json:"product_id"` Trades []struct { Feed string `json:"feed"` ProductID string `json:"product_id"` Side string `json:"side"` ProductType string `json:"type"` Seq int64 `json:"seq"` Time int64 `json:"time"` Quantity float64 `json:"qty"` Price float64 `json:"price"` } `json:"trades"` }
WsFuturesTradeData stores public trade data for futures websocket
type WsOpenOrder ¶
type WsOpenOrder struct { UserReferenceID int64 `json:"userref"` ExpireTime float64 `json:"expiretm,string"` LastUpdated float64 `json:"lastupdated,string"` OpenTime float64 `json:"opentm,string"` StartTime float64 `json:"starttm,string"` Fee float64 `json:"fee,string"` LimitPrice float64 `json:"limitprice,string"` StopPrice float64 `json:"stopprice,string"` Volume float64 `json:"vol,string"` ExecutedVolume float64 `json:"vol_exec,string"` Cost float64 `json:"cost,string"` AveragePrice float64 `json:"avg_price,string"` Misc string `json:"misc"` OFlags string `json:"oflags"` RefID string `json:"refid"` Status string `json:"status"` Description struct { Close string `json:"close"` Price float64 `json:"price,string"` Price2 float64 `json:"price2,string"` Leverage float64 `json:"leverage,string"` Order string `json:"order"` OrderType string `json:"ordertype"` Pair string `json:"pair"` Type string `json:"type"` } `json:"descr"` }
WsOpenOrder contains all open order data from ws feed
type WsOpenOrderDescription ¶
type WsOpenOrderDescription struct { Close string `json:"close"` Leverage string `json:"leverage"` Order string `json:"order"` OrderType string `json:"ordertype"` Pair string `json:"pair"` Price float64 `json:"price,string"` Price2 float64 `json:"price2,string"` Type string `json:"type"` }
WsOpenOrderDescription additional data for WsOpenOrders
type WsOpenOrders ¶
type WsOpenOrders struct { Cost float64 `json:"cost,string"` Description WsOpenOrderDescription `json:"descr"` ExpireTime time.Time `json:"expiretm"` Fee float64 `json:"fee,string"` LimitPrice float64 `json:"limitprice,string"` Misc string `json:"misc"` OFlags string `json:"oflags"` OpenTime time.Time `json:"opentm"` Price float64 `json:"price,string"` RefID string `json:"refid"` StartTime time.Time `json:"starttm"` Status string `json:"status"` StopPrice float64 `json:"stopprice,string"` UserReference float64 `json:"userref"` Volume float64 `json:"vol,string"` ExecutedVolume float64 `json:"vol_exec,string"` }
WsOpenOrders ws auth open order data
type WsOpenPositions ¶
type WsOpenPositions struct { Feed string `json:"feed"` Account string `json:"account"` Positions []struct { Instrument string `json:"instrument"` Balance float64 `json:"balance"` EntryPrice float64 `json:"entry_price"` MarkPrice float64 `json:"mark_price"` IndexPrice float64 `json:"index_price"` ProfitAndLoss float64 `json:"pnl"` } `json:"positions"` }
WsOpenPositions stores open positions data for futures websocket
type WsOwnTrade ¶
type WsOwnTrade struct { Cost float64 `json:"cost,string"` Fee float64 `json:"fee,string"` Margin float64 `json:"margin,string"` OrderTransactionID string `json:"ordertxid"` OrderType string `json:"ordertype"` Pair string `json:"pair"` PostTransactionID string `json:"postxid"` Price float64 `json:"price,string"` Time float64 `json:"time,string"` Type string `json:"type"` Vol float64 `json:"vol,string"` }
WsOwnTrade ws auth owntrade data
type WsTokenResponse ¶
type WsTokenResponse struct { Error []string `json:"error"` Result struct { Expires int64 `json:"expires"` Token string `json:"token"` } `json:"result"` }
WsTokenResponse holds the WS auth token
type WsVerboseOpenOrders ¶
type WsVerboseOpenOrders struct { Feed string `json:"feed"` Account string `json:"account"` Orders []struct { Instrument string `json:"instrument"` Time int64 `json:"time"` LastUpdateTime int64 `json:"last_update_time"` Qty float64 `json:"qty"` Filled float64 `json:"filled"` LimitPrice float64 `json:"limit_price"` StopPrice float64 `json:"stop_price"` OrderType string `json:"type"` OrderID string `json:"order_id"` Direction int64 `json:"direction"` ReduceOnly bool `json:"reduce_only"` } `json:"orders"` }
WsVerboseOpenOrders stores verbose open orders data for futures websocket