Exemple #1
0
 public BitfinexOrderBooksHarvester(BitfinexExchangeConfiguration configuration,
                                    OrderBookSnapshotsRepository orderBookSnapshotsRepository,
                                    OrderBookEventsRepository orderBookEventsRepository,
                                    IHandler <OrderBook> orderBookHandler,
                                    IHandler <TickPrice> tickPriceHandler,
                                    ILog log)
     : base(BitfinexExchange.Name, configuration, new WebSocketTextMessenger(configuration.WebSocketEndpointUrl, log), log, orderBookSnapshotsRepository, orderBookEventsRepository, orderBookHandler)
 {
     _configuration    = configuration;
     _channels         = new Dictionary <long, Channel>();
     _tickPriceHandler = tickPriceHandler;
 }
Exemple #2
0
 public BitMexOrderBooksHarvester(
     BitMexExchangeConfiguration configuration,
     ILog log,
     OrderBookSnapshotsRepository orderBookSnapshotsRepository,
     OrderBookEventsRepository orderBookEventsRepository,
     IBitmexSocketSubscriber socketSubscriber,
     IHandler <OrderBook> orderBookHandler) :
     base(BitMexExchange.Name, configuration,
          new WebSocketTextMessenger(configuration.WebSocketEndpointUrl, log), log, orderBookSnapshotsRepository, orderBookEventsRepository, orderBookHandler)
 {
     _socketSubscriber = socketSubscriber;
 }
Exemple #3
0
 public JfdOrderBooksHarvester(
     JfdExchangeConfiguration configuration,
     JfdModelConverter modelConverter,
     ILog log,
     OrderBookSnapshotsRepository orderBookSnapshotsRepository,
     OrderBookEventsRepository orderBookEventsRepository,
     IHandler <OrderBook> orderBookHandler)
     : base(JfdExchange.Name, configuration, new JfdQuotesSessionConnector(GetConnectorConfig(configuration), log),
            log, orderBookSnapshotsRepository, orderBookEventsRepository, orderBookHandler)
 {
     _configuration  = configuration;
     _modelConverter = modelConverter;
     HeartBeatPeriod = TimeSpan.FromSeconds(90); // Just in case if QuickFix doesn't detect connection failure.
 }
Exemple #4
0
        protected OrderBooksHarvesterBase(string exchangeName, IExchangeConfiguration exchangeConfiguration, ILog log,
                                          OrderBookSnapshotsRepository orderBookSnapshotsRepository, OrderBookEventsRepository orderBookEventsRepository,
                                          IHandler <OrderBook> newOrderBookHandler)
        {
            ExchangeConfiguration        = exchangeConfiguration;
            OrderBookSnapshotsRepository = orderBookSnapshotsRepository;
            OrderBookEventsRepository    = orderBookEventsRepository;
            _newOrderBookHandler         = newOrderBookHandler;
            ExchangeName = exchangeName;

            Log = log.CreateComponentScope(GetType().Name);

            _converters = new ExchangeConverters(exchangeConfiguration.SupportedCurrencySymbols,
                                                 string.Empty);

            _orderBookSnapshots      = new ConcurrentDictionary <string, OrderBookSnapshot>();
            _cancellationTokenSource = new CancellationTokenSource();
            CancellationToken        = _cancellationTokenSource.Token;

            _heartBeatMonitoringTimer = new Timer(RestartMessenger);
        }
Exemple #5
0
        public GdaxOrderBookTests()
        {
            _log = new LogToConsole();

            var settingsManager = GdaxHelpers.GetGdaxSettingsMenager();

            _gdaxConfiguration = settingsManager.CurrentValue;

            var orderBookEventsStorage = AzureTableStorage <OrderBookEventEntity> .Create(
                settingsManager.ConnectionString(i => _tableStorageEndpoint), _orderBookEventsTable, _log);

            var orderBookSnapshotStorage = AzureTableStorage <OrderBookSnapshotEntity> .Create(
                settingsManager.ConnectionString(i => _tableStorageEndpoint), _snapshotsTable, _log);

            var azureBlobStorage = AzureBlobStorage.Create(
                settingsManager.ConnectionString(i => _blobStorageEndpoint));

            _snapshotsRepository = new OrderBookSnapshotsRepository(orderBookSnapshotStorage, azureBlobStorage, _log);
            _eventsRepository    = new OrderBookEventsRepository(orderBookEventsStorage, _log);
            _orderBookHandler    = new Mock <IHandler <OrderBook> >().Object;
        }
Exemple #6
0
 protected OrderBooksWebSocketHarvester(string exchangeName, IExchangeConfiguration exchangeConfiguration, IMessenger <TRequest, TResponse> messanger, ILog log,
                                        OrderBookSnapshotsRepository orderBookSnapshotsRepository, OrderBookEventsRepository orderBookEventsRepository, IHandler <OrderBook> orderBookHandler)
     : base(exchangeName, exchangeConfiguration, log, orderBookSnapshotsRepository, orderBookEventsRepository, orderBookHandler)
 {
     Messenger = messanger;
 }
Exemple #7
0
        public GdaxOrderBooksHarvester(GdaxExchangeConfiguration configuration, ILog log,
                                       OrderBookSnapshotsRepository orderBookSnapshotsRepository, OrderBookEventsRepository orderBookEventsRepository,
                                       IHandler <OrderBook> orderBookHandler)
            : base(GdaxExchange.Name, configuration, log, orderBookSnapshotsRepository, orderBookEventsRepository, orderBookHandler)
        {
            _configuration = configuration;
            _symbolsLastSequenceNumbers = new ConcurrentDictionary <string, long>();
            _queuedOrderBookItems       = new Dictionary <string, Queue <GdaxQueueOrderItem> >();

            _websocketApi = CreateWebSocketsApiClient();
            _restApi      = CreateRestApiClient();
            _converters   = new GdaxConverters(_configuration.SupportedCurrencySymbols,
                                               ExchangeName);
        }