mirror of
https://github.com/d0zingcat/gocryptotrader.git
synced 2026-05-13 23:16:45 +00:00
142 lines
4.7 KiB
Markdown
142 lines
4.7 KiB
Markdown
# GoCryptoTrader package Bitstamp
|
|
|
|
<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/bitstamp)
|
|
[](http://codecov.io/github/thrasher-corp/gocryptotrader?branch=master)
|
|
[](https://goreportcard.com/report/github.com/thrasher-corp/gocryptotrader)
|
|
|
|
|
|
This bitstamp package is part of the GoCryptoTrader codebase.
|
|
|
|
## This is still in active development
|
|
|
|
You can track ideas, planned features and what's in progresss 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)
|
|
|
|
## Bitstamp 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() == "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.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:
|
|
|
|
***1F5zVDgNjorJ51oGebSvNCrSAHpwGkUdDB***
|
|
|