/// <summary>
        /// Metoda aktualizująca dane historyczne w bazie danych dla zadanego indeksu giełdowego.
        /// </summary>
        /// <param name="stockIndex">Symbol indeksu giełdowego, dla którego należy zaktualizować dane historyczne</param>
        public void UpdateHistoricalTable(string stockIndex)
        {
            DateTime date;

            if (historicalIndexes.Where(x => x.symbol == stockIndex).Any())
            {
                var lastIndex = historicalIndexes.Where(b => b.symbol == stockIndex).OrderBy(b => b.date).Last();
                date = lastIndex.date;
            }
            else
            {
                date = DateTime.Today.AddYears(-1);
            }
            List <HistoricalIndexData> historicalData = FinancialData.GetHistoricalIndexData(stockIndex, date).Result;

            foreach (HistoricalIndexData data in historicalData)
            {
                this.Add(data);
            }
            if (historicalData.Count > 0)
            {
                var index = stockIndexes.Where(x => x.symbol == stockIndex).FirstOrDefault();
                index.price = historicalData[0].price;
            }
            this.SaveChanges();
        }
        /// <summary>
        /// Metoda uzupełniająca dane historyczne podanego w argumencie indeksu giełdowego.
        /// </summary>
        /// <param name="stockIndex">Symbol indeksu giełdowego, którego dane historyczne są do uzupełnienia</param>
        public void FillHistoricalTable(string stockIndex)
        {
            List <HistoricalIndexData> historicalData = FinancialData.GetHistoricalIndexData(stockIndex).Result;

            foreach (HistoricalIndexData data in historicalData)
            {
                this.Add(data);
            }
            this.SaveChanges();
        }
        /// <summary>
        /// Metoda uzupełniająca tabelę z bazy danych przechowującą informacje o cenie i oraz pełnej nazwie indeksu giełdowego.
        /// </summary>
        public void FillStockIndexesTable()
        {
            List <StockIndex> stockIndexesList = FinancialData.GetAllStockIndexes().Result;

            foreach (StockIndex stock in stockIndexesList)
            {
                this.Add(stock);
            }
            this.SaveChanges();
        }
        /// <summary>
        /// Metoda aktualizująca informacje o spisie indeksów giełdowych.
        /// </summary>
        public void UpdateStockIndexesTable()
        {
            List <StockIndex> stockIndexesList = FinancialData.GetAllStockIndexes().Result;

            foreach (StockIndex stock in stockIndexesList)
            {
                var index = stockIndexes.Where(x => x.symbol == stock.symbol).FirstOrDefault();
                if (index == null)
                {
                    this.Add(stock);
                }
                else
                {
                    index.price = stock.price;
                }
            }
            this.SaveChanges();
        }