Commit Graph

24 Commits

Author SHA1 Message Date
Andrew
ca55f2f965 Optimisation: Large struct pointer conversion (final part) (#265)
Completes large struct pointer optomisations over the entire codebase and enables hugeParams linter by default
2019-04-04 15:31:49 +11:00
Ryan O'Hara-Reid
0990f9d118 Currency package update (#247)
* 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
2019-03-19 11:49:05 +11:00
Adrian Gallagher
7dcb1ab553 Migrate from gometalinter.v2 to golangci-lint (#249)
* Migrate from gometalinter.v2 to golangci-lint
2019-03-01 16:10:29 +11:00
Ryan O'Hara-Reid
82a622294c Coinmarketcap implementation (#243)
* Updates requester package to allow unpacking of zipped files and defaults to warn if no JSON is present

* Initial addition of coinmarketcap functionality

* fix requested changes

* Fix issue with displaying false positive in request.go && reorder plan list

* Rename CurrencyProvider -> CryptocurrencyProvider
Skip seeding currency data if not enabled
Rm line in main.go

* Update test procedures and relevant json files

* Fix const issue within config.go
2019-01-31 16:11:42 +11:00
Adrian Gallagher
291e404a4a Makefile: add new recipes and linter features (#244)
* Makefile: add new recipes and linter features

* expand linter coverage and fix issues

* Update makefile

* address PR nitterinos
2019-01-31 14:53:24 +11:00
Andrew
d01e7bad72 Implement Logger (#228)
* Added new base logger

* updated example and test configs

* updated exchange helpers restful router & server

* logPath is now passed to the logger to remove dependency on common package

* updated everything besides exchanges to use new logger

* alphapoint to bitmex done

* updated bitmex bitstamp bittrex btcc and also performance changes to logger

* btcmarkets coinbase coinut exmo gateio wrappers updated

* gateio and gemini logger updated

* hitbtc huobi itbit & kraken updated

* All exchanges updatd

* return correct error for disabled websocket

* don't disconnect client on invalid json

* updated router internal logging

* log.Fatal to t.Error for tests

* Changed from fatal to error failure to set maxprocs

* output ANSI codes for everything but windows for now due to lack of windows support

* added error handling to logger and unit tests

* clear wording on print -> log.print

* added benchmark test

* cleaned up import sections

* Updated logger based on PR requests (added default config options on failure/setting errors)

* ah this should fix travici enc config issue

* Load entire config and clear out logging to hopefully fix travisci issue

* wording & test error handling

* fixed formatting issues based on feedback

* fixed formatting issues based on feedback

* changed CheckDir to use mkdirall instead of mkdir and other changes based on feedback
2019-01-08 21:56:22 +11:00
Ryan O'Hara-Reid
58051b89c7 New package provider for foreign exchange rates.
Fixes issue: https://github.com/thrasher-/gocryptotrader/issues/131
Supersedes: https://github.com/thrasher-/gocryptotrader/pull/123
2018-06-06 21:05:17 +10:00
Ryan O'Hara-Reid
5f25fd8be7 Quick bug fix (#112)
* Added verbosity to returned error in currency.go

* Fixed bug with request handler init in okcoin.
2018-03-27 17:31:46 +11:00
Adrian Gallagher
0cd20804e9 Add IsFiatPair function 2018-02-10 20:10:16 +11:00
Adrian Gallagher
e8f8e32609 Add/improve common string functions, currency pair handling, fix LBTC orderbook amount 2018-02-08 12:00:55 +11:00
Adrian Gallagher
e2ad8998bf Improve Fixer currency conversion 2018-01-25 16:04:32 +11:00
Adrian Gallagher
5dc6df72aa Improvements in config, currency, exchange, pair and helper code 2018-01-17 13:42:09 +11:00
Adrian Gallagher
e00314bd5c Disable Yahoo currency conversion again 2017-11-01 16:35:32 +11:00
Ryan O'Hara-Reid
79a1911c93 In the common package added JSONDecode error check. Added verbosity in SendHTTPGetRequest. Updated Nonce package function. Fixed issues in ItBit package and expanded test coverage. 2017-09-18 14:47:14 +10:00
Adrian Gallagher
0682dcec88 Add currency converter provider failover and add config setting 2017-09-14 15:08:19 +10:00
Adrian Gallagher
2bd27feaf0 Polish websocket code 2017-09-14 15:08:19 +10:00
Adrian Gallagher
87633c2142 Link up orderbook websocket code, improve exchange test coverage and various other fixes 2017-09-14 15:07:59 +10:00
Adrian Gallagher
d1bdc6af5d Use fixer.io currency rates API instead of Yahoo due to Yahoo service issues 2017-08-28 09:06:53 +10:00
Adrian Gallagher
4dcce85810 Default to HTTPS everywhere in project 2017-08-25 16:57:06 +10:00
Adrian Gallagher
4f34b58d55 Improve portfolio, coverage and tool 2017-08-17 11:56:54 +10:00
Adrian Gallagher
0f55715987 Run gofmt and fix poloniex orderbook issue
Fixes https://github.com/thrasher-/gocryptotrader/issues/40
2017-08-09 23:18:23 -07:00
Ryan O'Hara-Reid
745505a33e General formatting for currency 2017-07-31 11:44:01 +10:00
Ryan O'Hara-Reid
94fc25ce25 Added functionality and future handling for currency.go 2017-04-11 22:00:20 +10:00
Adrian Gallagher
a9d9ee54f7 Package currency 2017-03-29 13:47:56 +11:00