mirror of
https://github.com/d0zingcat/gocryptotrader.git
synced 2026-05-22 23:16:48 +00:00
* Initial currency overhaul before service system implementation * Remove redundant currency string in orderbook.Base Unexport lastupdated field in orderbook.Base as it was being instantiated multiple times Add error handling for process orderbook * Remove redundant currency string in ticker.Price Unexport lastupdated field in ticker.Price Add error handling for process ticker function and fix tests * Phase Two Update * Update translations to use map type - thankyou to kempeng for spotting this * Change pair method name from Display -> Format for better readability * Fixes misspelling and tests * Implement requested changes from GloriousCode * Remove reduntant function and streamlined return in currency_translation.go * Revert pair method naming conventions * Change currency naming conventions * Changed code type to exported Item type with underlying string to reduce complexity * Added interim orderbook process method to orderbook.Base type * Changed feebuilder struct field to currency.Pair * Adds fall over system for backup fx providers * deprecate function and children and fix linter issue with btcmarkets * Fixed requested changes * Fix bug and move mtx for rates * Fixed after rebase oopsies * Fix linter issues * Fixes race conditions in testing functions * Final phase coinmarketcap update * fix linter issues * Implement requested changes * Adds configuration variables to increase/decrease time durations between updating currency file and fetching new currency rates * Add a collection of tests to improve codecov * After rebase oopsy fixes for btse * Fix requested changes * fix after rebase oopsies and add more efficient comparison checks within currency pair * Fix linter issues
77 lines
3.3 KiB
Markdown
77 lines
3.3 KiB
Markdown
# GoCryptoTrader package Orderbook
|
|
|
|
<img src="https://github.com/thrasher-/gocryptotrader/blob/master/web/src/assets/page-logo.png?raw=true" width="350px" height="350px" hspace="70">
|
|
|
|
|
|
[](https://travis-ci.org/thrasher-/gocryptotrader)
|
|
[](https://github.com/thrasher-/gocryptotrader/blob/master/LICENSE)
|
|
[](https://godoc.org/github.com/thrasher-/gocryptotrader/exchanges/orderbook)
|
|
[](http://codecov.io/github/thrasher-/gocryptotrader?branch=master)
|
|
[](https://goreportcard.com/report/github.com/thrasher-/gocryptotrader)
|
|
|
|
|
|
This orderbook 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/enQtNTQ5NDAxMjA2Mjc5LTQyYjIxNGVhMWU5MDZlOGYzMmE0NTJmM2MzYWY5NGMzMmM4MzUwNTBjZTEzNjIwODM5NDcxODQwZDljMGQyNGY)
|
|
|
|
## Current Features for orderbook
|
|
|
|
+ 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.Get(...)
|
|
if err != nil {
|
|
// Handle error
|
|
}
|
|
```
|
|
|
|
### 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-/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-/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***
|
|
|