public TraderManager(StockDataReaderManager stockDataReaderManager, IConfiguration configuration, IServiceProvider serviceProvider, TradingClientFactory tradingClientFactory, ILogger <TraderManager> logger, SignalRService signalRService) { _stockDataReaderManager = stockDataReaderManager; _configuration = configuration; _serviceProvider = serviceProvider; _tradingClientFactory = tradingClientFactory; _logger = logger; _signalRService = signalRService; }
static async Task Main(string[] args) { try { var stocks = new[] { "qqq", "msft", "fb", "aapl" }; var task = new List <Task>(); var alpacaClient = TradingClientFactory.GetTradingClient(TradingClientType.Alpaca); foreach (var stock in stocks) { var trader = new Trader(StockDataReaderFactory.GetStockDataReader(StockDataReaderType.Yahoo, stock), alpacaClient, stock); task.Add(Task.Run(() => trader.HandleOrders())); } await Task.WhenAll(task.ToArray()); } catch (Exception e) { Console.WriteLine(e); throw; } /*var stocks = new[] {"qqq", "msft", "fb", "aapl"}; * var task = new List<Task>(); * foreach (var stock in stocks) * { * task.Add(Task.Run(() => ScrapperFactory.GetScrapper(ScrapperType.Yahoo, stock).ReadStocksValue())); * } * * await Task.WhenAll(task.ToArray());*/ /*var watch = System.Diagnostics.Stopwatch.StartNew(); * * Console.WriteLine($"Profit is {Test()}"); * watch.Stop(); * var elapsedMs = watch.ElapsedMilliseconds; * Console.WriteLine($"time: { elapsedMs}");*/ }