Documentation
¶
Index ¶
- type Balance
- type CryptoCurrencyDeposit
- type FundHistory
- type FundingRecords
- type GeneralReturn
- type ItBit
- func (i *ItBit) CancelAllOrders(ctx context.Context, orderCancellation *order.Cancel) (order.CancelAllResponse, error)
- func (i *ItBit) CancelBatchOrders(ctx context.Context, o []order.Cancel) (order.CancelBatchResponse, error)
- func (i *ItBit) CancelExistingOrder(ctx context.Context, walletID, orderID string) error
- func (i *ItBit) CancelOrder(ctx context.Context, o *order.Cancel) error
- func (i *ItBit) CreateWallet(ctx context.Context, walletName string) (Wallet, error)
- func (i *ItBit) FetchAccountInfo(ctx context.Context, assetType asset.Item) (account.Holdings, error)
- func (i *ItBit) FetchOrderbook(ctx context.Context, p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
- func (i *ItBit) FetchTicker(ctx context.Context, p currency.Pair, assetType asset.Item) (*ticker.Price, error)
- func (i *ItBit) FetchTradablePairs(ctx context.Context, asset asset.Item) ([]string, error)
- func (i *ItBit) GetActiveOrders(ctx context.Context, req *order.GetOrdersRequest) ([]order.Detail, error)
- func (i *ItBit) GetCryptoDepositAddress(ctx context.Context, walletID, currency string) (CryptoCurrencyDeposit, error)
- func (i *ItBit) GetDefaultConfig() (*config.Exchange, error)
- func (i *ItBit) GetDepositAddress(_ context.Context, _ currency.Code, _, _ string) (*deposit.Address, error)
- func (i *ItBit) GetFee(feeBuilder *exchange.FeeBuilder) (float64, error)
- func (i *ItBit) GetFeeByType(ctx context.Context, feeBuilder *exchange.FeeBuilder) (float64, error)
- func (i *ItBit) GetFundingHistory(ctx context.Context) ([]exchange.FundHistory, error)
- func (i *ItBit) GetFundingHistoryForWallet(ctx context.Context, walletID string, params url.Values) (FundingRecords, error)
- func (i *ItBit) GetHistoricCandles(ctx context.Context, pair currency.Pair, a asset.Item, start, end time.Time, ...) (kline.Item, error)
- func (i *ItBit) GetHistoricCandlesExtended(ctx context.Context, pair currency.Pair, a asset.Item, start, end time.Time, ...) (kline.Item, error)
- func (i *ItBit) GetHistoricTrades(_ context.Context, _ currency.Pair, _ asset.Item, _, _ time.Time) ([]trade.Data, error)
- func (b *ItBit) GetKlines(arg interface{}) ([]*kline.Kline, error)
- func (i *ItBit) GetOrder(ctx context.Context, walletID string, params url.Values) (Order, error)
- func (i *ItBit) GetOrderHistory(ctx context.Context, req *order.GetOrdersRequest) ([]order.Detail, error)
- func (i *ItBit) GetOrderInfo(ctx context.Context, orderID string, pair currency.Pair, assetType asset.Item) (order.Detail, error)
- func (i *ItBit) GetOrderbook(ctx context.Context, currencyPair string) (OrderbookResponse, error)
- func (i *ItBit) GetOrders(ctx context.Context, walletID, symbol, status string, page, perPage int64) ([]Order, error)
- func (i *ItBit) GetRecentTrades(ctx context.Context, p currency.Pair, assetType asset.Item) ([]trade.Data, error)
- func (i *ItBit) GetTicker(ctx context.Context, currencyPair string) (Ticker, error)
- func (i *ItBit) GetTradeHistory(ctx context.Context, currencyPair, tradeID string) (Trades, error)
- func (i *ItBit) GetWallet(ctx context.Context, walletID string) (Wallet, error)
- func (i *ItBit) GetWalletBalance(ctx context.Context, walletID, currency string) (Balance, error)
- func (i *ItBit) GetWalletTrades(ctx context.Context, walletID string, params url.Values) (Records, error)
- func (i *ItBit) GetWallets(ctx context.Context, params url.Values) ([]Wallet, error)
- func (i *ItBit) GetWithdrawalsHistory(ctx context.Context, c currency.Code) (resp []exchange.WithdrawalHistory, err error)
- func (i *ItBit) ModifyOrder(ctx context.Context, action *order.Modify) (order.Modify, error)
- func (i *ItBit) PlaceOrder(ctx context.Context, walletID, side, orderType, currency string, ...) (Order, error)
- func (i *ItBit) Run()
- func (i *ItBit) SendAuthenticatedHTTPRequest(ctx context.Context, ep exchange.URL, method, path string, ...) error
- func (i *ItBit) SendHTTPRequest(ctx context.Context, ep exchange.URL, path string, result interface{}) error
- func (i *ItBit) SetDefaults()
- func (i *ItBit) Setup(exch *config.Exchange) error
- func (i *ItBit) Start(wg *sync.WaitGroup) error
- func (i *ItBit) SubmitOrder(ctx context.Context, s *order.Submit) (order.SubmitResponse, error)
- func (i *ItBit) UpdateAccountInfo(ctx context.Context, assetType asset.Item) (account.Holdings, error)
- func (i *ItBit) UpdateOrderbook(ctx context.Context, p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
- func (i *ItBit) UpdateTicker(ctx context.Context, p currency.Pair, a asset.Item) (*ticker.Price, error)
- func (i *ItBit) UpdateTickers(ctx context.Context, a asset.Item) error
- func (i *ItBit) UpdateTradablePairs(ctx context.Context, forceUpdate bool) error
- func (i *ItBit) ValidateCredentials(ctx context.Context, assetType asset.Item) error
- func (i *ItBit) WalletTransfer(ctx context.Context, walletID, sourceWallet, destWallet string, amount float64, ...) (WalletTransfer, error)
- func (i *ItBit) WithdrawCryptocurrencyFunds(_ context.Context, _ *withdraw.Request) (*withdraw.ExchangeResponse, error)
- func (i *ItBit) WithdrawFiatFunds(_ context.Context, _ *withdraw.Request) (*withdraw.ExchangeResponse, error)
- func (i *ItBit) WithdrawFiatFundsToInternationalBank(_ context.Context, _ *withdraw.Request) (*withdraw.ExchangeResponse, error)
- type Order
- type OrderbookResponse
- type Records
- type Ticker
- type TradeHistory
- type Trades
- type Wallet
- type WalletTransfer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Balance ¶
type Balance struct {
Currency string `json:"currency"`
AvailableBalance float64 `json:"availableBalance,string"`
TotalBalance float64 `json:"totalBalance,string"`
Description string `json:"description"`
}
Balance is a sub type holding balance information
type CryptoCurrencyDeposit ¶
type CryptoCurrencyDeposit struct {
ID int `json:"id"`
WalletID string `json:"walletID"`
DepositAddress string `json:"depositAddress"`
Metadata interface{} `json:"metadata"`
Description string `json:"description"`
}
CryptoCurrencyDeposit holds information about a new wallet
type FundHistory ¶
type FundHistory struct {
BankName string `json:"bankName"`
WithdrawalID int64 `json:"withdrawalId"`
HoldingPeriodCompletionDate string `json:"holdingPeriodCompletionDate"`
DestinationAddress string `json:"destinationAddress"`
TxnHash string `json:"txnHash"`
Time string `json:"time"`
Currency string `json:"currency"`
TransactionType string `json:"transactionType"`
Amount float64 `json:"amount,string"`
WalletName string `json:"walletName"`
Status string `json:"status"`
}
FundHistory stores historic funding transactions
type FundingRecords ¶
type FundingRecords struct {
TotalNumberOfRecords int `json:"totalNumberOfRecords,string"`
CurrentPageNumber int `json:"currentPageNumber,string"`
LatestExecutedID int64 `json:"latestExecutionId,string"`
RecordsPerPage int `json:"recordsPerPage,string"`
FundingHistory []FundHistory `json:"fundingHistory"`
Description string `json:"description"`
}
FundingRecords embodies records of fund history information
type GeneralReturn ¶
type GeneralReturn struct {
Code int `json:"code"`
Description string `json:"description"`
RequestID string `json:"requestId"`
}
GeneralReturn is a generalized return type to capture any errors
type ItBit ¶
ItBit is the overarching type across the ItBit package
func (*ItBit) CancelAllOrders ¶
func (i *ItBit) CancelAllOrders(ctx context.Context, orderCancellation *order.Cancel) (order.CancelAllResponse, error)
CancelAllOrders cancels all orders associated with a currency pair
func (*ItBit) CancelBatchOrders ¶
func (i *ItBit) CancelBatchOrders(ctx context.Context, o []order.Cancel) (order.CancelBatchResponse, error)
CancelBatchOrders cancels an orders by their corresponding ID numbers
func (*ItBit) CancelExistingOrder ¶
CancelExistingOrder cancels and open order. *This is not a guarantee that the order has been cancelled!*
func (*ItBit) CancelOrder ¶
CancelOrder cancels an order by its corresponding ID number
func (*ItBit) CreateWallet ¶
CreateWallet creates a new wallet with a specified name.
func (*ItBit) FetchAccountInfo ¶
func (i *ItBit) FetchAccountInfo(ctx context.Context, assetType asset.Item) (account.Holdings, error)
FetchAccountInfo retrieves balances for all enabled currencies
func (*ItBit) FetchOrderbook ¶
func (i *ItBit) FetchOrderbook(ctx context.Context, p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
FetchOrderbook returns orderbook base on the currency pair
func (*ItBit) FetchTicker ¶
func (i *ItBit) FetchTicker(ctx context.Context, p currency.Pair, assetType asset.Item) (*ticker.Price, error)
FetchTicker returns the ticker for a currency pair
func (*ItBit) FetchTradablePairs ¶
FetchTradablePairs returns a list of the exchanges tradable pairs
func (*ItBit) GetActiveOrders ¶
func (i *ItBit) GetActiveOrders(ctx context.Context, req *order.GetOrdersRequest) ([]order.Detail, error)
GetActiveOrders retrieves any orders that are active/open
func (*ItBit) GetCryptoDepositAddress ¶
func (i *ItBit) GetCryptoDepositAddress(ctx context.Context, walletID, currency string) (CryptoCurrencyDeposit, error)
GetCryptoDepositAddress returns a deposit address to send cryptocurrency to.
func (*ItBit) GetDefaultConfig ¶
GetDefaultConfig returns a default exchange config
func (*ItBit) GetDepositAddress ¶
func (i *ItBit) GetDepositAddress(_ context.Context, _ currency.Code, _, _ string) (*deposit.Address, error)
GetDepositAddress returns a deposit address for a specified currency NOTE: This has not been implemented due to the fact you need to generate a a specific wallet ID and they restrict the amount of deposit address you can request limiting them to 2.
func (*ItBit) GetFee ¶
func (i *ItBit) GetFee(feeBuilder *exchange.FeeBuilder) (float64, error)
GetFee returns an estimate of fee based on type of transaction
func (*ItBit) GetFeeByType ¶
GetFeeByType returns an estimate of fee based on type of transaction
func (*ItBit) GetFundingHistory ¶
GetFundingHistory returns funding history, deposits and withdrawals
func (*ItBit) GetFundingHistoryForWallet ¶
func (i *ItBit) GetFundingHistoryForWallet(ctx context.Context, walletID string, params url.Values) (FundingRecords, error)
GetFundingHistoryForWallet returns all funding history for a specified wallet.
func (*ItBit) GetHistoricCandles ¶
func (i *ItBit) GetHistoricCandles(ctx context.Context, pair currency.Pair, a asset.Item, start, end time.Time, interval kline.Interval) (kline.Item, error)
GetHistoricCandles returns candles between a time period for a set time interval
func (*ItBit) GetHistoricCandlesExtended ¶
func (i *ItBit) GetHistoricCandlesExtended(ctx context.Context, pair currency.Pair, a asset.Item, start, end time.Time, interval kline.Interval) (kline.Item, error)
GetHistoricCandlesExtended returns candles between a time period for a set time interval
func (*ItBit) GetHistoricTrades ¶
func (i *ItBit) GetHistoricTrades(_ context.Context, _ currency.Pair, _ asset.Item, _, _ time.Time) ([]trade.Data, error)
GetHistoricTrades returns historic trade data within the timeframe provided
func (*ItBit) GetOrderHistory ¶
func (i *ItBit) GetOrderHistory(ctx context.Context, req *order.GetOrdersRequest) ([]order.Detail, error)
GetOrderHistory retrieves account order information Can Limit response to specific order status
func (*ItBit) GetOrderInfo ¶
func (i *ItBit) GetOrderInfo(ctx context.Context, orderID string, pair currency.Pair, assetType asset.Item) (order.Detail, error)
GetOrderInfo returns order information based on order ID
func (*ItBit) GetOrderbook ¶
GetOrderbook returns full order book for the specified market. currencyPair - example "XBTUSD" "XBTSGD" "XBTEUR"
func (*ItBit) GetOrders ¶
func (i *ItBit) GetOrders(ctx context.Context, walletID, symbol, status string, page, perPage int64) ([]Order, error)
GetOrders returns active orders for itBit perPage defaults to & has a limit of 50
func (*ItBit) GetRecentTrades ¶
func (i *ItBit) 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 (*ItBit) GetTicker ¶
GetTicker returns ticker info for a specified market. currencyPair - example "XBTUSD" "XBTSGD" "XBTEUR"
func (*ItBit) GetTradeHistory ¶
GetTradeHistory returns recent trades for a specified market.
currencyPair - example "XBTUSD" "XBTSGD" "XBTEUR" timestamp - matchNumber, only executions after this will be returned
func (*ItBit) GetWalletBalance ¶
GetWalletBalance returns balance information for a specific currency in a wallet.
func (*ItBit) GetWalletTrades ¶
func (i *ItBit) GetWalletTrades(ctx context.Context, walletID string, params url.Values) (Records, error)
GetWalletTrades returns all trades for a specified wallet.
func (*ItBit) GetWallets ¶
GetWallets returns information about all wallets associated with the account.
params --
page - [optional] page to return example 1. default 1 perPage - [optional] items per page example 50, default 50 max 50
func (*ItBit) GetWithdrawalsHistory ¶
func (i *ItBit) GetWithdrawalsHistory(ctx context.Context, c currency.Code) (resp []exchange.WithdrawalHistory, err error)
GetWithdrawalsHistory returns previous withdrawals data
func (*ItBit) ModifyOrder ¶
ModifyOrder will allow of changing orderbook placement and limit to market conversion
func (*ItBit) PlaceOrder ¶
func (i *ItBit) PlaceOrder(ctx context.Context, walletID, side, orderType, currency string, amount, price float64, instrument, clientRef string) (Order, error)
PlaceOrder places a new order
func (*ItBit) SendAuthenticatedHTTPRequest ¶
func (i *ItBit) SendAuthenticatedHTTPRequest(ctx context.Context, ep exchange.URL, method, path string, params map[string]interface{}, result interface{}) error
SendAuthenticatedHTTPRequest sends an authenticated request to itBit
func (*ItBit) SendHTTPRequest ¶
func (i *ItBit) SendHTTPRequest(ctx context.Context, ep exchange.URL, path string, result interface{}) error
SendHTTPRequest sends an unauthenticated HTTP request
func (*ItBit) SetDefaults ¶
func (i *ItBit) SetDefaults()
SetDefaults sets the defaults for the exchange
func (*ItBit) SubmitOrder ¶
SubmitOrder submits a new order
func (*ItBit) UpdateAccountInfo ¶
func (i *ItBit) UpdateAccountInfo(ctx context.Context, assetType asset.Item) (account.Holdings, error)
UpdateAccountInfo retrieves balances for all enabled currencies
func (*ItBit) UpdateOrderbook ¶
func (i *ItBit) UpdateOrderbook(ctx context.Context, p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
UpdateOrderbook updates and returns the orderbook for a currency pair
func (*ItBit) UpdateTicker ¶
func (i *ItBit) UpdateTicker(ctx context.Context, p currency.Pair, a asset.Item) (*ticker.Price, error)
UpdateTicker updates and returns the ticker for a currency pair
func (*ItBit) UpdateTickers ¶
UpdateTickers updates the ticker for all currency pairs of a given asset type
func (*ItBit) UpdateTradablePairs ¶
UpdateTradablePairs updates the exchanges available pairs and stores them in the exchanges config
func (*ItBit) ValidateCredentials ¶
ValidateCredentials validates current credentials used for wrapper functionality
func (*ItBit) WalletTransfer ¶
func (i *ItBit) WalletTransfer(ctx context.Context, walletID, sourceWallet, destWallet string, amount float64, currency string) (WalletTransfer, error)
WalletTransfer transfers funds between wallets.
func (*ItBit) WithdrawCryptocurrencyFunds ¶
func (i *ItBit) WithdrawCryptocurrencyFunds(_ context.Context, _ *withdraw.Request) (*withdraw.ExchangeResponse, error)
WithdrawCryptocurrencyFunds returns a withdrawal ID when a withdrawal is submitted
func (*ItBit) WithdrawFiatFunds ¶
func (i *ItBit) WithdrawFiatFunds(_ context.Context, _ *withdraw.Request) (*withdraw.ExchangeResponse, error)
WithdrawFiatFunds returns a withdrawal ID when a withdrawal is submitted
func (*ItBit) WithdrawFiatFundsToInternationalBank ¶
func (i *ItBit) WithdrawFiatFundsToInternationalBank(_ context.Context, _ *withdraw.Request) (*withdraw.ExchangeResponse, error)
WithdrawFiatFundsToInternationalBank returns a withdrawal ID when a withdrawal is submitted
type Order ¶
type Order struct {
ID string `json:"id"`
WalletID string `json:"walletId"`
Side string `json:"side"`
Instrument string `json:"instrument"`
Type string `json:"type"`
Currency string `json:"currency"`
Amount float64 `json:"amount,string"`
Price float64 `json:"price,string"`
AmountFilled float64 `json:"amountFilled,string"`
VolumeWeightedAveragePrice float64 `json:"volumeWeightedAveragePrice,string"`
CreatedTime string `json:"createdTime"`
Status string `json:"Status"`
Metadata interface{} `json:"metadata"`
ClientOrderIdentifier string `json:"clientOrderIdentifier"`
Description string `json:"description"`
}
Order holds order information
type OrderbookResponse ¶
OrderbookResponse contains multi-arrayed strings of bid and ask side information
type Records ¶
type Records struct {
TotalNumberOfRecords int `json:"totalNumberOfRecords,string"`
CurrentPageNumber int `json:"currentPageNumber,string"`
LatestExecutedID int64 `json:"latestExecutionId,string"`
RecordsPerPage int `json:"recordsPerPage,string"`
TradingHistory []TradeHistory `json:"tradingHistory"`
Description string `json:"description"`
}
Records embodies records of trade history information
type Ticker ¶
type Ticker struct {
Pair string `json:"pair"`
Bid float64 `json:"bid,string"`
BidAmt float64 `json:"bidAmt,string"`
Ask float64 `json:"ask,string"`
AskAmt float64 `json:"askAmt,string"`
LastPrice float64 `json:"lastPrice,string"`
LastAmt float64 `json:"lastAmt,string"`
Volume24h float64 `json:"volume24h,string"`
VolumeToday float64 `json:"volumeToday,string"`
High24h float64 `json:"high24h,string"`
Low24h float64 `json:"low24h,string"`
HighToday float64 `json:"highToday,string"`
LowToday float64 `json:"lowToday,string"`
OpenToday float64 `json:"openToday,string"`
VwapToday float64 `json:"vwapToday,string"`
Vwap24h float64 `json:"vwap24h,string"`
ServertimeUTC time.Time `json:"serverTimeUTC"`
}
Ticker holds returned ticker information
type TradeHistory ¶
type TradeHistory struct {
OrderID string `json:"orderId"`
Timestamp string `json:"timestamp"`
Instrument string `json:"instrument"`
Direction string `json:"direction"`
CurrencyOne string `json:"currency1"`
CurrencyOneAmount float64 `json:"currency1Amount,string"`
CurrencyTwo string `json:"currency2"`
CurrencyTwoAmount float64 `json:"currency2Amount"`
Rate float64 `json:"rate,string"`
CommissionPaid float64 `json:"commissionPaid,string"`
CommissionCurrency string `json:"commissionCurrency"`
RebatesApplied float64 `json:"rebatesApplied,string"`
RebateCurrency string `json:"rebateCurrency"`
}
TradeHistory stores historic trade values
type Trades ¶
type Trades struct {
RecentTrades []struct {
Timestamp time.Time `json:"timestamp"`
MatchNumber string `json:"matchNumber"`
Price float64 `json:"price,string"`
Amount float64 `json:"amount,string"`
} `json:"recentTrades"`
}
Trades holds recent trades with associated information
type Wallet ¶
type Wallet struct {
ID string `json:"id"`
UserID string `json:"userId"`
Name string `json:"name"`
Balances []Balance `json:"balances"`
Description string `json:"description"`
}
Wallet contains specific wallet information
type WalletTransfer ¶
type WalletTransfer struct {
SourceWalletID string `json:"sourceWalletId"`
DestinationWalletID string `json:"destinationWalletId"`
Amount float64 `json:"amount,string"`
CurrencyCode string `json:"currencyCode"`
Description string `json:"description"`
}
WalletTransfer holds wallet transfer information