Commit Graph

11 Commits

Author SHA1 Message Date
Stefano Raggi ed3d65dce1 Add extra logging for reconnect 2019-06-20 13:36:25 +02:00
Stefano Raggi d3f50edc5a Connection handling bug fixes 2019-06-03 15:24:13 +02:00
Stefano Raggi fa2bc58564 Add IDataQueueHandler implementation for CoinAPI 2019-06-03 15:24:12 +02:00
Stefano Raggi fb6e51f307 Fix GDAX WebSocketSharp always logging errors to console 2018-07-02 13:28:01 +02:00
Stefano Raggi 2d868e6ec6 Add error handling and disconnect fix in GDAX brokerage
- Added some extra error handling for edge cases such as connection attempts with invalid credentials
- The connection monitor thread is now a background thread, allowing the process to terminate cleanly and Disconnect now waits for thread termination
- Removed Log.Trace on heartbeats
2017-11-01 23:39:25 +01:00
Jared Broad 0eae2e3da9 Path encoding 2017-10-24 03:50:47 -04:00
Michael ac1e23a65f Remove web socket 4 net (#1243)
Swap WebSocket4Net for WebSocketSharpFork

WebSocket4Net was throwing exceptions with newer mono versions.

* Added more logging

* More logging

* Log when web socket connection is opened.

Remove auto-pinging

My hunch is that the server will do it's own which will cause the
reconnection logic to work as expected. Currently it constantly
thinks we're not connected because we're pinging the server, so
therefore it doesn't ping at the heartbeat interval.

* Dont reconnect if we're still connected

* Check if connection is open before starting reconnect logic

* Force ping on each connecton monitor time loop

* Log null response in GetAccountHoldings

Set fill price/quantity for market orders

Refactor to use Messages.Order instead of dynamic objects

Add supported crypto currencies as conversion feeds

This list is used to try and figure out what data subscription is needed
to provide the algorithm with currency feeds to support various currencies
and securities quoted in various currencies.

The previous work around required the user to explicitly add these feeds,
but now the system will resolve them even if the security isn't explicitly
added to the algorithm

* DEBUG: Log response for market orders

* More logging

* DEBUG: Heartbeat logging... does the server do it for you?

* Disable gdax

* Stream locker

Fixed order direction issue

Fix resolution of crypto currency pairs

This change splits out the various currency lists by security type.
This is not ideal, but it does remove the special case checking for
cfds in the cash method and makes it explicit what security type to
use when constructing symbol objects.

* Add EUR crypto pairs

* Fix broken tests, add some crpyto currency symbols

Account holdings loading from GDAX

Don't model holdings, use empty list

* Remove throw as we can add cash another way

* Fix failing unit tests

* Remove subscription requirement from Cash.EnsureCurrencyDataFeed

We're now passing in the default markets per security type so we no longer require
subscriptions to be added before adding currency conversion feeds.

* Log everything coming through web socket

* Fix duplicate messages in BaseWebsocketsBrokerage

This issue was caused by event handlers being attached twice, due to Connect being called twice (by BrokerageHistoryProvider and BrokerageSetupHandler)

* Remove Log.Trace from WebSocketWrapper.OnMessage

* Remove GDAX maintenance error message

* Restore WebSocketWrapper.OnMessage log trace

* Remove change log

* Clean white space, remove unused member
2017-10-24 02:14:03 -04:00
jameschch@outlook.com 8a7495e2ec Addresses minor quality issues 2017-09-11 15:29:23 +01:00
jameschch@outlook.com 54e77223fb Ports websockets library to improve stability,
Fixes price ticks
2017-09-02 21:12:44 +01:00
jameschch@outlook.com 1941334866 Adds remaining gdax rest methods and unit tests 2017-07-04 21:40:42 +01:00
jameschch@outlook.com 15c6edb34f Adds gdax brokerage 2017-07-02 20:03:02 +01:00