Documentation ¶
Index ¶
- Variables
- type AuthResponse
- type CancelledOrder
- type EXMO
- func (e *EXMO) CancelAllOrders(_ *order.Cancel) (order.CancelAllResponse, error)
- func (e *EXMO) CancelExistingOrder(orderID int64) error
- func (e *EXMO) CancelOrder(order *order.Cancel) error
- func (e *EXMO) CreateOrder(pair, orderType string, price, amount float64) (int64, error)
- func (e *EXMO) ExcodeCreate(currency string, amount float64) (ExcodeCreate, error)
- func (e *EXMO) ExcodeLoad(excode string) (ExcodeLoad, error)
- func (e *EXMO) FetchAccountInfo() (account.Holdings, error)
- func (e *EXMO) FetchOrderbook(p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
- func (e *EXMO) FetchTicker(p currency.Pair, assetType asset.Item) (*ticker.Price, error)
- func (e *EXMO) FetchTradablePairs(asset asset.Item) ([]string, error)
- func (e *EXMO) GetActiveOrders(req *order.GetOrdersRequest) ([]order.Detail, error)
- func (e *EXMO) GetCancelledOrders(offset, limit string) ([]CancelledOrder, error)
- func (e *EXMO) GetCryptoDepositAddress() (map[string]string, error)
- func (e *EXMO) GetCurrency() ([]string, error)
- func (e *EXMO) GetDefaultConfig() (*config.ExchangeConfig, error)
- func (e *EXMO) GetDepositAddress(cryptocurrency currency.Code, _ string) (string, error)
- func (e *EXMO) GetExchangeHistory(p currency.Pair, assetType asset.Item, timestampStart, timestampEnd time.Time) ([]exchange.TradeHistory, error)
- func (e *EXMO) GetFee(feeBuilder *exchange.FeeBuilder) (float64, error)
- func (e *EXMO) GetFeeByType(feeBuilder *exchange.FeeBuilder) (float64, error)
- func (e *EXMO) GetFundingHistory() ([]exchange.FundHistory, error)
- func (e *EXMO) GetHistoricCandles(pair currency.Pair, a asset.Item, start, end time.Time, ...) (kline.Item, error)
- func (e *EXMO) GetHistoricCandlesExtended(pair currency.Pair, a asset.Item, start, end time.Time, ...) (kline.Item, error)
- func (e *EXMO) GetOpenOrders() (map[string]OpenOrders, error)
- func (e *EXMO) GetOrderHistory(req *order.GetOrdersRequest) ([]order.Detail, error)
- func (b *EXMO) GetOrderHistoryById(getOrdersRequest string) ([]order.Detail, error)
- func (e *EXMO) GetOrderInfo(orderID string) (order.Detail, error)
- func (e *EXMO) GetOrderTrades(orderID int64) (OrderTrades, error)
- func (e *EXMO) GetOrderbook(symbol string) (map[string]Orderbook, error)
- func (e *EXMO) GetPairSettings() (map[string]PairSettings, error)
- func (e *EXMO) GetRequiredAmount(pair string, amount float64) (RequiredAmount, error)
- func (e *EXMO) GetTicker() (map[string]Ticker, error)
- func (e *EXMO) GetTrades(symbol string) (map[string][]Trades, error)
- func (e *EXMO) GetUserInfo() (UserInfo, error)
- func (e *EXMO) GetUserTrades(pair, offset, limit string) (map[string][]UserTrades, error)
- func (e *EXMO) GetWalletHistory(date int64) (WalletHistory, error)
- func (e *EXMO) GetWithdrawTXID(taskID int64) (string, error)
- func (e *EXMO) ModifyOrder(action *order.Modify) (string, error)
- func (e *EXMO) Run()
- func (e *EXMO) SendAuthenticatedHTTPRequest(method, endpoint string, vals url.Values, result interface{}) error
- func (e *EXMO) SendHTTPRequest(path string, result interface{}) error
- func (e *EXMO) SetDefaults()
- func (e *EXMO) Setup(exch *config.ExchangeConfig) error
- func (e *EXMO) Start(wg *sync.WaitGroup)
- func (e *EXMO) SubmitOrder(s *order.Submit) (order.SubmitResponse, error)
- func (e *EXMO) UpdateAccountInfo() (account.Holdings, error)
- func (e *EXMO) UpdateOrderbook(p currency.Pair, assetType asset.Item) (*orderbook.Base, error)
- func (e *EXMO) UpdateTicker(p currency.Pair, assetType asset.Item) (*ticker.Price, error)
- func (e *EXMO) UpdateTradablePairs(forceUpdate bool) error
- func (e *EXMO) ValidateCredentials() error
- func (e *EXMO) WithdrawCryptocurrency(currency, address, invoice string, amount float64) (int64, error)
- func (e *EXMO) WithdrawCryptocurrencyFunds(withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
- func (e *EXMO) WithdrawFiatFunds(withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
- func (e *EXMO) WithdrawFiatFundsToInternationalBank(withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
- type ExcodeCreate
- type ExcodeLoad
- type OpenOrders
- type OrderTrades
- type Orderbook
- type PairSettings
- type RequiredAmount
- type Ticker
- type Trades
- type UserInfo
- type UserTrades
- type WalletHistory
Constants ¶
This section is empty.
Variables ¶
var WithdrawalFees = map[currency.Code]float64{ currency.BTC: 0.0005, currency.LTC: 0.01, currency.DOGE: 1, currency.DASH: 0.01, currency.ETH: 0.01, currency.WAVES: 0.001, currency.ZEC: 0.001, currency.USDT: 5, currency.XMR: 0.05, currency.XRP: 0.02, currency.KICK: 50, currency.ETC: 0.01, currency.BCH: 0.001, currency.BTG: 0.001, currency.HBZ: 65, currency.BTCZ: 5, currency.DXT: 20, currency.STQ: 100, currency.XLM: 0.001, currency.OMG: 0.5, currency.TRX: 1, currency.ADA: 1, currency.INK: 50, currency.ZRX: 1, currency.GNT: 1, }
WithdrawalFees the large list of predefined withdrawal fees Prone to change
Functions ¶
This section is empty.
Types ¶
type AuthResponse ¶
AuthResponse stores the auth response
type CancelledOrder ¶
type CancelledOrder struct { Date int64 `json:"date"` OrderID int64 `json:"order_id,string"` Type string `json:"type"` Pair string `json:"pair"` Price float64 `json:"price,string"` Quantity float64 `json:"quantity,string"` Amount float64 `json:"amount,string"` }
CancelledOrder stores cancelled order data
type EXMO ¶
EXMO exchange struct
func (*EXMO) CancelAllOrders ¶
CancelAllOrders cancels all orders associated with a currency pair
func (*EXMO) CancelExistingOrder ¶
CancelExistingOrder cancels an order by the orderID
func (*EXMO) CancelOrder ¶
CancelOrder cancels an order by its corresponding ID number
func (*EXMO) CreateOrder ¶
CreateOrder creates an order Params: pair, quantity, price and type Type can be buy, sell, market_buy, market_sell, market_buy_total and market_sell_total
func (*EXMO) ExcodeCreate ¶
func (e *EXMO) ExcodeCreate(currency string, amount float64) (ExcodeCreate, error)
ExcodeCreate creates an EXMO coupon
func (*EXMO) ExcodeLoad ¶
func (e *EXMO) ExcodeLoad(excode string) (ExcodeLoad, error)
ExcodeLoad loads an EXMO coupon
func (*EXMO) FetchAccountInfo ¶
FetchAccountInfo retrieves balances for all enabled currencies
func (*EXMO) FetchOrderbook ¶
FetchOrderbook returns the orderbook for a currency pair
func (*EXMO) FetchTicker ¶
FetchTicker returns the ticker for a currency pair
func (*EXMO) FetchTradablePairs ¶
FetchTradablePairs returns a list of the exchanges tradable pairs
func (*EXMO) GetActiveOrders ¶
GetActiveOrders retrieves any orders that are active/open
func (*EXMO) GetCancelledOrders ¶
func (e *EXMO) GetCancelledOrders(offset, limit string) ([]CancelledOrder, error)
GetCancelledOrders returns a list of cancelled orders
func (*EXMO) GetCryptoDepositAddress ¶
GetCryptoDepositAddress returns a list of addresses for cryptocurrency deposits
func (*EXMO) GetCurrency ¶
GetCurrency returns a list of currencies
func (*EXMO) GetDefaultConfig ¶
func (e *EXMO) GetDefaultConfig() (*config.ExchangeConfig, error)
GetDefaultConfig returns a default exchange config
func (*EXMO) GetDepositAddress ¶
GetDepositAddress returns a deposit address for a specified currency
func (*EXMO) GetExchangeHistory ¶
func (e *EXMO) GetExchangeHistory(p currency.Pair, assetType asset.Item, timestampStart, timestampEnd time.Time) ([]exchange.TradeHistory, error)
GetExchangeHistory returns historic trade data within the timeframe provided.
func (*EXMO) GetFee ¶
func (e *EXMO) GetFee(feeBuilder *exchange.FeeBuilder) (float64, error)
GetFee returns an estimate of fee based on type of transaction
func (*EXMO) GetFeeByType ¶
func (e *EXMO) GetFeeByType(feeBuilder *exchange.FeeBuilder) (float64, error)
GetFeeByType returns an estimate of fee based on type of transaction
func (*EXMO) GetFundingHistory ¶
func (e *EXMO) GetFundingHistory() ([]exchange.FundHistory, error)
GetFundingHistory returns funding history, deposits and withdrawals
func (*EXMO) GetHistoricCandles ¶
func (e *EXMO) GetHistoricCandles(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 (*EXMO) GetHistoricCandlesExtended ¶
func (e *EXMO) GetHistoricCandlesExtended(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 (*EXMO) GetOpenOrders ¶
func (e *EXMO) GetOpenOrders() (map[string]OpenOrders, error)
GetOpenOrders returns the users open orders
func (*EXMO) GetOrderHistory ¶
GetOrderHistory retrieves account order information Can Limit response to specific order status
func (*EXMO) GetOrderHistoryById ¶
GetOrderHistoryById retrieves specified closed order information Can Limit response to specific order status
func (*EXMO) GetOrderInfo ¶
GetOrderInfo returns information on a current open order
func (*EXMO) GetOrderTrades ¶
func (e *EXMO) GetOrderTrades(orderID int64) (OrderTrades, error)
GetOrderTrades returns a history of order trade details for the specific orderID
func (*EXMO) GetOrderbook ¶
GetOrderbook returns the orderbook for a symbol or symbols
func (*EXMO) GetPairSettings ¶
func (e *EXMO) GetPairSettings() (map[string]PairSettings, error)
GetPairSettings returns the pair settings for a symbol or symbols
func (*EXMO) GetRequiredAmount ¶
func (e *EXMO) GetRequiredAmount(pair string, amount float64) (RequiredAmount, error)
GetRequiredAmount calculates the sum of buying a certain amount of currency for the particular currency pair
func (*EXMO) GetUserInfo ¶
GetUserInfo returns the user info
func (*EXMO) GetUserTrades ¶
func (e *EXMO) GetUserTrades(pair, offset, limit string) (map[string][]UserTrades, error)
GetUserTrades returns the user trades
func (*EXMO) GetWalletHistory ¶
func (e *EXMO) GetWalletHistory(date int64) (WalletHistory, error)
GetWalletHistory returns the users deposit/withdrawal history
func (*EXMO) GetWithdrawTXID ¶
GetWithdrawTXID gets the result of a withdrawal request
func (*EXMO) ModifyOrder ¶
ModifyOrder will allow of changing orderbook placement and limit to market conversion
func (*EXMO) SendAuthenticatedHTTPRequest ¶
func (e *EXMO) SendAuthenticatedHTTPRequest(method, endpoint string, vals url.Values, result interface{}) error
SendAuthenticatedHTTPRequest sends an authenticated HTTP request
func (*EXMO) SendHTTPRequest ¶
SendHTTPRequest sends an unauthenticated HTTP request
func (*EXMO) SetDefaults ¶
func (e *EXMO) SetDefaults()
SetDefaults sets the basic defaults for exmo
func (*EXMO) Setup ¶
func (e *EXMO) Setup(exch *config.ExchangeConfig) error
Setup takes in the supplied exchange configuration details and sets params
func (*EXMO) SubmitOrder ¶
SubmitOrder submits a new order
func (*EXMO) UpdateAccountInfo ¶
UpdateAccountInfo retrieves balances for all enabled currencies for the Exmo exchange
func (*EXMO) UpdateOrderbook ¶
UpdateOrderbook updates and returns the orderbook for a currency pair
func (*EXMO) UpdateTicker ¶
UpdateTicker updates and returns the ticker for a currency pair
func (*EXMO) UpdateTradablePairs ¶
UpdateTradablePairs updates the exchanges available pairs and stores them in the exchanges config
func (*EXMO) ValidateCredentials ¶
ValidateCredentials validates current credentials used for wrapper functionality
func (*EXMO) WithdrawCryptocurrency ¶
func (e *EXMO) WithdrawCryptocurrency(currency, address, invoice string, amount float64) (int64, error)
WithdrawCryptocurrency withdraws a cryptocurrency from the exchange to the desired address NOTE: This API function is available only after request to their tech support team
func (*EXMO) WithdrawCryptocurrencyFunds ¶
func (e *EXMO) WithdrawCryptocurrencyFunds(withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
WithdrawCryptocurrencyFunds returns a withdrawal ID when a withdrawal is submitted
func (*EXMO) WithdrawFiatFunds ¶
func (e *EXMO) WithdrawFiatFunds(withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
WithdrawFiatFunds returns a withdrawal ID when a withdrawal is submitted
func (*EXMO) WithdrawFiatFundsToInternationalBank ¶
func (e *EXMO) WithdrawFiatFundsToInternationalBank(withdrawRequest *withdraw.Request) (*withdraw.ExchangeResponse, error)
WithdrawFiatFundsToInternationalBank returns a withdrawal ID when a withdrawal is submitted
type ExcodeCreate ¶
type ExcodeCreate struct { TaskID int64 `json:"task_id"` Code string `json:"code"` Amount float64 `json:"amount,string"` Currency string `json:"currency"` Balances map[string]string `json:"balances"` }
ExcodeCreate stores the excode create coupon info
type ExcodeLoad ¶
type ExcodeLoad struct { TaskID int64 `json:"task_id"` Amount float64 `json:"amount,string"` Currency string `json:"currency"` Balances map[string]string `json:"balances"` }
ExcodeLoad stores the excode load coupon info
type OpenOrders ¶
type OpenOrders struct { OrderID int64 `json:"order_id,string"` Created int64 `json:"created,string"` Type string `json:"type"` Pair string `json:"pair"` Price float64 `json:"price,string"` Quantity float64 `json:"quantity,string"` Amount float64 `json:"amount,string"` }
OpenOrders stores the order info
type OrderTrades ¶
type OrderTrades struct { Type string `json:"type"` InCurrency string `json:"in_currency"` InAmount float64 `json:"in_amount,string"` OutCurrency string `json:"out_currency"` OutAmount float64 `json:"out_amount,string"` Trades []UserTrades `json:"trades"` }
OrderTrades stores order trade information
type Orderbook ¶
type Orderbook struct { AskQuantity float64 `json:"ask_quantity,string"` AskAmount float64 `json:"ask_amount,string"` AskTop float64 `json:"ask_top,string"` BidQuantity float64 `json:"bid_quantity,string"` BidTop float64 `json:"bid_top,string"` Ask [][]string `json:"ask"` Bid [][]string `json:"bid"` }
Orderbook holds the orderbook data
type PairSettings ¶
type PairSettings struct { MinQuantity float64 `json:"min_quantity,string"` MaxQuantity float64 `json:"max_quantity,string"` MinPrice float64 `json:"min_price,string"` MaxPrice float64 `json:"max_price,string"` MaxAmount float64 `json:"max_amount,string"` MinAmount float64 `json:"min_amount,string"` }
PairSettings holds the pair settings
type RequiredAmount ¶
type RequiredAmount struct { Quantity float64 `json:"quantity,string"` Amount float64 `json:"amount,string"` AvgPrice float64 `json:"avg_price,string"` }
RequiredAmount stores the calculation for buying a certain amount of currency for a particular currency
type Ticker ¶
type Ticker struct { Buy float64 `json:"buy_price,string"` Sell float64 `json:"sell_price,string"` Last float64 `json:"last_trade,string"` High float64 `json:"high,string"` Low float64 `json:"low,string"` Average float64 `json:"average,string"` Volume float64 `json:"vol,string"` VolumeCurrent float64 `json:"vol_curr,string"` Updated int64 `json:"updated"` }
Ticker holds the ticker data
type Trades ¶
type Trades struct { TradeID int64 `json:"trade_id"` Type string `json:"string"` Quantity float64 `json:"quantity,string"` Price float64 `json:"price,string"` Amount float64 `json:"amount,string"` Date int64 `json:"date"` Pair string `json:"pair"` }
Trades holds trade data
type UserInfo ¶
type UserInfo struct { AuthResponse UID int `json:"uid"` ServerDate int `json:"server_date"` Balances map[string]string `json:"balances"` Reserved map[string]string `json:"reserved"` }
UserInfo stores the user info
type UserTrades ¶
type UserTrades struct { TradeID int64 `json:"trade_id"` Date int64 `json:"date"` Type string `json:"type"` Pair string `json:"pair"` OrderID int64 `json:"order_id"` Quantity float64 `json:"quantity"` Price float64 `json:"price"` Amount float64 `json:"amount"` }
UserTrades stores the users trade info
type WalletHistory ¶
type WalletHistory struct { Begin int64 `json:"begin,string"` End int64 `json:"end,string"` History []struct { Timestamp int64 `json:"dt"` Type string `json:"string"` Currency string `json:"curr"` Status string `json:"status"` Provider string `json:"provider"` Amount float64 `json:"amount,string"` Account string `json:"account,string"` } }
WalletHistory stores the users wallet history