/// <summary> /// The DI constructor. /// </summary> /// <param name="aggregateTradeClientManager"></param> /// <param name="candlestickClientManager"></param> /// <param name="depthClientManager"></param> /// <param name="statisticsClientManager"></param> /// <param name="tradeClientManager"></param> /// <param name="logger"></param> protected BinanceJsonClientManager( IAggregateTradeClientManager <TStream> aggregateTradeClientManager, ICandlestickClientManager <TStream> candlestickClientManager, IDepthClientManager <TStream> depthClientManager, ISymbolStatisticsClientManager <TStream> statisticsClientManager, ITradeClientManager <TStream> tradeClientManager, ILogger <BinanceJsonClientManager <TStream> > logger = null) { Throw.IfNull(aggregateTradeClientManager, nameof(aggregateTradeClientManager)); Throw.IfNull(candlestickClientManager, nameof(candlestickClientManager)); Throw.IfNull(depthClientManager, nameof(depthClientManager)); Throw.IfNull(statisticsClientManager, nameof(statisticsClientManager)); Throw.IfNull(tradeClientManager, nameof(tradeClientManager)); AggregateTradeClient = aggregateTradeClientManager; CandlestickClient = candlestickClientManager; DepthClient = depthClientManager; StatisticsClient = statisticsClientManager; TradeClient = tradeClientManager; _logger = logger; aggregateTradeClientManager.Controller.Error += HandleError; candlestickClientManager.Controller.Error += HandleError; depthClientManager.Controller.Error += HandleError; statisticsClientManager.Controller.Error += HandleError; tradeClientManager.Controller.Error += HandleError; }
/// <summary> /// The DI constructor. /// </summary> /// <param name="aggregateTradeClient"></param> /// <param name="candlestickClient"></param> /// <param name="depthClient"></param> /// <param name="statisticsClient"></param> /// <param name="tradeClient"></param> /// <param name="logger"></param> protected BinanceJsonClientManager( IAggregateTradeWebSocketClient aggregateTradeClient, ICandlestickWebSocketClient candlestickClient, IDepthWebSocketClient depthClient, ISymbolStatisticsWebSocketClient statisticsClient, ITradeWebSocketClient tradeClient, ILogger<BinanceJsonClientManager<TStream>> logger = null) { Throw.IfNull(aggregateTradeClient, nameof(aggregateTradeClient)); Throw.IfNull(candlestickClient, nameof(candlestickClient)); Throw.IfNull(depthClient, nameof(depthClient)); Throw.IfNull(statisticsClient, nameof(statisticsClient)); Throw.IfNull(tradeClient, nameof(tradeClient)); AggregateTradeClient = aggregateTradeClient; CandlestickClient = candlestickClient; DepthClient = depthClient; StatisticsClient = statisticsClient; TradeClient = tradeClient; _logger = logger; // Forward controller error events. aggregateTradeClient.Error += HandleError; candlestickClient.Error += HandleError; depthClient.Error += HandleError; statisticsClient.Error += HandleError; tradeClient.Error += HandleError; }
public MeanReversionPaper(string symbol, Decimal scale) { _stockSymbol = symbol; _scale = scale; _dataClient = new TradeDataClient(); _tradingClient = new TradeClient(); }
/// <summary> /// /// </summary> /// <param name="client"></param> /// <param name="callback"></param> /// <param name="symbols"></param> public static ITradeClient Unsubscribe(this ITradeClient client, Action <TradeEventArgs> callback, params string[] symbols) { Throw.IfNull(client, nameof(client)); Throw.IfNull(symbols, nameof(symbols)); if (callback == null && !symbols.Any()) { throw new ArgumentException($"{nameof(Unsubscribe)}: At least one symbol is required.", nameof(symbols)); } foreach (var symbol in symbols) { client.Unsubscribe(symbol, callback); } return(client); }
/// <summary> /// The DI constructor. /// </summary> /// <param name="client">The JSON client (required).</param> /// <param name="controller">The JSON stream controller (required).</param> /// <param name="logger">The logger (optional).</param> public TradeClientManager(ITradeClient client, IJsonStreamController controller, ILogger <TradeClientManager> logger = null) : base(client, controller, logger) { }
public TradeClientTests() { _client = new TradeClient(); }
/// <summary> /// /// </summary> /// <param name="client"></param> /// <param name="symbols"></param> /// <returns></returns> public static ITradeClient Unsubscribe(this ITradeClient client, params string[] symbols) => Unsubscribe(client, null, symbols);
/// <summary> /// /// </summary> /// <param name="client"></param> /// <param name="symbol"></param> public static ITradeClient Unsubscribe(this ITradeClient client, string symbol) => client.Unsubscribe(symbol, null);
public FixClientService(ITradeClient tradeClient) { _tradeClient = tradeClient; }
/// <summary> /// The DI constructor. /// </summary> /// <param name="client">The JSON client (required).</param> /// <param name="controller">The web socket stream controller (required).</param> /// <param name="logger">The logger (optional).</param> public TradeWebSocketClientManager(ITradeClient client, IWebSocketStreamController controller, ILogger <TradeWebSocketClientManager> logger = null) : base(client, controller, logger) { }