示例#1
0
        public WatchListStock Add(string symbol)
        {
            if (_watchList.ContainsKey(symbol))
            {
                return(null);
            }
            WatchListStock watchListStock = new WatchListStock(symbol);

            MainWindow.Instance.Watchlist.Children.Add(watchListStock);
            _watchList.Add(symbol, watchListStock);
            _timer.Enabled = true;
            return(watchListStock);
        }
示例#2
0
        private void TimerOnElapsed(object sender, ElapsedEventArgs elapsedEventArgs)
        {
            StockDownloader downloader = new StockDownloader();

            downloader.GetBidAskQuote(_watchList.Keys.ToArray());
            foreach (Tuple <string, decimal, int, decimal, int> tuple in downloader.GetBidAskQuote(_watchList.Keys.ToArray()))
            {
                WatchListStock stock = _watchList[tuple.Item1];
                stock.Bid     = tuple.Item2;
                stock.BidSize = tuple.Item3;
                stock.Ask     = tuple.Item4;
                stock.AskSize = tuple.Item5;
            }
        }
示例#3
0
 private void BtnAddToWatchList_OnClick(object sender, RoutedEventArgs e)
 {
     foreach (StockInfo stock in grid.SelectedItems)
     {
         WatchListStock watchListStock = WatchListManager.Add(stock.Symbol);
         if (watchListStock != null)
         {
             watchListStock.Ask = (decimal)stock.Properties["ask"];
             watchListStock.Bid = (decimal)stock.Properties["bid"];
         }
         else
         {
             MessageBox.Show($"Stock {stock.Symbol} is already in the watch list!", "Watch list duplicate");
         }
     }
 }