mirror of
https://github.com/d0zingcat/gocryptotrader.git
synced 2026-05-13 23:16:45 +00:00
* WIP * Variable Name Changes and other PR Changes * Name Changes and Error Checks * WIP * Some new functionality added and nits fixed * WIP on Nits * More trello functionality added and some PR changes * Minor changes and linter fixes * Errors Fixed and some PR Changes * PR Changes * WIP * WIP * Addition of Config * WIP of Readme file * Readme WIP * Addition of ReadMe * Linter Issues fixed * Minor Errors fixed * fixed test timeout issues and added api keys check for tests * Errors fixed * Nits WIP * Nits fixed * More efficient mutex usage * Consts cleaned up * Readme file fixed * linter issues fixed * format issues: * readme updates and nits * remove backup file and address nits * backup file removed for real * OkexOkcoin updates and linter fixes * errors fixed * Nits * errors fixed * formatting issues * race conditions fixed * files fixed * go mod n go sum * WIP adding rate limits * Added rate limits * Remove test vars * go mod tidy * improving readme file and 2digits for trello auto update * Added space * removed space * addressing nits * documentation update * more nits * board id check * linter fixes * test race fixed * test file match * errors fixed * nitz * LOWERCASE flags * more nitz * broken wip * flag addition fixed * error fixed * documentation updated for adding exchange using flags * something * add comment * nitz fixed * pr changes * added gemini exchange * testfile saving changes * nitz * fixing done * pr changes * nits * WIP * minor error fix * wip * wip * WIP * pr changes * pr changes * pr changes * nits * nits fixed * t.Fail removed * nitz * disable lakeBTC * contributors fixed contributors fixed ALL THE NITZ OMG * OMGGG ALL THE NITZ OMG * name change errors fixed * linter issues fixed * linterzz * Added disabling feature for exchanges * bug fix * small feature added * fixed bug fix: no keys * nits * test * test2 * test 3 * linter fixed * testing * testing * remove logs * OMG * bugfix * cyam88888 * nits * error handled * minor nits fixed createnewcheck issue fixed createnewcheck issue * functionality change some functionality changes no api keys 4u :D * trello names thro config * err check
141 lines
4.7 KiB
Markdown
141 lines
4.7 KiB
Markdown
# GoCryptoTrader package Binance
|
|
|
|
<img src="https://github.com/thrasher-corp/gocryptotrader/blob/master/web/src/assets/page-logo.png?raw=true" width="350px" height="350px" hspace="70">
|
|
|
|
|
|
[](https://travis-ci.org/thrasher-corp/gocryptotrader)
|
|
[](https://github.com/thrasher-corp/gocryptotrader/blob/master/LICENSE)
|
|
[](https://godoc.org/github.com/thrasher-corp/gocryptotrader/exchanges/binance)
|
|
[](http://codecov.io/github/thrasher-corp/gocryptotrader?branch=master)
|
|
[](https://goreportcard.com/report/github.com/thrasher-corp/gocryptotrader)
|
|
|
|
|
|
This binance package is part of the GoCryptoTrader codebase.
|
|
|
|
## This is still in active development
|
|
|
|
You can track ideas, planned features and what's in progress on this Trello board: [https://trello.com/b/ZAhMhpOy/gocryptotrader](https://trello.com/b/ZAhMhpOy/gocryptotrader).
|
|
|
|
Join our slack to discuss all things related to GoCryptoTrader! [GoCryptoTrader Slack](https://join.slack.com/t/gocryptotrader/shared_invite/enQtNTQ5NDAxMjA2Mjc5LTc5ZDE1ZTNiOGM3ZGMyMmY1NTAxYWZhODE0MWM5N2JlZDk1NDU0YTViYzk4NTk3OTRiMDQzNGQ1YTc4YmRlMTk)
|
|
|
|
## Binance Exchange
|
|
|
|
### Current Features
|
|
|
|
+ REST Support
|
|
+ Websocket Support
|
|
|
|
### How to enable
|
|
|
|
+ [Enable via configuration](https://github.com/thrasher-corp/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.FetchTicker()
|
|
if err != nil {
|
|
// Handle error
|
|
}
|
|
|
|
// Fetches current orderbook information
|
|
ob, err := b.FetchOrderbook()
|
|
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.GetAccountInfo()
|
|
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
|
|
|
|
## Contribution
|
|
|
|
Please feel free to submit any pull requests or suggest any desired features to be added.
|
|
|
|
When submitting a PR, please abide by our coding guidelines:
|
|
|
|
+ Code must adhere to the official Go [formatting](https://golang.org/doc/effective_go.html#formatting) guidelines (i.e. uses [gofmt](https://golang.org/cmd/gofmt/)).
|
|
+ Code must be documented adhering to the official Go [commentary](https://golang.org/doc/effective_go.html#commentary) guidelines.
|
|
+ Code must adhere to our [coding style](https://github.com/thrasher-corp/gocryptotrader/blob/master/doc/coding_style.md).
|
|
+ Pull requests need to be based on and opened against the `master` branch.
|
|
|
|
## Donations
|
|
|
|
<img src="https://github.com/thrasher-corp/gocryptotrader/blob/master/web/src/assets/donate.png?raw=true" hspace="70">
|
|
|
|
If this framework helped you in any way, or you would like to support the developers working on it, please donate Bitcoin to:
|
|
|
|
***bc1qk0jareu4jytc0cfrhr5wgshsq8282awpavfahc***
|