* corrected param order Side -> Type, also corrected condition check for IsOrderPlaced
* send open status for GetActiveOrders
* GetActiveOrder() changes to include OrderID and status matching
* BTC Markets batch order limit fixes & SplitStringSliceByLimit method
BTC markets batch end points have limits (20 for cancel 50 for query) adds new method SplitStringSliceByLimit in common to split a slice by limit and return slice of slice
* rm line :D
* Added test for SplitStringSliceByLimit and moved to const
* ntp client reworked to not return error if no valid time servers are found but default to system
* clean up
* new line added
* use TimeMgr sublogger and wording correction on output
* Moved to DialTimeout() & Removed SetDeadline call
* removed line
* added setdeadline fix
* goimport file
* removed unused error from NTPClient as we now default to system time if no server can be reached
* Added checks for number overflows
* converted to uint as you should not be passing a negative number in
* Increased test cases for NTPClient
* Removed Helper call as no longer outputting any data from function
* removed unused param
* drop common uuid v4 func and imported package as needed
* removed common functions regarding json marshal and unmarshal and used the json package directly. WRT unmarshal it was calling reflect and converted to string which is also checked in the JSON package so it was doing a double up, this will be a tiny gain as it was directly used in the requester package for all our outbound requests.
* add in string
* explicitly throw away return error value
* atleast return the error that websocket initialise returns
* return error when not connected
* fix comment
* Adds comments
* move package declarations
* drop append whenever we call supported
* remove unused import
* Change incorrect spelling
* fix tests
* fix go import issue
* Adds new file.Move func to address a bug with Golang/Docker volumes when using os.Rename
Also uses TempDir for tests instead of live directories and increases test coverage for file.Write
* Goimport the imports
* Make usage of file package name consistent so it no longer clashes with vars
* Remove outputFile if io.Copy fails
* First pass at adding new logging system
* NewLogger
* NewLogger
* WIP
* silly bug fix
* :D removed files
* removed old logging interface
* added tests
* added tests
* Started to add new lines to all f calls
* Added subsystem log types
* Logger improvements
* Further performance improvements
* changes to logger and sublogger creation
* Renamed Logging types
* removed old print statement
* changes based on feedback
* moved sublogger types to own file
* :)
* added console as output type
* added get level command
* added get/set log level via grpc command
* added check for output being empty for migration support
* first pass at log rotation
* added log rotation
* :D derp fixed
* added tests
* changes based on feedback
* changed log type
* comments
* renamed file -> fileSettings
* typo fix
* changes based on feedback
* gofmt ran on additional files
* gofmt ran on additional files
* 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
* Common.go testing:
Improved GetHMAC test
Cut ByteArrayToString from common, already have a function that does the same thing
more coverage for SendHTTPRequest test
Improved SendHTTPGetRequest test
added JSONDecode test
added UnixMillis test
added RecvWindow test
added FloatFromString test
added IntFromString test
added Int64FromString test
added TestTimeFromUnixTimestampFloat test
* Removed package-lock.json form gitignore as it ensures specific package versions
* Updated all @angular web dependencies
* Resolved tslint errors using autofix option
* Resolved some more tslint issues
* Added lint scripts to package.json to easy lint the ts files
* Updated codelyzer and tslint
* Run web on travis using node 10 and run the lint task
* Resolved some more tslint issues after upgrading tslint and codelyzer
* Resolved golint issues with regards to exchange comments
* Resolved spelling errors shown by goreportcard.com
* Resolved gofmt warnings using goreportcard.com
* Resolved golint issue by removing unrequired else statement
* Refactored slack.go to reduce cyclomatic complexity
* Fixed govet issue where Slack was passed as value instead of reference
- Modifications made to the request package. Planned improvements will be
sending requests on intervals, rate limiter back off support, dynamic tuning
and requests packaged into a request job group.
- Can modify each exchanges individual HTTP client (e.g timeout and
transport settings).
- Bot now uses an exchange config HTTP timeout value.
- Bot now uses a global HTTP timeout (configurable).
- Batched ticker request support for exchanges.
- Ticker and Orderbook fetching now are spanned accross multiple
go routines and regulated by a sync wait group.
- Fixes hack used to load exchanges, now uses a sync wait group.
- Ticker and Orderbook storage and fetching now uses mutex locks.
- New pair function for finding different pairs between two supplied
pair arrays. This is used for currency pair updates for exchange which
support dynamic updating.
- Shows removal/additions of dynamic updates currencies.