Esempio n. 1
0
 private void Complete(StockDownloader downloader)
 {
     Dispatcher.Invoke(() =>
     {
         AllowSearch = true;
         FindStocks();
     });
 }
Esempio n. 2
0
 private void Complete(StockDownloader downloader)
 {
     Application.Current.Dispatcher.Invoke(() =>
     {
         MainWindow.Instance.AllowSearch          = true;
         MainWindow.Instance.LblLoadProgress.Text = $"Loaded {StockUtils.AllSymbols.Count} Stocks";
         refresh();
     });
 }
Esempio n. 3
0
 private void Complete(StockDownloader downloader)
 {
     Dispatcher.Invoke(() =>
     {
         btnDownload.Click    -= btnDownload_Click;
         btnDownload.Click    += (sender, args) => DialogResult = true;
         btnDownload.Content   = "Finish";
         btnDownload.IsEnabled = true;
     });
 }
Esempio n. 4
0
        private void DownloadStocks()
        {
            Application.Current.Dispatcher.Invoke(() =>
            {
                MainWindow.Instance.AllowSearch          = false;
                MainWindow.Instance.LblLoadProgress.Text = "Reloading Database...";
            });
            StockDownloader downloader = new StockDownloader();

            downloader.DownloadComplete += Complete;
            downloader.DownloadStocks();
        }
Esempio n. 5
0
        private void DownloadStocks()
        {
            Dispatcher.Invoke(() =>
            {
                AllowSearch          = false;
                LblLoadProgress.Text = "Reloading Database...";
            });
            StockDownloader downloader = new StockDownloader();

            downloader.DownloadComplete += Complete;
            downloader.DownloadStocks();
        }
Esempio n. 6
0
 private void DownloadStocks()
 {
     Dispatcher.Invoke(() =>
     {
         btnCancel.IsEnabled   = false;
         btnDownload.IsEnabled = false;
     });
     Downloader = new StockDownloader();
     Downloader.StatusUpdate     += UpdateStatus;
     Downloader.DownloadComplete += Complete;
     Downloader.DownloadStocks();
 }
Esempio n. 7
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;
            }
        }
Esempio n. 8
0
        private void Scan(DateTime from, DateTime to)
        {
            //            DateTime from = dtFrom.SelectedDate.Value;
            //            DateTime to = dtTo.SelectedDate.Value;
            List <BacktestResult> results    = new List <BacktestResult>();
            StockDownloader       downloader = new StockDownloader();
            AroonCrossStrategy    strategy   = new AroonCrossStrategy(14, 10000.00m);

//            foreach (StockInfo stock in Stocks)
//            {
//                try
//                {
//                    HistoricalPriceVolume graph = downloader.DownloadHistoricalData(stock.Symbol, from, to);
//
//                    BacktestResult result = strategy.BackTest(stock, graph);
//                    results.Add(result);
//                    //                AroonIndicator aroon = new AroonIndicator("aroon_5", 5);
//                    //                aroon.Calculate(graph);
//
//                    //                Aroon aroon = new Aroon(5);
//                    //                aroon.Calculate(graph);
//                    Dispatcher.Invoke(delegate
//                    {
//                        Bar.Value = ++downloaded;
//                        ProgressBox.AppendText($"Finished analysing data for {stock.Symbol}\n");
//                        ProgressBox.ScrollToEnd();
//                    });
//                }
//                catch (Exception)
//                {
//                    // ignored
//                }
//            }



            results.Clear();

            ConcurrentBag <string> graphs = new ConcurrentBag <string>();

            Parallel.ForEach(Stocks, stock =>
            {
                try
                {
//                    HistoricalPriceVolume graph = downloader.DownloadHistoricalData(stock.Symbol, from, to);
                    graphs.Add(downloader.DownloadHistoricalData(stock.Symbol, from, to));
                    //                    BacktestResult result = strategy.BackTest(stock, graph);
                    //                    results.Add(result);
                }
                catch (Exception)
                {
                    // ignored
                }
            });
//            Debug.WriteLine("par: " + (DateTime.Now - old));

            List <HistoricalPriceVolume> graphs2 = new List <HistoricalPriceVolume>();

//            foreach (StockInfo stock in Stocks)
//            {
//                try
//                {
//                    HistoricalPriceVolume graph = downloader.DownloadHistoricalData(stock.Symbol, from, to);
//                    graphs2.Add(graph);
//                    //                    BacktestResult result = strategy.BackTest(stock, graph);
//                    //                    results.Add(result);
//                }
//                catch (Exception)
//                {
//                    // ignored
//                }
//            }

            Dispatcher.Invoke(delegate
            {
                BacktestResults window = new BacktestResults(results);
                window.Show();
            });
        }