Updated documentation tool (#155)

* Updated documentation tool
Added templates
Updated documentation using tool

* Fixed incorrect version in web README

* Added new templates to tool.
Updated documents in templates across the code base.
Used tool to regenerate documentation.
This commit is contained in:
Ryan O'Hara-Reid
2018-07-19 16:02:24 +10:00
committed by Adrian Gallagher
parent aaf9f52a70
commit 3b8591bcc8
148 changed files with 8201 additions and 477 deletions

View File

@@ -0,0 +1,23 @@
{{define "common" -}}
{{template "header" .}}
## Current Features for {{.Name}}
#### This package collates basic broad functions that are used throughout this codebase.
+ Coding example
```go
import "github.com/thrasher-/gocryptotrader/common"
testString := "aAaAa"
upper := common.StringToUpper(testString)
// upper == "AAAAA"
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,10 +1,10 @@
{{define "exchanges anx" -}}
{{define "communications base" -}}
{{template "header" .}}
## ANX Exchange
## Base Communications package
### Current Features
+ Initial generation
+ Used to enforce standard variables and methods across the communication packages
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}

View File

@@ -0,0 +1,26 @@
{{define "communications comms" -}}
{{template "header" .}}
## Communications package
### What is the Communications package?
+ This package allows for the communication of events/data that occurs in the
to be exported out to a defined communication medium
### Current Features
+ Slack bot support
+ SMSGlobal instant bulk messaging
+ SMTP messaging
+ Telegram bot support
### How to enable example
+ In your config.json enable each individual communications package you desire
+ Please view the individual readme documentation inside the specific package
for more details
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,60 @@
{{define "communications slack" -}}
{{template "header" .}}
## Slack Communications package
### What is Slack?
+ Slack is a code-centric collaboration hub that allows users to connect via an
app and share different types of data
+ Please visit: [Slack](https://slack.com/) for more information and account setup
### Current Features
+ Basic communication to your slack channel information includes:
- Working status of bot
- Recent ANX ticker
- Current ANX orderbook
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-communications-via-config-example)
+ Individual package example below:
```go
import (
"github.com/thrasher-/gocryptotrader/communications/slack"
"github.com/thrasher-/gocryptotrader/config"
)
s := new(slack.Slack)
// Define slack configuration
commsConfig := config.CommunicationsConfig{SlackConfig: config.SlackConfig{
Name: "Slack",
Enabled: true,
Verbose: false,
TargetChannel: "targetChan",
VerificationToken: "slackGeneratedToken",
}}
s.Setup(commsConfig)
err := s.Connect
// Handle error
```
Once the bot has started you can interact with the bot using these commands
via Slack:
```
!status - Displays current working status of bot
!help - Displays help text
!settings - Displays current settings
!ticker - Displays recent ANX ticker
!portfolio - Displays portfolio data
!orderbook - Displays current ANX orderbook
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,45 @@
{{define "communications smsglobal" -}}
{{template "header" .}}
## SMSGlobal Communications package
### What is SMSGlobal?
+ SMSGlobal allows bulk sending of messages via their API
+ Please visit: [SMSGlobal](https://www.smsglobal.com/) for more information and account setup
### Current Features
+ Sending of events to a list of recipients
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-communications-via-config-example)
+ Individual package example below:
```go
import (
"github.com/thrasher-/gocryptotrader/communications/smsglobal"
"github.com/thrasher-/gocryptotrader/config"
)
s := new(smsglobal.SMSGlobal)
// Define SMSGlobal configuration
commsConfig := config.CommunicationsConfig{SMSGlobalConfig: config.SMSGlobalConfig{
Name: "SMSGlobal",
Enabled: true,
Verbose: false,
Username: "username",
Password: "password",
Contacts: []config.SMSContact{}
}}
s.Setup(commsConfig)
err := s.Connect
// Handle error
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,47 @@
{{define "communications smtp" -}}
{{template "header" .}}
## SMSGlobal Communications package
### What is SMTP?
+ Simple Mail Transfer Protocol (SMTP) is an Internet standard for electronic mail (email) transmission
+ Please visit: [Wikipedia](https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol) for more information
### Current Features
+ Sending of events to a list of recipients via email
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-communications-via-config-example)
+ Individual package example below:
```go
import (
"github.com/thrasher-/gocryptotrader/communications/smtpservice"
"github.com/thrasher-/gocryptotrader/config"
)
s := new(smtpservice.SMTPservice)
// Define SMTPservice configuration
commsConfig := config.CommunicationsConfig{SMTPservice: config.SMTPConfig{
Name: "SMTPservice",
Enabled: true,
Verbose: false,
Host: "host",
Port: "port",
AccountName: "name",
AccountPassword: "password",
RecipientList: "something@something.com,somethingelse@something.com"
}}
s.Setup(commsConfig)
err := s.Connect
// Handle error
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,60 @@
{{define "communications telegram" -}}
{{template "header" .}}
## Telegram Communications package
### What is telegram?
+ Telegram is a cloud-based instant messaging and voice over IP service
developed by Telegram Messenger LLP
+ Please visit: [Telegram](https://telegram.org/) for more information
### Current Features
+ Creation of bot that can retrieve
- Bot status
- ANX orderbook
- ANX ticker
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-communications-via-config-example)
+ Individual package example below:
```go
import (
"github.com/thrasher-/gocryptotrader/communications/telegram"
"github.com/thrasher-/gocryptotrader/config"
)
t := new(telegram.Telegram)
// Define Telegram configuration
commsConfig := config.CommunicationsConfig{TelegramConfig: config.TelegramConfig{
Name: "Telegram",
Enabled: true,
Verbose: false,
VerificationToken: "token",
}}
t.Setup(commsConfig)
err := t.Connect
// Handle error
```
+ Once the bot has started you can interact with the bot using these commands
via Telegram:
```
/start - Will authenticate your ID
/status - Displays the status of the bot
/help - Displays current command list
/settings - Displays current bot settings
/ticker - Displays current ANX ticker data
/portfolio - Displays your current portfolio
/orderbooks - Displays current orderbooks for ANX`
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,199 @@
{{define "config" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ Handling of config encryption and verification of "configuration".json data.
+ Contains configurations for:
- Exchanges for utilisation of a broad or minimal amount of enabled
exchanges [Example](#enable-exchange-via-config-example) for
enabling an exchange.
- Bank accounts for withdrawal and depositing FIAT between exchange and
your personal accounts [Example](#enable-bank-accounts-via-config-example).
- Portfolio to monitor online and offline accounts [Example](#enable-portfolio-via-config-example).
- Currency configurations to set your foreign exchange provider accounts,
your preferred display currency, suitable FIAT currency and suitable
cryptocurrency [Example](#enable-currency-via-config-example).
- Communication for utilisation of supported communication mediums e.g.
email events direct to your personal account [Example](#enable-communications-via-config-example).
# Config Examples
#### Basic examples for enabling features on the GoCryptoTrader platform
+ Linux example for quickly creating and testing configuration file
```sh
cd ~/go/src/github.com/thrasher-/gocryptotrader
cp config_example.json config.json
# Test config
go build
./gocryptotrader
```
+ or custom config, can also pass in absolute path to "configuration".json file.
```sh
cd ~/go/src/github.com/thrasher-/gocryptotrader
cp config_example.json custom.json
# Test config
go build
./gocryptotrader -config custom.json
```
## Enable Exchange Via Config Example
+ To enable or disable an exchange via config proceed through the
"configuration".json file to exchanges and to the supported exchange e.g see
below. "Enabled" set to true or false will enable and disable the exchange,
if you set "APIKey" && "APISecret" you must set "AuthenticatedAPISupport" to
true or the bot will not be able to send authenticated http requests. If needed
you can set the exchanges bank details for depositing FIAT options. Some banks
have multiple deposit accounts for different FIAT deposit currencies.
```js
"Exchanges": [
{
"Name": "ANX",
"Enabled": true,
"Verbose": false,
"Websocket": false,
"UseSandbox": false,
"RESTPollingDelay": 10,
"HTTPTimeout": 15000000000,
"AuthenticatedAPISupport": false,
"APIKey": "Key",
"APISecret": "Secret",
"AvailablePairs": "ATENC_GBP,ATENC_NZD,BTC_AUD,BTC_SGD,LTC_BTC,START_GBP,...",
"EnabledPairs": "BTC_USD,BTC_HKD,BTC_EUR,BTC_CAD,BTC_AUD,BTC_SGD,BTC_JPY,...",
"BaseCurrencies": "USD,HKD,EUR,CAD,AUD,SGD,JPY,GBP,NZD",
"AssetTypes": "SPOT",
"SupportsAutoPairUpdates": true,
"ConfigCurrencyPairFormat": {
"Uppercase": true,
"Delimiter": "_"
},
"RequestCurrencyPairFormat": {
"Uppercase": true
},
"BankAccounts": [
{
"BankName": "",
"BankAddress": "",
"AccountName": "",
"AccountNumber": "",
"SWIFTCode": "",
"IBAN": "",
"SupportedCurrencies": "AUD,USD,EUR"
}
]
},
```
## Enable Bank Accounts Via Config Example
+ To enable bank accounts simply proceed through "configuration".json file to
"BankAccounts" and input your account information example below.
```js
"BankAccounts": [
{
"BankName": "test",
"BankAddress": "test",
"AccountName": "TestAccount",
"AccountNumber": "0234",
"SWIFTCode": "91272837",
"IBAN": "98218738671897",
"SupportedCurrencies": "USD",
"SupportedExchanges": "ANX,Kraken"
}
]
```
## Enable Portfolio Via Config Example
+ To enable the GoCryptoTrader platform to monitor your addresses please
specify, "configuration".json file example below.
```js
"PortfolioAddresses": {
"Addresses": [
{
"Address": "1JCe8z4jJVNXSjohjM4i9Hh813dLCNx2Sy",
"CoinType": "BTC",
"Balance": 53000.01310358,
"Description": ""
},
{
"Address": "3Nxwenay9Z8Lc9JBiywExpnEFiLp6Afp8v",
"CoinType": "BTC",
"Balance": 101848.28376405,
"Description": ""
}
]
```
## Enable Currency Via Config Example
+ To Enable foreign exchange providers set "Enabled" to true and add in your
account API keys example below.
```js
"ForexProviders": [
{
"Name": "CurrencyConverter",
"Enabled": true,
"Verbose": false,
"RESTPollingDelay": 600,
"APIKey": "",
"APIKeyLvl": -1,
"PrimaryProvider": true
},
]
```
+ To define the cryptocurrency you want the platform to use set them here
example below.
```js
"Cryptocurrencies": "BTC,LTC,ETH,XRP,NMC,NVC,PPC,XBT,DOGE,DASH",
```
+ To define the currency you want to everything to be valued against example
below.
```js
"FiatDisplayCurrency": "USD"
```
## Enable Communications Via Config Example
+ To set the desired platform communication medium proceed to "Communications"
in the "configuration".json file and set your account details to the preferred
comm method and add in your contact list if available.
```js
"SMSGlobal": {
"Name": "SMSGlobal",
"Enabled": false,
"Verbose": false,
"Username": "Username",
"Password": "Password",
"Contacts": [
{
"Name": "Bob",
"Number": "12345",
"Enabled": false
}
]
},
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,22 @@
{{define "currency pair" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ Provides a new data structure for a currency pair
+ Methods to manipulate, create and retrieve different parts of the currency pair
+ Example below:
```go
import "github.com/thrasher-/gocryptotrader/currency/pair"
// Create new pair
newPair := pair.NewCurrencyPair("BTC", "USD")
// Retrieve different parts of the pair
bitcoinString := newPair.GetFirstCurrency
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,14 @@
{{define "currency" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ Currency package contains a full suite of packages that provide:
- Foreign exchange data fetching for FIAT currencies
- Currency Pair generation
- Symbol mapping
- Translation between currencies that have similar strings e.g. XBT, BTC
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,21 @@
{{define "currency symbol" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ This package services the currency package by providing symbol mapping.
+ Example below:
```go
import "github.com/thrasher-/gocryptotrader/currency/symbol"
// Get the string of the symbol by the currency
chineseYen := "CNY"
symbol := symbol.GetSymbolByCurrencyName(chineseYen)
// symbol == "¥"
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -4,6 +4,16 @@
+ This package services the currency package with translation functions.
+ Example below:
```go
import "github.com/thrasher-/gocryptotrader/currency/translation"
// Is translatable
b := translation.HasTranslation("BTC")
// b == true; translation = XBT
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}

View File

@@ -1,8 +1,11 @@
{{define "config" -}}
{{define "currency forexprovider" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ This package deals with configuration utilities.
+ Currency Converter API support
+ Currency Layer support
+ Fixer.io support
+ Open Exchange Rates support
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}

View File

@@ -1,8 +1,9 @@
{{define "common" -}}
{{define "currency forexprovider base" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ This package collates basic broad functions that are used throughout this codebase.
+ 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
{{template "contributions"}}

View File

@@ -0,0 +1,40 @@
{{define "currency forexprovider currencyconverter" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ Fetches up to date curency data from [Currency Coverter API](https://free.currencyconverterapi.com/)
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-currency-via-config-example)
+ Individual package example below:
```go
import (
"github.com/thrasher-/gocryptotrader/currency/forexprovider/base"
"github.com/thrasher-/gocryptotrader/currency/forexprovider/currencyconverter"
)
c := currencyconverter.CurrencyConverter{}
// Define configuration
newSettings := base.Settings{
Name: "CurrencyConverter",
Enabled: true,
Verbose: false,
RESTPollingDelay: time.Duration,
APIKey: "key",
APIKeyLvl: "keylvl",
PrimaryProvider: true,
}
c.Setup(newSettings)
mapstringfloat, err := c.GetRates("USD", "EUR,CHY")
// Handle error
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,40 @@
{{define "currency forexprovider currencylayer" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ Fetches up to date curency data from [Currency Layer](https://currencylayer.com/)
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-currency-via-config-example)
+ Individual package example below:
```go
import (
"github.com/thrasher-/gocryptotrader/currency/forexprovider/base"
"github.com/thrasher-/gocryptotrader/currency/forexprovider/currencylayer"
)
c := currencylayer.CurrencyLayer{}
// Define configuration
newSettings := base.Settings{
Name: "CurrencyLayer",
Enabled: true,
Verbose: false,
RESTPollingDelay: time.Duration,
APIKey: "key",
APIKeyLvl: "keylvl",
PrimaryProvider: true,
}
c.Setup(newSettings)
mapstringfloat, err := c.GetRates("USD", "EUR,CHY")
// Handle error
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,40 @@
{{define "currency forexprovider fixer" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ Fetches up to date curency data from [Fixer.io](https://fixer.io/)
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-currency-via-config-example)
+ Individual package example below:
```go
import (
"github.com/thrasher-/gocryptotrader/currency/forexprovider/base"
"github.com/thrasher-/gocryptotrader/currency/forexprovider/fixer.io"
)
c := fixer.Fixer{}
// Define configuration
newSettings := base.Settings{
Name: "Fixer",
Enabled: true,
Verbose: false,
RESTPollingDelay: time.Duration,
APIKey: "key",
APIKeyLvl: "keylvl",
PrimaryProvider: true,
}
c.Setup(newSettings)
mapstringfloat, err := c.GetRates("USD", "EUR,CHY")
// Handle error
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,40 @@
{{define "currency forexprovider openexchangerates" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ Fetches up to date curency data from [Open Exchange Rates](https://openexchangerates.org/)
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-currency-via-config-example)
+ Individual package example below:
```go
import (
"github.com/thrasher-/gocryptotrader/currency/forexprovider/base"
"github.com/thrasher-/gocryptotrader/currency/forexprovider/openexchangerates"
)
c := openexchangerates.OXR{}
// Define configuration
newSettings := base.Settings{
Name: "openexchangerates",
Enabled: true,
Verbose: false,
RESTPollingDelay: time.Duration,
APIKey: "key",
APIKeyLvl: "keylvl",
PrimaryProvider: true,
}
c.Setup(newSettings)
mapstringfloat, err := c.GetRates("USD", "EUR,CHY")
// Handle error
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -13,24 +13,37 @@ import (
)
const (
commonPath = "..%s..%scommon%s"
configPath = "..%s..%sconfig%s"
currencyPath = "..%s..%scurrency%s"
currencyPairPath = "..%s..%scurrency%spair%s"
currencySymbolPath = "..%s..%scurrency%ssymbol%s"
currencyTranslationPath = "..%s..%scurrency%stranslation%s"
eventsPath = "..%s..%sevents%s"
exchangesPath = "..%s..%sexchanges%s"
exchangesNoncePath = "..%s..%sexchanges%snonce%s"
exchangesOrderbookPath = "..%s..%sexchanges%sorderbook%s"
exchangesStatsPath = "..%s..%sexchanges%sstats%s"
exchangesTickerPath = "..%s..%sexchanges%sticker%s"
portfolioPath = "..%s..%sportfolio%s"
smsglobalPath = "..%s..%ssmsglobal%s"
testdataPath = "..%s..%stestdata%s"
toolsPath = "..%s..%stools%s"
webPath = "..%s..%sweb%s"
rootPath = "..%s..%s"
commonPath = "..%s..%scommon%s"
communicationsPath = "..%s..%scommunications%s"
communicationsBasePath = "..%s..%scommunications%sbase%s"
communicationsSlackPath = "..%s..%scommunications%sslack%s"
communicationsSmsglobalPath = "..%s..%scommunications%ssmsglobal%s"
communicationsSMTPPath = "..%s..%scommunications%ssmtpservice%s"
communicationsTelegramPath = "..%s..%scommunications%stelegram%s"
configPath = "..%s..%sconfig%s"
currencyPath = "..%s..%scurrency%s"
currencyFXPath = "..%s..%scurrency%sforexprovider%s"
currencyFXBasePath = "..%s..%scurrency%sforexprovider%sbase%s"
currencyFXCurrencyConverterPath = "..%s..%scurrency%sforexprovider%scurrencyconverterapi%s"
currencyFXCurrencylayerPath = "..%s..%scurrency%sforexprovider%scurrencylayer%s"
currencyFXFixerPath = "..%s..%scurrency%sforexprovider%sfixer.io%s"
currencyFXOpenExchangeRatesPath = "..%s..%scurrency%sforexprovider%sopenexchangerates%s"
currencyPairPath = "..%s..%scurrency%spair%s"
currencySymbolPath = "..%s..%scurrency%ssymbol%s"
currencyTranslationPath = "..%s..%scurrency%stranslation%s"
eventsPath = "..%s..%sevents%s"
exchangesPath = "..%s..%sexchanges%s"
exchangesNoncePath = "..%s..%sexchanges%snonce%s"
exchangesOrderbookPath = "..%s..%sexchanges%sorderbook%s"
exchangesStatsPath = "..%s..%sexchanges%sstats%s"
exchangesTickerPath = "..%s..%sexchanges%sticker%s"
exchangesOrdersPath = "..%s..%sexchanges%sorders%s"
exchangesRequestPath = "..%s..%sexchanges%srequest%s"
portfolioPath = "..%s..%sportfolio%s"
testdataPath = "..%s..%stestdata%s"
toolsPath = "..%s..%stools%s"
webPath = "..%s..%sweb%s"
rootPath = "..%s..%s"
// exchange packages
alphapoint = "..%s..%sexchanges%salphapoint%s"
@@ -43,22 +56,22 @@ const (
bittrex = "..%s..%sexchanges%sbittrex%s"
btcc = "..%s..%sexchanges%sbtcc%s"
btcmarkets = "..%s..%sexchanges%sbtcmarkets%s"
coinbasepro = "..%s..%sexchanges%scoinbasepro%s"
coinut = "..%s..%sexchanges%scoinut%s"
exmo = "..%s..%sexchanges%sexmo%s"
coinbasepro = "..%s..%sexchanges%scoinbasepro%s"
gemini = "..%s..%sexchanges%sgemini%s"
hitbtc = "..%s..%sexchanges%shitbtc%s"
huobi = "..%s..%sexchanges%shuobi%s"
itbit = "..%s..%sexchanges%sitbit%s"
kraken = "..%s..%sexchanges%skraken%s"
lakebtc = "..%s..%sexchanges%slakebtc%s"
liqui = "..%s..%sexchanges%sliqui%s"
localbitcoins = "..%s..%sexchanges%slocalbitcoins%s"
okcoin = "..%s..%sexchanges%sokcoin%s"
okex = "..%s..%sexchanges%sokex%s"
poloniex = "..%s..%sexchanges%spoloniex%s"
wex = "..%s..%sexchanges%swex%s"
yobit = "..%s..%sexchanges%syobit%s"
liqui = "..%s..%sexchanges%sliqui%s"
contributorsList = "https://api.github.com/repos/thrasher-/gocryptotrader/contributors"
@@ -74,8 +87,6 @@ var (
tmpl *template.Template
path string
contributors []contributor
// exchanges []string{"alphapoint", "anx", "binance", "bitfinex", "bitflyer",
// "bithumb"}
)
type readme struct {
@@ -93,10 +104,8 @@ type contributor struct {
}
func main() {
flag.BoolVar(&verbose, "v", false, "-v Verbose flag prints more information to the std output")
flag.BoolVar(&replace, "r", false, "-r Replace flag generates and replaces all documentation across the code base")
flag.Parse()
fmt.Println(`
@@ -114,10 +123,14 @@ func main() {
log.Fatal("GoCryptoTrader: Exchange documentation tool GET error ", err)
}
fmt.Println("Contributor list fetched")
if err := addTemplates(); err != nil {
log.Fatal("GoCryptoTrader: Exchange documentation tool add template error ", err)
}
fmt.Println("Templates parsed")
if err := updateReadme(); err != nil {
log.Fatal("GoCryptoTrader: Exchange documentation tool update readme error ", err)
}
@@ -167,23 +180,42 @@ func updateReadme() error {
// Adds paths to different potential README.md files in the codebase
func addPaths() {
codebasePaths["common"] = fmt.Sprintf(commonPath, path, path, path)
codebasePaths["communications comms"] = fmt.Sprintf(communicationsPath, path, path, path)
codebasePaths["communications base"] = fmt.Sprintf(communicationsBasePath, path, path, path, path)
codebasePaths["communications slack"] = fmt.Sprintf(communicationsSlackPath, path, path, path, path)
codebasePaths["communications smsglobal"] = fmt.Sprintf(communicationsSmsglobalPath, path, path, path, path)
codebasePaths["communications smtp"] = fmt.Sprintf(communicationsSMTPPath, path, path, path, path)
codebasePaths["communications telegram"] = fmt.Sprintf(communicationsTelegramPath, path, path, path, path)
codebasePaths["config"] = fmt.Sprintf(configPath, path, path, path)
codebasePaths["currency"] = fmt.Sprintf(currencyPath, path, path, path)
codebasePaths["currency forexprovider"] = fmt.Sprintf(currencyFXPath, path, path, path, path)
codebasePaths["currency forexprovider base"] = fmt.Sprintf(currencyFXBasePath, path, path, path, path, path)
codebasePaths["currency forexprovider currencyconverter"] = fmt.Sprintf(currencyFXCurrencyConverterPath, path, path, path, path, path)
codebasePaths["currency forexprovider currencylayer"] = fmt.Sprintf(currencyFXCurrencylayerPath, path, path, path, path, path)
codebasePaths["currency forexprovider fixer"] = fmt.Sprintf(currencyFXFixerPath, path, path, path, path, path)
codebasePaths["currency forexprovider openexchangerates"] = fmt.Sprintf(currencyFXOpenExchangeRatesPath, path, path, path, path, path)
codebasePaths["currency pair"] = fmt.Sprintf(currencyPairPath, path, path, path, path)
codebasePaths["currency symbol"] = fmt.Sprintf(currencySymbolPath, path, path, path, path)
codebasePaths["currency translation"] = fmt.Sprintf(currencyTranslationPath, path, path, path, path)
codebasePaths["events"] = fmt.Sprintf(eventsPath, path, path, path)
codebasePaths["portfolio"] = fmt.Sprintf(portfolioPath, path, path, path)
codebasePaths["testdata"] = fmt.Sprintf(testdataPath, path, path, path)
codebasePaths["tools"] = fmt.Sprintf(toolsPath, path, path, path)
codebasePaths["web"] = fmt.Sprintf(webPath, path, path, path)
codebasePaths["root"] = fmt.Sprintf(rootPath, path, path)
codebasePaths["exchanges"] = fmt.Sprintf(exchangesPath, path, path, path)
codebasePaths["exchanges nonce"] = fmt.Sprintf(exchangesNoncePath, path, path, path, path)
codebasePaths["exchanges orderbook"] = fmt.Sprintf(exchangesOrderbookPath, path, path, path, path)
codebasePaths["exchanges stats"] = fmt.Sprintf(exchangesStatsPath, path, path, path, path)
codebasePaths["exchanges ticker"] = fmt.Sprintf(exchangesTickerPath, path, path, path, path)
codebasePaths["portfolio"] = fmt.Sprintf(portfolioPath, path, path, path)
codebasePaths["smsglobal"] = fmt.Sprintf(smsglobalPath, path, path, path)
codebasePaths["testdata"] = fmt.Sprintf(testdataPath, path, path, path)
codebasePaths["tools"] = fmt.Sprintf(toolsPath, path, path, path)
codebasePaths["web"] = fmt.Sprintf(webPath, path, path, path)
codebasePaths["root"] = fmt.Sprintf(rootPath, path, path)
codebasePaths["exchanges orders"] = fmt.Sprintf(exchangesOrdersPath, path, path, path, path)
codebasePaths["exchanges request"] = fmt.Sprintf(exchangesRequestPath, path, path, path, path)
codebasePaths["exchanges alphapoint"] = fmt.Sprintf(alphapoint, path, path, path, path)
codebasePaths["exchanges anx"] = fmt.Sprintf(anx, path, path, path, path)
@@ -260,26 +292,31 @@ func getslashFromName(packageName string) string {
return packageName
}
var globS = []string{
fmt.Sprintf("common_templates%s*", common.GetOSPathSlash()),
fmt.Sprintf("communications_templates%s*", common.GetOSPathSlash()),
fmt.Sprintf("config_templates%s*", common.GetOSPathSlash()),
fmt.Sprintf("currency_templates%s*", common.GetOSPathSlash()),
fmt.Sprintf("events_templates%s*", common.GetOSPathSlash()),
fmt.Sprintf("exchanges_templates%s*", common.GetOSPathSlash()),
fmt.Sprintf("portfolio_templates%s*", common.GetOSPathSlash()),
fmt.Sprintf("root_templates%s*", common.GetOSPathSlash()),
fmt.Sprintf("sub_templates%s*", common.GetOSPathSlash()),
fmt.Sprintf("testdata_templates%s*", common.GetOSPathSlash()),
fmt.Sprintf("tools_templates%s*", common.GetOSPathSlash()),
fmt.Sprintf("web_templates%s*", common.GetOSPathSlash()),
}
// adds all the template files
func addTemplates() error {
glob, err := template.ParseGlob(fmt.Sprintf("readme_templates%s*", path))
if err != nil {
return err
}
_, err = glob.ParseGlob(fmt.Sprintf("sub_templates%s*", path))
if err != nil {
return err
}
_, err = glob.ParseGlob(fmt.Sprintf("exchange_readme_templates%s*", path))
if err != nil {
return err
}
_, err = glob.ParseGlob(fmt.Sprintf("general_templates%s*", path))
if err != nil {
return err
}
tmpl = template.New("")
tmpl = glob
for _, s := range globS {
_, err := tmpl.ParseGlob(s)
if err != nil {
return err
}
}
return nil
}

View File

@@ -1,12 +0,0 @@
{{define "exchanges bitfinex" -}}
{{template "header" .}}
## Bitfinex Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges bitflyer" -}}
{{template "header" .}}
## Bitflyer Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges bithumb" -}}
{{template "header" .}}
## Bithumb Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges bitstamp" -}}
{{template "header" .}}
## Bitstamp Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges bittrex" -}}
{{template "header" .}}
## Bittrex Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges btcc" -}}
{{template "header" .}}
## BTCC Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges btcmarkets" -}}
{{template "header" .}}
## BTCMarkets Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges coinbasepro" -}}
{{template "header" .}}
## CoinbasePro Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges coinut" -}}
{{template "header" .}}
## Coinut Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges exmo" -}}
{{template "header" .}}
## Exmo Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges gemini" -}}
{{template "header" .}}
## Gemini Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges hitbtc" -}}
{{template "header" .}}
## HitBTC Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges huobi" -}}
{{template "header" .}}
## Huobi Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges itbit" -}}
{{template "header" .}}
## Itbit Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges kraken" -}}
{{template "header" .}}
## Kraken Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges lakebtc" -}}
{{template "header" .}}
## LakeBTC Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges liqui" -}}
{{template "header" .}}
## Liqui Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges localbitcoins" -}}
{{template "header" .}}
## LocalBitcoins Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges okcoin" -}}
{{template "header" .}}
## OKCoin Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges okex" -}}
{{template "header" .}}
## OKex Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges poloniex" -}}
{{template "header" .}}
## Poloniex Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges wex" -}}
{{template "header" .}}
## Wex Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,12 +0,0 @@
{{define "exchanges yobit" -}}
{{template "header" .}}
## Yobit Exchange
### Current Features
+ Initial generation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,10 +1,12 @@
{{define "exchanges alphapoint" -}}
{{template "header" .}}
## Alphapoint Exchange
## Alphapoint Exchange
### Current Features
+ Please visit [Alphapoint](https://www.alphapoint.com/) for more info.
+ Initial generation
### How to enable
+ Not currently configurable
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}

View File

@@ -0,0 +1,109 @@
{{define "exchanges anx" -}}
{{template "header" .}}
## ANX Exchange
### Current Features
+ REST functions
### Features not yet included
+ Long polling streaming
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var a exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "ANX" {
a = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := a.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := a.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := a.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := a.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := a.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := a.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := a.Trade(...)
if err != nil {
// Handle error
}
```
### How to do LongPolling public/private calls
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,106 @@
{{define "exchanges binance" -}}
{{template "header" .}}
## Binance Exchange
### Current Features
+ REST Support
+ Websocket Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var b exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Binance" {
b = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := b.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := b.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := b.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := b.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := b.Trade(...)
if err != nil {
// Handle error
}
```
### How to do Websocket public/private calls
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,106 @@
{{define "exchanges bitfinex" -}}
{{template "header" .}}
## Bitfinex Exchange
### Current Features
+ REST Support
+ Websocket Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var b exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Bitfinex" {
b = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := b.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := b.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := b.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := b.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := b.Trade(...)
if err != nil {
// Handle error
}
```
### How to do Websocket public/private calls
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,105 @@
{{define "exchanges bitflyer" -}}
{{template "header" .}}
## Bitflyer Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var b exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Bitflyer" {
b = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := b.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := b.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := b.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := b.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := b.Trade(...)
if err != nil {
// Handle error
}
```
### How to do Websocket public/private calls
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges bithumb" -}}
{{template "header" .}}
## Bithumb Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var b exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Bithumb" {
b = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := b.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := b.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := b.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := b.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := b.Trade(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,106 @@
{{define "exchanges bitstamp" -}}
{{template "header" .}}
## Bitstamp Exchange
### Current Features
+ REST Support
+ Websocket Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var b exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Bitstamp" {
b = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := b.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := b.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := b.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := b.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := b.Trade(...)
if err != nil {
// Handle error
}
```
### How to do Websocket public/private calls
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges bittrex" -}}
{{template "header" .}}
## Bittrex Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var b exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Bittrex" {
b = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := b.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := b.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := b.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := b.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := b.Trade(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,106 @@
{{define "exchanges btcc" -}}
{{template "header" .}}
## BTCC Exchange
### Current Features
+ REST Support
+ Websocket Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var b exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "BTCC" {
b = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := b.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := b.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := b.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := b.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := b.Trade(...)
if err != nil {
// Handle error
}
```
### How to do Websocket public/private calls
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges btcmarkets" -}}
{{template "header" .}}
## BTCMarkets Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var b exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "BTCMarkets" {
b = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := b.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := b.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := b.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := b.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := b.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := b.Trade(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,106 @@
{{define "exchanges coinbasepro" -}}
{{template "header" .}}
## CoinbasePro Exchange
### Current Features
+ REST Support
+ Websocket Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var c exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "CoinbasePro" {
c = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := c.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := c.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := c.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := c.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := c.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := c.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := c.Trade(...)
if err != nil {
// Handle error
}
```
### How to do Websocket public/private calls
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,106 @@
{{define "exchanges coinut" -}}
{{template "header" .}}
## Coinut Exchange
### Current Features
+ REST Support
+ Websocket Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var c exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Coinut" {
c = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := c.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := c.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := c.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := c.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := c.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := c.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := c.Trade(...)
if err != nil {
// Handle error
}
```
### How to do Websocket public/private calls
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,41 @@
{{define "exchanges orderbook" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ This package facilitates orderbook generation.
+ Attaches methods to an orderbook
- To Return total Bids
- To Return total Asks
- Update orderbooks
+ Gets a loaded orderbook by exchange, asset type and currency pair.
+ This package is primarily used in conjunction with but not limited to the
exchange interface system set by exchange wrapper orderbook functions in
"exchange"_wrapper.go.
Examples below:
```go
ob, err := yobitExchange.GetOrderbookEx()
if err != nil {
// Handle error
}
// Find total asks which also returns total orderbook value
totalAsks, totalOrderbookVal := ob.CalculateTotalAsks()
```
+ or if you have a routine setting an exchange orderbook you can access it via
the package itself.
```go
ob, err := orderbook.GetOrderbook(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -4,6 +4,9 @@
+ This package is used to connect and query data from supported exchanges.
+ Please checkout individual exchange README for more information on
implementation
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}

View File

@@ -2,7 +2,11 @@
{{template "header" .}}
## Current Features for {{.Name}}
+ This package services the exchanges package.
+ This stats package services the exchanges package by providing stats on
enabled exchanges i.e.
- Sort by largest volume
- Sort by best price for currency
- Others will be added soon
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}

View File

@@ -0,0 +1,42 @@
{{define "exchanges ticker" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ This services the exchanges package by ticker functions.
+ This package facilitates ticker generation.
+ Attaches methods to an ticker
- Returns a string of a value
+ Gets a loaded ticker by exchange, asset type and currency pair.
+ This package is primarily used in conjunction with but not limited to the
exchange interface system set by exchange wrapper orderbook functions in
"exchange"_wrapper.go.
Examples below:
```go
tick, err := yobitExchange.GetTickerPrice()
if err != nil {
// Handle error
}
// Converts ticker value to string
tickerValString := tick.PriceToString(...)
```
+ or if you have a routine setting an exchange orderbook you can access it via
the package itself.
```go
tick, err := ticker.GetTicker(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges exmo" -}}
{{template "header" .}}
## Exmo Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var e exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Exmo" {
e = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := e.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := e.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := e.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := e.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := e.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := e.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := e.Trade(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges gemini" -}}
{{template "header" .}}
## Gemini Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var g exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Gemini" {
g = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := g.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := g.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := g.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := g.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := g.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := g.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := g.Trade(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,106 @@
{{define "exchanges hitbtc" -}}
{{template "header" .}}
## HitBTC Exchange
### Current Features
+ REST Support
+ Websocket Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var h exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "HitBTC" {
h = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := h.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := h.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := h.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := h.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := h.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := h.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := h.Trade(...)
if err != nil {
// Handle error
}
```
### How to do Websocket public/private calls
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,105 @@
{{define "exchanges huobi" -}}
{{template "header" .}}
## Huobi Exchange
### Current Features
+ REST Support
+ Websocket Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var h exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Huobi" {
h = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := h.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := h.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := h.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := h.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := h.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := h.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := h.Trade(...)
if err != nil {
// Handle error
}
```
### How to do Websocket public/private calls
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges itbit" -}}
{{template "header" .}}
## Itbit Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var i exchange.IBotExchange
for x := range bot.exchanges {
if bot.exchanges[x].GetName() == "Itbit" {
i = bot.exchanges[x]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := i.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := i.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := i.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := i.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := i.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := i.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := i.Trade(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges kraken" -}}
{{template "header" .}}
## Kraken Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var k exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Kraken" {
k = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := k.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := k.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := k.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := k.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := k.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := k.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := k.Trade(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges lakebtc" -}}
{{template "header" .}}
## LakeBTC Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var l exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "LakeBTC" {
l = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := l.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := l.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := l.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := l.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := l.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := l.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := l.Trade(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges liqui" -}}
{{template "header" .}}
## Liqui Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var l exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Liqui" {
l = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := l.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := l.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := l.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := l.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := l.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := l.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := l.Trade(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges localbitcoins" -}}
{{template "header" .}}
## LocalBitcoins Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var l exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "LocalBitcoins" {
l = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := l.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := l.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := l.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := l.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := l.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := l.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := l.Trade(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,106 @@
{{define "exchanges okcoin" -}}
{{template "header" .}}
## OKCoin Exchange
### Current Features
+ REST Support
+ Websocket Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var o exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "OKCoin" {
y = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := o.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := o.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := o.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := o.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := o.GetOrderBook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetUserInfo returns account info
accountInfo, err := o.GetUserInfo(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := o.Trade(...)
if err != nil {
// Handle error
}
```
### How to do Websocket public/private calls
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges okex" -}}
{{template "header" .}}
## OKex Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var o exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "OKex" {
y = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := o.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := o.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := o.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := o.GetSpotTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := o.GetSpotMarketDepth()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// GetContractPosition returns contract positioning
accountInfo, err := o.GetContractPosition(...)
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := o.PlaceContractOrders(...)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,8 +1,11 @@
{{define "currency" -}}
{{define "exchanges orders" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ Currency package deals with currency pair generation, manipulation and tracking.
+ This package services the exchanges package with order handling.
- Creation of order
- Deletion of order
- Order tracking
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}

View File

@@ -0,0 +1,106 @@
{{define "exchanges poloniex" -}}
{{template "header" .}}
## Poloniex Exchange
### Current Features
+ REST Support
+ Websocket Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var p exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Poloniex" {
y = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := p.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := p.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := p.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := p.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := p.GetOrderbook()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// Cancels current account order
accountInfo, err := p.CancelOrder()
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := p.PlaceOrder(...)
if err != nil {
// Handle error
}
```
### How to do Websocket public/private calls
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,8 +1,9 @@
{{define "currency pair" -}}
{{define "exchanges request" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ This package services the currency package.
+ This package services the exchanges package with request handling.
- Throttling of requests for an individual exchange
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges wex" -}}
{{template "header" .}}
## Wex Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var w exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Wex" {
y = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := w.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := w.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := w.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := w.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := w.GetDepth()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := w.GetAccountInfo()
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := w.Trade("BTCUSD", "MARKET", 1, 2)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,98 @@
{{define "exchanges yobit" -}}
{{template "header" .}}
## Yobit Exchange
### Current Features
+ REST Support
### How to enable
+ [Enable via configuration](https://github.com/thrasher-/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
+ Individual package example below:
```go
// Exchanges will be abstracted out in further updates and examples will be
// supplied then
```
### How to do REST public/private calls
+ If enabled via "configuration".json file the exchange will be added to the
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
the wrapper interface functions for accessing exchange data. View routines.go
for an example of integration usage with GoCryptoTrader. Rudimentary example
below:
main.go
```go
var y exchange.IBotExchange
for i := range bot.exchanges {
if bot.exchanges[i].GetName() == "Yobit" {
y = bot.exchanges[i]
}
}
// Public calls - wrapper functions
// Fetches current ticker information
tick, err := y.GetTickerPrice()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := y.GetOrderbookEx()
if err != nil {
// Handle error
}
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
// set and AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := y.GetExchangeAccountInfo()
if err != nil {
// Handle error
}
```
+ If enabled via individually importing package, rudimentary example below:
```go
// Public calls
// Fetches current ticker information
ticker, err := y.GetTicker()
if err != nil {
// Handle error
}
// Fetches current orderbook information
ob, err := y.GetDepth()
if err != nil {
// Handle error
}
// Private calls - make sure your APIKEY and APISECRET are set and
// AuthenticatedAPISupport is set to true
// Fetches current account information
accountInfo, err := y.GetAccountInfo()
if err != nil {
// Handle error
}
// Submits an order and the exchange and returns its tradeID
tradeID, err := y.Trade("BTCUSD", "MARKET", 1, 2)
if err != nil {
// Handle error
}
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,10 +0,0 @@
{{define "currency symbol" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ This package services the currency package.
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,10 +0,0 @@
{{define "exchanges orderbook" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ This package facilitates orderbook generation.
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,10 +0,0 @@
{{define "exchanges ticker" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ This services the exchanges package by ticker functions.
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,10 +0,0 @@
{{define "smsglobal" -}}
{{template "header" .}}
## Current Features for {{.Name}}
+ This package allows for the messaging of events to a personal phone number or a group of phone numbers.
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -21,7 +21,7 @@ Join our slack to discuss all things related to GoCryptoTrader! [GoCryptoTrader
|----------|------|-----------|-----|
| Alphapoint | Yes | Yes | NA |
| ANXPRO | Yes | No | NA |
| Binance| Yes | No | NA |
| Binance| Yes | Yes | NA |
| Bitfinex | Yes | Yes | NA |
| Bitflyer | Yes | No | NA |
| Bithumb | Yes | NA | NA |

View File

@@ -0,0 +1,20 @@
{{define "tools config" -}}
{{template "header" .}}
## Configuration management tool
### Current Features
+ The configuration management tool takes in a "configuration".json file and
writes to an output file while validating the inputting data.
Example usage:
```bash
cd $GOPATH/src/github.com/thrasher-/gocryptotrader/tools/config/
go run ./config.go -infile path/of/config.json -outfile path/of/new/config.json -encrypt falseOrTrue -key KEYHERE
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,23 @@
{{define "tools documentation" -}}
{{template "header" .}}
## Documentation Management Tool
### Current Features
+ Retrieves contribution activity via github API
+ Regenerates and updates documentation across the entire code base for each individual package
+ Allows for a documentation standard across this codebase
#### How to example
+ This will update the entire codebase when a change is made in the documentation templates
```sh
cd $GOPATH/src/github.com/thrasher-/gocryptotrader/tools/documentation/
go run gocryptotrader.go -r
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,23 @@
{{define "tools exchange" -}}
{{template "header" .}}
## Exchange Template Management Tool
### Current Features
+ Generates a basic template for incorporating a new exchange in the codebase
#### How to example
+ This will update the entire codebase when a change is made in the documentation templates
+ add -name flag to generate an exchange e.g -name yobit
+ add supporting request protocols by adding either -rest, -ws and or -fix
```sh
cd $GOPATH/src/github.com/thrasher-/gocryptotrader/tools/exchange_template/
go run exchange_template.go -name Bitmex -ws -rest
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,20 @@
{{define "tools huobiauth" -}}
{{template "header" .}}
## Huobi Authentication Management Tool
### Current Features
+ Generates a public and private key from a private key provided by Huobi for
API Authentication.
+ Move your file into the same folder as the Huobi auth tool
Generate Keys:
```bash
cd $GOPATH/src/github.com/thrasher-/gocryptotrader/tools/huobi_auth/
go run main.go
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -0,0 +1,18 @@
{{define "tools portfolio" -}}
{{template "header" .}}
## Portfolio Retrievement Tool
### Current Features
+ Fetches portfolio details
Example:
```bash
cd $GOPATH/src/github.com/thrasher-/gocryptotrader/tools/portfolio/
go run portfolio.go -infile path/to/config.json -key AESDecryptionKey
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -10,18 +10,7 @@ This folder contains an assortment of tools.
+ Exchange deployment
+ Websocket client
Example Run for documentation generation - flags -v Verbose & -r Replace files
```sh
cd documentation/
go run documentation.go -v
```
OR for full replacement.
```sh
cd documentation/
go run documentation.go -v -r
```
Please see individual tool's README file
{{template "contributions"}}
{{template "donations"}}
{{end}}

View File

@@ -1,10 +1,16 @@
{{define "exchanges binance" -}}
{{define "tools websocket" -}}
{{template "header" .}}
## Binance Exchange
## Websocket Client Tool
### Current Features
+ Initial generation
+ Starts a websocket client
Example:
```bash
cd $GOPATH/src/github.com/thrasher-/gocryptotrader/tools/websocket_client/
go run main.go
```
### Please click GoDocs chevron above to view current GoDoc information for this package
{{template "contributions"}}

View File

@@ -30,9 +30,9 @@ npm run start:web
Currently runs with:
- Angular v5.2.5
- Angular-CLI v1.6.4
- Electron v1.8.2
- Angular v6.0.9
- Angular-CLI v6.0.8
- Electron v1.8.7
- Electron Builder v20.0.4