private void BarRequest(CQGCEL cel, IEnumerable<string> symbols, int rangeStart, int rangeEnd, int sessionFilter, string historicalPeriod, string continuationType) { if (_shouldStop) return; _aSymbolStates.Clear(); _aContinuationType = continuationType; _aHistoricalPeriod = eHistoricalPeriod.hpUndefined; TableType(historicalPeriod); _historicalPeriod = historicalPeriod; foreach (string smb in symbols) { _logger.LogAdd("Creating request for symbol:" + smb, Category.Information, true); DatabaseManager.CreateBarsTable(smb, _aTableType); CQGTimedBarsRequest request = cel.CreateTimedBarsRequest(); //LineTime = CEL.Environment.LineTime; request.RangeStart = rangeStart; request.RangeEnd = rangeEnd; request.SessionsFilter = sessionFilter; request.Symbol = smb; request.IntradayPeriod = _aIntradayPeriod; if (_aHistoricalPeriod != eHistoricalPeriod.hpUndefined) request.HistoricalPeriod = _aHistoricalPeriod; var bars = cel.RequestTimedBars(request); var curTimedBars = cel.AllTimedBars.ItemById[bars.Id]; if (curTimedBars.Status == eRequestStatus.rsInProgress) { _logger.LogAdd("Request is 'In progress' for symbol:" + smb, Category.Information, true); var ss = new SymbolState { IsCollected = false, IsSuccess = false }; if (!_aSymbolStates.ContainsKey(smb)) _aSymbolStates.Add(smb, ss); } OnSymbolCollectStart(smb); } }
public static void BarRequest(string symbolName) { try { if (!Cel.IsStarted) { FinishCollectingSymbol(symbolName, false, 0, "CQG not started"); return; } Cel.NewInstrument(symbolName); var tableName = ClientDatabaseManager.GetBarTableFromSymbol(symbolName, GetTableType(_historicalPeriod)); _aHistoricalPeriod = eHistoricalPeriod.hpUndefined; if (ClientDatabaseManager.BarTableExist(tableName)) { if (!ClientDatabaseManager.MonthCharYearExist(tableName)) { ClientDatabaseManager.AddMonthCharYearColumnsToBarTable(tableName); } if (ClientDatabaseManager.YearCharExist(tableName)) { ClientDatabaseManager.DeleteWrongColumnsFromTable(tableName); } if (Settings.Default.MakeBigger) { ClientDatabaseManager.MakeBarTableBigger(symbolName, GetTableType(_historicalPeriod)); } } else { ClientDatabaseManager.CreateBarsTable(symbolName, GetTableType(_historicalPeriod)); } //DatabaseManager.CreateBarsTable(symbolName, GetTableType(_historicalPeriod)); CQGTimedBarsRequest request = Cel.CreateTimedBarsRequest(); request.RangeStart = _rangeStart; request.RangeEnd = _rangeEnd; request.SessionsFilter = _sessionFilter; request.Symbol = symbolName; request.Continuation = ConvertToTsts(_continuationType); request.IntradayPeriod = GetIntradayPeriod(_historicalPeriod); if (_aHistoricalPeriod != eHistoricalPeriod.hpUndefined) { request.HistoricalPeriod = _aHistoricalPeriod; } var bars = Cel.RequestTimedBars(request); var curTimedBars = Cel.AllTimedBars.ItemById[bars.Id]; if (curTimedBars.Status == eRequestStatus.rsInProgress) { } } catch (Exception ex) { Console.WriteLine(ex); } }