Exemplo n.º 1
0
        internal static void UpdateMonthAndYearForSymbols(List <string> selectedSymbols)
        {
            new Thread(
                () =>
            {
                for (int i = 0; i < selectedSymbols.Count; i++)
                {
                    var listOfTables = ClientDatabaseManager.GetListOfBarTables(selectedSymbols[i]);
                    int k            = 0;
                    var progr        = 0;
                    var rowsMaxCount = listOfTables.Count;
                    var cto          = (double)rowsMaxCount;
                    OnProgressBarChanged(2);

                    foreach (var table in listOfTables)
                    {
                        Console.WriteLine("table: " + table);
                        //try load data from TblExpiration

                        var listOfExpirations = ClientDatabaseManager.GetExpirationDatesForSymbol(selectedSymbols[i]);

                        string month, year;

                        if (!ClientDatabaseManager.MonthCharYearExist(table))
                        {
                            ClientDatabaseManager.AddMonthCharYearColumnsToBarTable(table);
                        }
                        if (ClientDatabaseManager.YearCharExist(table))
                        {
                            ClientDatabaseManager.DeleteWrongColumnsFromTable(table);
                        }


                        //Update table: item
                        if (IsNoCont(table, out month, out year))
                        {
                            ClientDatabaseManager.UpdateMonthAndYearForStandardSymbol(table, month, year);
                        }
                        else
                        {
                            UpdateTableMonthChar(table, listOfExpirations);
                        }
                    }
                    k++;
                    var newProgr = (int)Math.Round((k / cto) * 100f);
                    if (newProgr > progr)
                    {
                        progr = newProgr;
                        OnProgressBarChanged(progr);
                    }
                }

                OnProgressBarChanged(100);
            })
            {
                Name = "UpdateMonthAndYearForSymbols"
            }.Start();
        }
Exemplo n.º 2
0
        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);
            }
        }