Example #1
0
        /// <summary>
        /// Fetch company data by stock
        /// </summary>
        /// <param name="symbol"></param>
        /// <param name="message"></param>
        public void GetStockCompanyData(string symbol, out Error error)
        {
            var company = StockDataClient.GetStockCompanyData(stockDataService, symbol, out error);

            if (company == null)
            {
                return;
            }

            var stock = GetStockBySymbol(symbol, context.Stocks);

            BindCompanyToStock(stock, company);
        }
Example #2
0
        /// <summary>
        /// Fetch month chart data by stock
        /// </summary>
        /// <param name="symbol"></param>
        /// <param name="message"></param>
        public void GetStockMonthlyData(string symbol, out Error error)
        {
            var monthCharts = StockDataClient.GetStockMonthlyData(stockDataService, symbol, out error);

            if (monthCharts == null)
            {
                return;
            }

            monthCharts.Reverse();

            var stock = GetStockBySymbol(symbol, context.Stocks);

            BindMonthlyChartsToStock(stock, monthCharts);
        }
Example #3
0
        /// <summary>
        /// Fetch quote data by stock
        /// </summary>
        /// <param name="symbol"></param>
        /// <param name="message"></param>
        public void GetStockQuoteData(string symbol, out Error error)
        {
            var quote = StockDataClient.GetStockQuoteData(stockDataService, symbol, out error);

            if (quote == null)
            {
                return;
            }

            var stock = GetStockBySymbol(symbol, context.Stocks);

            if (stock == null)
            {
                stock = new Stock();
                context.Stocks.Add(stock);
            }

            BindQuoteToStock(stock, quote);
            BindPriceToStockProperty(stock);
            BindStockNameSymbol(stock);

            stock.Symbol = stock.Symbol ?? symbol;
        }