Ejemplo n.º 1
0
        private void searchButtonClick(object sender, RoutedEventArgs e)
        {
            string searchItem = this.SearchBox.Text;
            dataWindow = new DataWindow();
            dataWindow.Owner = this;
            StockInfo info = new StockInfo();

            newSearch(searchItem, this.dataWindow);
            this.dataWindow.Show();
            this.Hide();
        }
Ejemplo n.º 2
0
        public void newSearch(string searchItem, DataWindow window)
        {
            searchItem = searchItem.ToUpper();
            List<double> data = webInteractor.Search(searchItem);
            List<Image> charts = new List<Image>();

            StockInfo info = new StockInfo();
            Dictionary<Util.TimeType, StockInfo> newStockInformation = Calculator.calculateAllStockInfo(data);
            foreach (Util.TimeType time in Util.Domain.TIMES)
            {
                newStockInformation[time].Graph = webInteractor.getGraph(time);
                //charts.Add(webInteractor.getGraph(time));
            }
            //Dictionary<Util.TimeType, StockInfo> newStockInformation = new Dictionary<DataMiner.Util.TimeType, StockInfo>();
            window.dealWithResults(searchItem, newStockInformation);
            numWindows++;
        }
Ejemplo n.º 3
0
        private static StockInfo calcStockInfo(List<double> data, double spotPrice)
        {
            StockInfo results = new StockInfo();
            //Calcuating DCGR yields 1 less observation
            results.NumDays = data.Count + 1;
            results.Alpha = data.Average();
            results.Beta = StandardDeviation(data, results.Alpha);
            results.Max = data.Max();
            results.Min = data.Min();
            results.SpotPrice = spotPrice;

            List<double> NormDCGR = NormalizedDailyContGrowthRate(data, results.Alpha, results.Beta);
            results.MaxNormDCGR = NormDCGR.Max();
            results.MinNormDCGR = NormDCGR.Min();

            return results;
        }
Ejemplo n.º 4
0
        private DockPanel createStockInfo(TabItem currentTab, StockInfo stockInfo)
        {
            DockPanel stockinfo = new DockPanel();
            //Creating the stackpanel to store the information
            StackPanel info = new StackPanel();
            DockPanel.SetDock(info, Dock.Right);
            StackPanel data = new StackPanel();
            DockPanel.SetDock(info, Dock.Left);

            //Things added to the stack panel
            TextBlock name = new TextBlock();
            name.HorizontalAlignment = HorizontalAlignment.Center;
            name.Text = currentTab.Header.ToString().ToUpper();
            name.FontWeight = FontWeights.Bold;
            DockPanel.SetDock(name, Dock.Top);
            stockinfo.Children.Add(name);

            TextBlock days = new TextBlock();
            days.Text = "Days of data: ";
            days.HorizontalAlignment = HorizontalAlignment.Right;
            TextBlock daysdata = new TextBlock();
            daysdata.Text = stockInfo.NumDays.ToString();
            daysdata.HorizontalAlignment = HorizontalAlignment.Left;
            info.Children.Add(days);
            data.Children.Add(daysdata);

            TextBlock spot = new TextBlock();
            spot.Text = "Last Price: ";
            spot.HorizontalAlignment = HorizontalAlignment.Right;
            TextBlock spotdata = new TextBlock();
            spotdata.Text = stockInfo.SpotPrice.ToString();
            spotdata.HorizontalAlignment = HorizontalAlignment.Left;
            info.Children.Add(spot);
            data.Children.Add(spotdata);

            TextBlock alpha = new TextBlock();
            alpha.Text = "Alpha: ";
            alpha.HorizontalAlignment = HorizontalAlignment.Right;
            TextBlock alphadata = new TextBlock();
            alphadata.Text = Math.Round(stockInfo.Alpha, SIGFIG).ToString();
            alphadata.HorizontalAlignment = HorizontalAlignment.Left;
            info.Children.Add(alpha);
            data.Children.Add(alphadata);

            TextBlock beta = new TextBlock();
            beta.Text = "Beta: ";
            beta.HorizontalAlignment = HorizontalAlignment.Right;
            TextBlock betadata = new TextBlock();
            betadata.Text = Math.Round(stockInfo.Beta, SIGFIG).ToString();
            betadata.HorizontalAlignment = HorizontalAlignment.Left;
            info.Children.Add(beta);
            data.Children.Add(betadata);

            TextBlock min = new TextBlock();
            min.Text = "Min: ";
            min.HorizontalAlignment = HorizontalAlignment.Right;
            TextBlock mindata = new TextBlock();
            mindata.Text = Math.Round(stockInfo.Min, SIGFIG).ToString();
            mindata.HorizontalAlignment = HorizontalAlignment.Left;
            info.Children.Add(min);
            data.Children.Add(mindata);

            TextBlock max = new TextBlock();
            max.Text = "Max: ";
            max.HorizontalAlignment = HorizontalAlignment.Right;
            TextBlock maxdata = new TextBlock();
            maxdata.Text = Math.Round(stockInfo.Max, SIGFIG).ToString();
            maxdata.HorizontalAlignment = HorizontalAlignment.Left;
            info.Children.Add(max);
            data.Children.Add(maxdata);

            TextBlock MinNorm = new TextBlock();
            MinNorm.Text = "Min Norm DCGR: ";
            MinNorm.HorizontalAlignment = HorizontalAlignment.Right;
            TextBlock MinNormdata = new TextBlock();
            MinNormdata.Text = Math.Round(stockInfo.MinNormDCGR, SIGFIG).ToString();
            MinNormdata.HorizontalAlignment = HorizontalAlignment.Left;
            info.Children.Add(MinNorm);
            data.Children.Add(MinNormdata);

            TextBlock MaxNorm = new TextBlock();
            MaxNorm.Text = "Max Norm DCGR: ";
            MaxNorm.HorizontalAlignment = HorizontalAlignment.Right;
            TextBlock MaxNormdata = new TextBlock();
            MaxNormdata.Text = Math.Round(stockInfo.MaxNormDCGR, SIGFIG).ToString();
            MaxNormdata.HorizontalAlignment = HorizontalAlignment.Left;
            info.Children.Add(MaxNorm);
            data.Children.Add(MaxNormdata);

            stockinfo.Children.Add(info);
            stockinfo.Children.Add(data);

            return stockinfo;
        }