private RadCartesianChartView createChart()
        {
            RadCartesianChartView chart = new RadCartesianChartView(this.Activity);

            DateTimeCategoricalAxis horizontalAxis = new DateTimeCategoricalAxis();
            horizontalAxis.SetDateTimeFormat(new SimpleDateFormat("MM/dd"));
            horizontalAxis.DateTimeComponent = DateTimeComponent.Date;

            LinearAxis verticalAxis = new LinearAxis();

            DataPointBinding categoryBinding = new CategoryBinding();
            DataPointBinding openBinding = new OpenValueBinding();
            DataPointBinding highBinding = new HighValueBinding();
            DataPointBinding lowBinding = new LowValueBinding();
            DataPointBinding closeBinding = new CloseValueBinding();

            ArrayList data = this.getData();

            CandlestickSeries series = new CandlestickSeries();
            series.CategoryBinding = categoryBinding;
            series.OpenBinding = openBinding;
            series.HighBinding = highBinding;
            series.LowBinding = lowBinding;
            series.CloseBinding = closeBinding;
            series.Data = data;

            BollingerBandsIndicator bollingerBands = new BollingerBandsIndicator();
            bollingerBands.CategoryBinding = categoryBinding;
            bollingerBands.ValueBinding = closeBinding;
            bollingerBands.Period = 5;
            bollingerBands.StandardDeviations = 2;
            bollingerBands.Data = data;

            MovingAverageIndicator movingAverage = new MovingAverageIndicator();
            movingAverage.CategoryBinding = categoryBinding;
            movingAverage.ValueBinding = closeBinding;
            movingAverage.Period = 5;
            movingAverage.Data = data;

            chart.VerticalAxis = verticalAxis;
            chart.HorizontalAxis = horizontalAxis;
            chart.Series.Add(series);
            chart.Series.Add(bollingerBands);
            chart.Series.Add(movingAverage);

            // irrelevant
            horizontalAxis.LabelFitMode = AxisLabelFitMode.Rotate;

            return chart;
        }
Exemple #2
0
        public static CandlestickSeries CreateCandleStickSeries(List <CandleDataInfo> dataSeries)
        {
            CandlestickSeries candlestickSeries = new CandlestickSeries();

            foreach (var item in dataSeries)
            {
                candlestickSeries.DataPoints.Add(new OhlcDataPoint
                {
                    Open  = item.Open,
                    Close = item.Close,
                    Low   = item.Low,
                    High  = item.High
                });
            }


            return(candlestickSeries);
        }
		private RadCartesianChartView createChart() {
			RadCartesianChartView chart = new RadCartesianChartView(this.Activity); // context is an instance of Context.

			CandlestickSeries series = new CandlestickSeries();
			series.CategoryBinding = new CategoryBinding();
			series.OpenBinding = new OpenValueBinding();
			series.HighBinding = new HighValueBinding();
			series.LowBinding = new LowValueBinding();
			series.CloseBinding = new CloseValueBinding();

			series.Data = this.getData();
			chart.Series.Add(series);

			CategoricalAxis horizontalAxis = new CategoricalAxis();
			chart.HorizontalAxis = horizontalAxis;

			LinearAxis verticalAxis = new LinearAxis();
			chart.VerticalAxis = verticalAxis;



			return chart;
		}
 public void Add(ChartControl chart, Pane ownerPane)
 {
     owner = chart;
     // инициализируем индикатор
     candleSeries = new CandlestickSeries(Name)
     {
         DownFillColor = DownFillColor,
         UpFillColor   = UpFillColor,
         UpLineColor   = OutlineLineColor,
         DownLineColor = OutlineLineColor,
         BarDrawMode   = DrawMode
     };
     seriesBound = new PartSeries("Границы Каймана")
     {
         LineColor = OutlineLineColor,
         ForeColor = OutlineLineColor,
         LineStyle = LineStyle.Dot,
         LineWidth = 1
     };
     SeriesResult = new List <Series.Series> {
         candleSeries, seriesBound
     };
     EntitleIndicator();
 }
        private void UpdateStockSeries()
        {
            DateTimeCategoricalAxis horizontalAxis = this.radChartView2.Axes[0] as DateTimeCategoricalAxis;
            LinearAxis verticalAxis = this.radChartView2.Axes[1] as LinearAxis;

            this.radChartView2.Series.Clear();

            if (this.radDropDownList1.SelectedItem != null)
            {
                string seriesType = this.radDropDownList1.SelectedItem.Text;

                OhlcSeries series;
                if (seriesType == "Candlestick")
                {
                    series = new CandlestickSeries();
                }
                else
                {
                    series = new OhlcSeries();
                }

                series.BorderColor      = Color.FromArgb(102, 102, 102);
                series.BackColor        = Color.FromArgb(102, 102, 102);
                series.HorizontalAxis   = horizontalAxis;
                series.VerticalAxis     = verticalAxis;
                series.OpenValueMember  = "Open";
                series.HighValueMember  = "High";
                series.LowValueMember   = "Low";
                series.CloseValueMember = "Close";
                series.CategoryMember   = "Date";
                series.DataSource       = viewModel.Data;

                this.radChartView2.Series.Add(series);

                if (!(series is CandlestickSeries))
                {
                    foreach (OhlcPointElement point in series.Children)
                    {
                        if (point.IsFalling)
                        {
                            point.BorderColor = Color.FromArgb(175, 175, 175);
                        }
                    }
                }
            }

            if (this.radDropDownList2.SelectedItem != null)
            {
                IndicatorBase indicator = CreateMAIndicator(this.radDropDownList2.SelectedItem.Text);
                indicator.BorderColor = Color.Red;
                indicator.PointSize   = SizeF.Empty;

                IParentIndicator parentIndicator = indicator as IParentIndicator;
                if (parentIndicator != null)
                {
                    parentIndicator.ChildIndicator.BorderColor = Color.Black;
                }

                this.radChartView2.Series.Add(indicator);
            }
        }
 /// <summary>
 /// Initializes a new instance of the CandlestickSeriesAutomationPeer class.
 /// </summary>
 public CandlestickSeriesAutomationPeer(CandlestickSeries owner)
     : base(owner)
 {
 }