protected override async Task Execute(CancellationToken token) { log.LogInformation("Starting..."); if (!client.Connect()) { log.LogError("Connection failed"); return; } var stream = realTimeBarsManager.Request(ContractHelper.GetContract(config.Stock), WhatToShow.BID_ASK); await serializer.Save($"{config.Stock}_realtime.csv", stream, token).ConfigureAwait(false); log.LogInformation("Realtime request completed"); }
protected override async Task Execute(CancellationToken token) { log.LogInformation("Starting..."); if (!client.Connect()) { log.LogError("Connection failed"); return; } var request = historicalDataManager .Request( new MarketDataRequest( ContractHelper.GetContract(config.Stock), DateTime.UtcNow.Date, new Duration(5, DurationType.Years), BarSize.Day, WhatToShow.BID_ASK)); await serializer.Save($"{config.Stock}_historic.csv", request, token).ConfigureAwait(false); log.LogInformation("History request completed"); }
protected override async Task Execute(CancellationToken token) { log.LogInformation("Starting..."); if (!client.Connect()) { log.LogError("Connection failed"); return; } var providers = await newsProvider.Request().FirstOrDefaultAsync(); var contract = await contractManager.Request(ContractHelper.GetContract(config.Stock)).FirstOrDefaultAsync(); var news = newsManager.Request(contract.ContractDetails.Contract.ConId, providers.NewsProviders[2].ProviderCode, StringFormater.StrToDate(config.From, client.TimeZone).DateToStr(), StringFormater.StrToDate(config.To, client.TimeZone).DateToStr(), 100); var newsData = await news.ToArray(); log.LogInformation("News request completed"); }