README
¶
GoCryptoTrader package Forexprovider

This forexprovider package is part of the GoCryptoTrader codebase.
This is still in active development
You can track ideas, planned features and what's in progress on this Trello board: https://trello.com/b/ZAhMhpOy/gocryptotrader.
Join our slack to discuss all things related to GoCryptoTrader! GoCryptoTrader Slack
Current Features for forexprovider
- This package enforces standard variables and methods for the foreign exchange providers.
Please click GoDocs chevron above to view current GoDoc information for this package
Contribution
Please feel free to submit any pull requests or suggest any desired features to be added.
When submitting a PR, please abide by our coding guidelines:
- Code must adhere to the official Go formatting guidelines (i.e. uses gofmt).
- Code must be documented adhering to the official Go commentary guidelines.
- Code must adhere to our coding style.
- Pull requests need to be based on and opened against the
master
branch.
Donations

If this framework helped you in any way, or you would like to support the developers working on it, please donate Bitcoin to:
bc1qk0jareu4jytc0cfrhr5wgshsq8282awpavfahc
Documentation
¶
Index ¶
Constants ¶
const DefaultTimeOut = time.Second * 15
DefaultTimeOut is the default timeout for foreign exchange providers
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Base ¶
type Base struct {
Settings `json:"settings"`
}
Base enforces standard variables across the provider packages
func (*Base) IsPrimaryProvider ¶
IsPrimaryProvider returns true if primary provider
type FXHandler ¶
type FXHandler struct { Primary Provider Support []Provider // contains filtered or unexported fields }
FXHandler defines a full suite of FX data providers with failure backup with unsupported currency shunt procedure
type IFXProvider ¶
type IFXProvider interface { Setup(config Settings) error GetRates(baseCurrency, symbols string) (map[string]float64, error) GetName() string IsEnabled() bool IsPrimaryProvider() bool GetSupportedCurrencies() ([]string, error) }
IFXProvider enforces standard functions for all foreign exchange providers supported in GoCryptoTrader
type Provider ¶
type Provider struct { Provider IFXProvider SupportedCurrencies []string }
Provider defines a singular foreign exchange provider with its supported currencies to cross reference request currencies and if not supported shunt request traffic to and from other providers so that we can maintain full currency list integration
func (Provider) CheckCurrencies ¶
CheckCurrencies cross references supplied currencies with exchange supported currencies, if there are any currencies not supported it returns a list to pass on to the next provider
type Settings ¶
type Settings struct { Name string `json:"name"` Enabled bool `json:"enabled"` Verbose bool `json:"verbose"` RESTPollingDelay time.Duration `json:"restPollingDelay"` APIKey string `json:"apiKey"` APIKeyLvl int `json:"apiKeyLvl"` PrimaryProvider bool `json:"primaryProvider"` }
Settings enforces standard variables across the provider packages