Exemple #1
0
        public override DataSeries Create(int n)
        {
            HighLowOpenCloseSeries ds = new HighLowOpenCloseSeries();

            Update(ds, n);

            return(ds);
        }
Exemple #2
0
        void NewData(object sender, RoutedEventArgs args)
        {
            int n = 20;

            // price series
            HighLowOpenCloseSeries hloc = (HighLowOpenCloseSeries)chart.Data.Children[0];

            // volume series
            XYDataSeries xyds = (XYDataSeries)chart.Data.Children[1];

            DateTime[] x    = new DateTime[n];
            double[]   hi   = new double[n];
            double[]   lo   = new double[n];
            double[]   op   = new double[n];
            double[]   cl   = new double[n];
            double[]   vals = new double[n];

            DateTime dt = DateTime.Today;

            for (int i = 0; i < n; i++)
            {
                x[i] = dt.AddDays(i);

                if (i > 0)
                {
                    op[i] = cl[i - 1];
                }
                else
                {
                    op[i] = 1000;
                }

                hi[i] = op[i] + rnd.Next(50);
                lo[i] = op[i] - rnd.Next(50);

                cl[i]   = rnd.Next((int)lo[i], (int)hi[i]);
                vals[i] = rnd.Next(200);
            }

            hloc.ChartType         = Price.SelectedIndex == 0 ? ChartType.HighLowOpenClose : ChartType.Candle;
            hloc.XValuesSource     = x;
            hloc.ValuesSource      = hi;
            hloc.HighValuesSource  = hi;
            hloc.LowValuesSource   = lo;
            hloc.OpenValuesSource  = op;
            hloc.CloseValuesSource = cl;

            xyds.ChartType     = Vol.SelectedIndex == 0 ? ChartType.Column : ChartType.Area;
            xyds.XValuesSource = x;
            xyds.ValuesSource  = vals;

            chart.View.AxisX.Min = DateTime.Today.AddDays(-1).ToOADate();
            chart.View.AxisX.Max = DateTime.Today.AddDays(20).ToOADate();
        }
Exemple #3
0
 private void Price_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
 {
     if (chart != null)
     {
         HighLowOpenCloseSeries ds = (HighLowOpenCloseSeries)chart.Data.Children[0];
         if (Price.SelectedIndex == 0)
         {
             ds.ChartType = ChartType.HighLowOpenClose;
         }
         else
         {
             ds.ChartType = ChartType.Candle;
         }
     }
 }
Exemple #4
0
        public override void Update(DataSeries ads, int n)
        {
            HighLowOpenCloseSeries ds = (HighLowOpenCloseSeries)ads;

            DateTime[] x  = new DateTime[n];
            double[]   hi = new double[n];
            double[]   lo = new double[n];
            double[]   op = new double[n];
            double[]   cl = new double[n];

            DateTime dt = DateTime.Today;

            for (int i = 0; i < n; i++)
            {
                x[i] = dt.AddDays(i);

                if (i > 0)
                {
                    op[i] = cl[i - 1];
                }
                else
                {
                    op[i] = 1000;
                }

                hi[i] = op[i] + rnd.Next(50);
                lo[i] = op[i] - rnd.Next(50);

                cl[i] = rnd.Next((int)lo[i], (int)hi[i]);
            }

            ds.XValuesSource     = x;
            ds.ValuesSource      = hi;
            ds.HighValuesSource  = hi;
            ds.LowValuesSource   = lo;
            ds.OpenValuesSource  = op;
            ds.CloseValuesSource = cl;
        }
Exemple #5
0
        public override DataSeries Create(int n)
        {
            HighLowOpenCloseSeries ds = new HighLowOpenCloseSeries();
              Update(ds, n);

              return ds;
        }