public SARProFunctionChart(ChartView BaseChart)
        {
            candle      = new Candle();
            line        = new Line();
            sarFunction = new SARFunction();
            var         = new Variables.Variables();

            Themes.CandleGodStyle(candle);

            BaseChart.Chart.Title.Text                   = "Stop-And-Reversal";
            BaseChart.Chart.Axes.Left.Automatic          = true;
            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;
            BaseChart.Chart.Axes.Bottom.Automatic        = true;

            FillSampleValues(candle, 10);
            candle.Title = "Data Source";

            line.DataSource      = candle;
            line.Function        = sarFunction;
            line.Title           = "SAR";
            line.Color           = var.GetPaletteBasic[2];
            line.LinePen.Width   = 3;
            line.Pointer.Visible = true;
            line.Marks.Visible   = true;

            sarFunction.AccelerationFactor = 0.019999999552965164;
            sarFunction.MaxStep            = 0.30000001192092896;

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(line);

            line.Marks.Font.Size         = 12;
            line.Marks.TailStyle         = MarksTail.None;
            line.Marks.FollowSeriesColor = true;
        }
示例#2
0
        public CompressionOHLCProFunctionChart(ChartView BaseChart)
        {
            candle         = new Candle();
            candleSource   = new Candle();
            compressOHLC   = new CompressOHLC();
            var            = new Variables.Variables();
            this.BaseChart = BaseChart;

            Themes.CandleGodStyle(candle);

            BaseChart.Chart.Series.Add(candle);

            candleSource.FillSampleValues(15);

            candle.Function   = compressOHLC;
            candle.DataSource = candleSource;

            compressOHLC.Period   = 2;
            compressOHLC.Compress = CompressionPeriod.ocMonth;
            compressOHLC.Series   = candleSource;

            BaseChart.Chart.Axes.Left.Automatic          = true;
            BaseChart.Chart.Axes.Bottom.Automatic        = true;
            BaseChart.Chart.Legend.Visible               = false;
            BaseChart.Chart.Axes.Left.Increment          = 15;
            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;

            ((((BaseChart.Parent as StackLayout).Parent as Grid).Parent as ContentPage).Parent as TabbedPage).Title = "Compression";

            AddCompressionToolbarItem();

            BaseChart.Chart.Header.Text = "Compression OHLC - " + compressionPicker.SelectedItem;
        }
示例#3
0
        public ExpMovAverageProFunctionChart(ChartView BaseChart)
        {
            candle        = new Candle();
            line          = new Line();
            expMovAverage = new ExpMovAverage();
            var           = new Variables.Variables();

            Themes.CandleGodStyle(candle);

            BaseChart.Chart.Title.Text = "Exponential Moving Average";

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(line);

            FillSampleValues(candle, 15);
            candle.Title = "Data Source";
            candle.YValues.DataMember = "Close";

            line.Color           = var.GetPaletteBasic[2];
            line.DataSource      = candle;
            line.Function        = expMovAverage;
            line.Pointer.Visible = true;
            line.Pointer.Color   = var.GetPaletteBasic[2];
            line.Title           = "Exp. Mov. Average";
            line.LinePen.Width   = 3;

            expMovAverage.Period = 14;

            BaseChart.Chart.Axes.Left.Increment          = 20;
            BaseChart.Chart.Axes.Left.Automatic          = true;
            BaseChart.Chart.Axes.Bottom.Automatic        = true;
            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;
        }
示例#4
0
        public ACProFunctionChart(ChartView BaseChart)
        {
#if !TEE_STD
            this.acFunction = new ACFunction();
            this.candle     = new Candle();
            this.volume     = new Volume();
            this.myAxisLeft = new Axis();
            this.BaseChart  = BaseChart;
            this.var        = new Variables.Variables();

            Themes.CandleGodStyle(candle);

            BaseChart.Chart.Header.Text = "Acceleration/Deceleration Indicator (AC)";

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(volume);
            BaseChart.Chart.Axes.Custom.Add(myAxisLeft);

            BaseChart.Chart.Axes.Left.RelativePosition   = 0;
            BaseChart.Chart.Axes.Left.StartPosition      = 0;
            BaseChart.Chart.Axes.Left.EndPosition        = 55;
            BaseChart.Chart.Axes.Left.Automatic          = true;
            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;
            BaseChart.Chart.Axes.Left.Increment          = 15;

            BaseChart.Chart.Axes.Bottom.RelativePosition = 0;
            BaseChart.Chart.Axes.Bottom.StartPosition    = 0;
            BaseChart.Chart.Axes.Bottom.EndPosition      = 100;
            BaseChart.Chart.Axes.Bottom.Automatic        = true;

            myAxisLeft = Themes.CustomAxisLeft(myAxisLeft);

            FillSampleValues(candle, 20, 200);
            candle.HorizAxis = HorizontalAxis.Bottom;
            candle.VertAxis  = VerticalAxis.Left;
            candle.Title     = "Data Source";

            volume.HorizAxis      = HorizontalAxis.Bottom;
            volume.VertAxis       = VerticalAxis.Custom;
            volume.CustomVertAxis = myAxisLeft;
            volume.Function       = acFunction;
            volume.DataSource     = candle;
            volume.Title          = "AC";
            volume.LinePen.Width  = 3;

            acFunction.Period = 2;
            acFunction.Series = candle;
#endif
        }
示例#5
0
        public BollingerProFunctionChart(ChartView BaseChart)
        {
            candle            = new Candle();
            line              = new Line();
            bollingerFunction = new Bollinger();
            var = new Variables.Variables();

            Themes.CandleGodStyle(candle);

            BaseChart.Chart.Header.Text = "Bollinger Bands";

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(line);

            candle.FillSampleValues(20);
            candle.HorizAxis = HorizontalAxis.Bottom;
            candle.VertAxis  = VerticalAxis.Left;
            candle.Title     = "Data Source";

            line.DataSource    = candle;
            line.Function      = bollingerFunction;
            line.HorizAxis     = HorizontalAxis.Bottom;
            line.VertAxis      = VerticalAxis.Left;
            line.Title         = "Bollinger";
            line.LinePen.Width = 3;
            line.Color         = var.GetPaletteBasic[2];

            bollingerFunction.Deviation            = 2;
            bollingerFunction.Exponential          = false;
            bollingerFunction.LowBandPen.Color     = var.GetPaletteBasic[3];
            bollingerFunction.UpperBandPen.Color   = var.GetPaletteBasic[2];
            bollingerFunction.UpperBandPen.Visible = true;
            bollingerFunction.LowBand.Visible      = true;
            bollingerFunction.LowBandPen.Width     = 3;
            bollingerFunction.UpperBandPen.Width   = 3;
            bollingerFunction.Series = candle;

            bollingerFunction.LowBand.XValues.DataMember = "X";
            bollingerFunction.LowBand.XValues.DateTime   = true;
            bollingerFunction.LowBand.XValues.Order      = ValueListOrder.Ascending;
            bollingerFunction.LowBand.YValues.DataMember = "Y";
            bollingerFunction.Period = 10;


            BaseChart.Chart.Axes.Left.Automatic          = true;
            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;
            BaseChart.Chart.Axes.Bottom.SetMinMax(BaseChart.Chart.Axes.Bottom.MinXValue - 1, BaseChart.Chart.Axes.Bottom.MaxXValue + 1);
            BaseChart.Chart.Axes.Left.Increment = 10;
        }
        public AOProFunctionChart(ChartView BaseChart)
        {
            candle         = new Candle();
            volume         = new Volume();
            aoFunction     = new AOFunction();
            var            = new Variables.Variables();
            this.BaseChart = BaseChart;
            leftAxis       = new Axis();

            Themes.CandleGodStyle(candle);
            Themes.CustomAxisLeft(leftAxis);
            leftAxis.AxisPen.Transparency = 100;
            leftAxis.Labels.Transparency  = 100;
            leftAxis.Grid.Visible         = false;

            BaseChart.Chart.Header.Text = "Awesome Oscillator (AO)";

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(volume);

            FillSampleValues(candle);

            candle.VertAxis  = VerticalAxis.Left;
            candle.HorizAxis = HorizontalAxis.Bottom;
            candle.Title     = "Data Source";

            volume.UseOrigin      = true;
            volume.DataSource     = candle;
            volume.Function       = aoFunction;
            volume.HorizAxis      = HorizontalAxis.Bottom;
            volume.VertAxis       = VerticalAxis.Custom;
            volume.CustomVertAxis = leftAxis;
            volume.Title          = "AO";
            volume.LinePen.Width  = 3;

            aoFunction.Period = 12;
            aoFunction.Series = candle;

            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;

            BaseChart.Chart.Axes.Left.SetMinMax(BaseChart.Chart.Axes.Left.MinYValue - 100, BaseChart.Chart.Axes.Left.MaxYValue + 10);
            BaseChart.Chart.Axes.Left.Increment   = 20;
            BaseChart.Chart.Axes.Bottom.Automatic = true;
            BaseChart.Chart.Axes.Custom.Add(leftAxis);
        }
示例#7
0
        public CCIProFunctionChart(ChartView BaseChart)
        {
            candle      = new Candle();
            line        = new Line();
            cciFunction = new CCIFunction();
            var         = new Variables.Variables();
            leftAxis    = new Axis();

            Themes.CandleGodStyle(candle);

            BaseChart.Chart.Header.Text = "Commodity Channel Index (CCI)";

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(line);

            Themes.DoubleAxisChart(BaseChart);
            Themes.CustomAxisLeft(leftAxis);

            candle.FillSampleValues(15);
            candle.HorizAxis = HorizontalAxis.Bottom;
            candle.VertAxis  = VerticalAxis.Left;
            candle.Title     = "Data Source";

            line.DataSource     = candle;
            line.Function       = cciFunction;
            line.HorizAxis      = HorizontalAxis.Bottom;
            line.VertAxis       = VerticalAxis.Custom;
            line.CustomVertAxis = leftAxis;
            line.Title          = "CCI";
            line.LinePen.Width  = 3;
            line.Color          = var.GetPaletteBasic[2];

            cciFunction.Series      = candle;
            cciFunction.Period      = 4;
            cciFunction.Constant    = 0.005;
            cciFunction.PeriodStyle = PeriodStyles.Range;

            BaseChart.Chart.Axes.Left.SetMinMax(BaseChart.Chart.Axes.Left.MinYValue - 30, BaseChart.Chart.Axes.Left.MaxYValue + 30);
            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;
            BaseChart.Chart.Axes.Bottom.Automatic        = true;
            BaseChart.Chart.Axes.Custom.Add(leftAxis);

            leftAxis.Automatic = true;
        }
        public AlligatorProFunctionChart(ChartView BaseChart)
        {
#if !TEE_STD
            allFunction    = new AlligatorFunction();
            candle         = new Candle();
            line           = new Line();
            this.BaseChart = BaseChart;
            var            = new Variables.Variables();

            Themes.CandleGodStyle(candle);
            Themes.UpdateAxes(BaseChart.Chart.Axes.Left, BaseChart.Chart.Axes.Bottom);

            BaseChart.Chart.Header.Text = "Alligator Technical Indicator";

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(line);

            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;
            BaseChart.Chart.Axes.Left.Automatic          = true;
            BaseChart.Chart.Axes.Bottom.Automatic        = true;
            BaseChart.Chart.Axes.Left.Increment          = 10;

            candle.HorizAxis = HorizontalAxis.Bottom;
            candle.VertAxis  = VerticalAxis.Left;
            candle.Title     = "Data Source";
            FillSampleValues(candle, 15);

            allFunction.LipsPen.Color  = var.GetPaletteBasic[3];
            allFunction.LipsPen.Width  = 3;
            allFunction.TeethPen.Color = var.GetPaletteBasic[4];
            allFunction.TeethPen.Width = 3;

            line.HorizAxis     = HorizontalAxis.Bottom;
            line.VertAxis      = VerticalAxis.Left;
            line.Title         = "Alligator";
            line.Function      = allFunction;
            line.DataSource    = candle;
            line.LinePen.Color = var.GetPaletteBasic[0];
            line.SeriesColor   = var.GetPaletteBasic[0];
            line.LinePen.Width = 3;
#endif
        }
        public RVIProFunctionChart(ChartView BaseChart)
        {
            candle      = new Candle();
            line        = new Line();
            rviFunction = new RVIFunction();
            var         = new Variables.Variables();
            leftAxis    = new Axis();

            Themes.CandleGodStyle(candle);
            Themes.DoubleAxisChart(BaseChart);
            Themes.CustomAxisLeft(leftAxis);

            BaseChart.Chart.Title.Text = "Relative Vigor Index";
            BaseChart.Chart.Axes.Custom.Add(leftAxis);
            BaseChart.Chart.Axes.Left.Automatic          = true;
            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;
            BaseChart.Chart.Axes.Bottom.Automatic        = true;
            leftAxis.Increment = 0.1;
            leftAxis.Automatic = true;

            FillSampleValues(candle, 20);
            candle.Title     = "DataSouce";
            candle.HorizAxis = HorizontalAxis.Bottom;
            candle.VertAxis  = VerticalAxis.Left;

            line.Title          = "RVI";
            line.DataSource     = candle;
            line.Function       = rviFunction;
            line.Color          = var.GetPaletteBasic[2];
            line.LinePen.Width  = 3;
            line.HorizAxis      = HorizontalAxis.Bottom;
            line.VertAxis       = VerticalAxis.Custom;
            line.CustomVertAxis = leftAxis;

            rviFunction.Period               = 10;
            rviFunction.Signal.Visible       = true;
            rviFunction.Signal.LinePen.Width = 3;
            rviFunction.Signal.Color         = var.GetPaletteBasic[3];

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(line);
        }
示例#10
0
        public ATRProFunctionChart(ChartView BaseChart)
        {
            candle         = new Candle();
            line           = new Line();
            atrFunction    = new ATRFunction();
            var            = new Variables.Variables();
            this.BaseChart = BaseChart;
            leftAxis       = new Axis();

            BaseChart.Chart.Axes.Custom.Add(leftAxis);

            Themes.CandleGodStyle(candle);
            Themes.CustomAxisLeft(leftAxis);
            Themes.DoubleAxisChart(BaseChart);
            leftAxis.Automatic = true;

            BaseChart.Chart.Header.Text = "Average True Range Indicator (ATR)";

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(line);

            candle.FillSampleValues(40);

            candle.VertAxis  = VerticalAxis.Left;
            candle.HorizAxis = HorizontalAxis.Bottom;
            candle.Title     = "Data Source";

            line.DataSource     = candle;
            line.Function       = atrFunction;
            line.VertAxis       = VerticalAxis.Custom;
            line.CustomVertAxis = leftAxis;
            line.HorizAxis      = HorizontalAxis.Bottom;
            line.Title          = "ATR";
            line.LinePen.Width  = 3;
            line.Color          = var.GetPaletteBasic[2];

            atrFunction.Period = 10;
            atrFunction.Series = candle;

            BaseChart.Chart.Axes.Left.Automatic   = true;
            BaseChart.Chart.Axes.Bottom.Automatic = true;
        }
        public RSIProFunctionChart(ChartView BaseChart)
        {
            candle      = new Candle();
            line        = new Line();
            rsiFunction = new RSIFunction();
            var         = new Variables.Variables();
            rightAxis   = new Axis();

            Themes.CandleGodStyle(candle);
            Themes.DoubleAxisChart(BaseChart);
            Themes.CustomAxisRight(rightAxis);

            BaseChart.Chart.Title.Text            = "Relative Strength Index";
            BaseChart.Chart.Axes.Left.Automatic   = true;
            BaseChart.Chart.Axes.Bottom.Automatic = true;
            BaseChart.Chart.Axes.Custom.Add(rightAxis);
            BaseChart.Chart.Panel.MarginRight = 10;
            rightAxis.Automatic = true;

            FillSampleValues(candle, 20, 250);
            candle.Title     = "Candle";
            candle.HorizAxis = HorizontalAxis.Bottom;
            candle.VertAxis  = VerticalAxis.Left;

            line.DataSource     = candle;
            line.Function       = rsiFunction;
            line.Color          = var.GetPaletteBasic[2];
            line.LinePen.Width  = 3;
            line.HorizAxis      = HorizontalAxis.Bottom;
            line.VertAxis       = VerticalAxis.Custom;
            line.CustomVertAxis = rightAxis;
            line.Title          = "R.S.I.";

            rsiFunction.Period = 5;
            rsiFunction.Style  = RSIStyle.Close;

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(line);
        }
        public SmoothMovAvgProFunctionChart(ChartView BaseChart)
        {
            candle                = new Candle();
            line                  = new Line();
            lineSmooth            = new Line();
            movingAverageFunction = new MovingAverage();
            smoothMovAvgFunction  = new SmoothedMovAvgFunction();
            var = new Variables.Variables();

            Themes.CandleGodStyle(candle);

            BaseChart.Chart.Title.Text                   = "Smoothed Moving Average";
            BaseChart.Chart.Axes.Left.Automatic          = true;
            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;
            BaseChart.Chart.Axes.Bottom.Automatic        = true;

            FillSampleValues(candle, 20);
            candle.Title = "Candle";

            line.DataSource    = candle;
            line.Color         = var.GetPaletteBasic[2];
            line.LinePen.Width = 3;
            line.Function      = movingAverageFunction;
            line.Title         = "Moving Average";

            lineSmooth.DataSource    = candle;
            lineSmooth.Function      = smoothMovAvgFunction;
            lineSmooth.Color         = var.GetPaletteBasic[3];
            lineSmooth.LinePen.Width = 3;
            lineSmooth.Title         = "Smooth Moving Average";

            movingAverageFunction.Period = 3;
            smoothMovAvgFunction.Period  = 3;

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(line);
            BaseChart.Chart.Series.Add(lineSmooth);
        }
        public ADXProFunctionChart(ChartView BaseChart)
        {
            this.adxFunction = new ADXFunction();
            this.candle      = new Candle();
            this.line        = new Line();
            this.myAxisLeft  = new Axis();
            this.BaseChart   = BaseChart;
            this.var         = new Variables.Variables();

            Themes.CandleGodStyle(candle);

            BaseChart.Chart.Header.Text = "Average Directional Change (ADX)";

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(line);
            BaseChart.Chart.Axes.Custom.Add(myAxisLeft);

            BaseChart.Chart.Axes.Left.RelativePosition = 0;
            BaseChart.Chart.Axes.Left.StartPosition    = 0;
            BaseChart.Chart.Axes.Left.EndPosition      = 55;
            //BaseChart.Chart.Axes.Left.Automatic = true;
            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;
            BaseChart.Chart.Axes.Left.Increment          = 20;

            BaseChart.Chart.Axes.Bottom.RelativePosition = 0;
            BaseChart.Chart.Axes.Bottom.StartPosition    = 0;
            BaseChart.Chart.Axes.Bottom.EndPosition      = 100;
            //BaseChart.Chart.Axes.Bottom.Automatic = true;

            myAxisLeft = Themes.CustomAxisLeft(myAxisLeft);

            FillSampleValues(candle);
            candle.HorizAxis = HorizontalAxis.Bottom;
            candle.VertAxis  = VerticalAxis.Left;
            candle.Title     = "Data Source";

            line.HorizAxis      = HorizontalAxis.Bottom;
            line.VertAxis       = VerticalAxis.Custom;
            line.CustomVertAxis = myAxisLeft;
            line.Function       = adxFunction;
            line.DataSource     = candle;
            line.Title          = "ADX";
            line.LinePen.Width  = 3;
            line.Color          = var.GetPaletteBasic[4];

            adxFunction.Period                = 2;
            adxFunction.DMDown.Color          = System.Drawing.Color.FromArgb(((int)(((byte)(78)))), ((int)(((byte)(151)))), ((int)(((byte)(168)))));
            adxFunction.DMDown.ColorEach      = false;
            adxFunction.DMDown.CustomVertAxis = myAxisLeft;
            adxFunction.DMDown.LinePen.Color  = var.GetPaletteBasic[2];
            adxFunction.DMDown.LinePen.Width  = 3;
            adxFunction.DMDown.Marks.Brush.Gradient.EndColor    = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(0)))));
            adxFunction.DMDown.Marks.Brush.Gradient.MiddleColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
            adxFunction.DMDown.Marks.Brush.Gradient.StartColor  = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
            adxFunction.DMDown.Marks.Callout.ArrowHead          = ArrowHeadStyles.None;
            adxFunction.DMDown.Marks.Callout.ArrowHeadSize      = 8;
            adxFunction.DMDown.Marks.Callout.Brush.Color        = System.Drawing.Color.Black;
            adxFunction.DMDown.Marks.Callout.Distance           = 0;
            adxFunction.DMDown.Marks.Callout.Draw3D             = false;
            adxFunction.DMDown.Marks.Callout.Length             = 10;
            adxFunction.DMDown.Marks.Callout.Style    = PointerStyles.Rectangle;
            adxFunction.DMDown.Marks.Callout.Visible  = false;
            adxFunction.DMDown.Marks.Font.Brush.Color = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
            adxFunction.DMDown.Marks.Transparent      = true;
            adxFunction.DMDown.Legend.Visible         = false;
            adxFunction.DMDown.Title              = "DMDown";
            adxFunction.DMDown.TreatNulls         = TreatNullsStyle.Ignore;
            adxFunction.DMDown.VertAxis           = VerticalAxis.Custom;
            adxFunction.DMDown.CustomVertAxis     = myAxisLeft;
            adxFunction.DMDown.XValues.DataMember = "X";
            adxFunction.DMDown.XValues.DateTime   = true;
            adxFunction.DMDown.XValues.Order      = ValueListOrder.Ascending;
            adxFunction.DMDown.YValues.DataMember = "Y";

            adxFunction.DMUp.Color         = System.Drawing.Color.FromArgb(((int)(((byte)(241)))), ((int)(((byte)(76)))), ((int)(((byte)(20)))));
            adxFunction.DMUp.ColorEach     = false;
            adxFunction.DMUp.LinePen.Color = var.GetPaletteBasic[3];
            adxFunction.DMUp.LinePen.Width = 3;
            adxFunction.DMUp.Marks.Brush.Gradient.EndColor    = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(0)))));
            adxFunction.DMUp.Marks.Brush.Gradient.MiddleColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
            adxFunction.DMUp.Marks.Brush.Gradient.StartColor  = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
            adxFunction.DMUp.Marks.Callout.ArrowHead          = ArrowHeadStyles.None;
            adxFunction.DMUp.Marks.Callout.ArrowHeadSize      = 8;
            adxFunction.DMUp.Marks.Callout.Brush.Color        = System.Drawing.Color.Black;
            adxFunction.DMUp.Marks.Callout.Distance           = 0;
            adxFunction.DMUp.Marks.Callout.Draw3D             = false;
            adxFunction.DMUp.Marks.Callout.Length             = 10;
            adxFunction.DMUp.Marks.Callout.Style    = PointerStyles.Rectangle;
            adxFunction.DMUp.Marks.Callout.Visible  = false;
            adxFunction.DMUp.Marks.Font.Brush.Color = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
            adxFunction.DMUp.Marks.Transparent      = true;
            adxFunction.DMUp.Legend.Visible         = false;
            adxFunction.DMUp.Title              = "DMUp";
            adxFunction.DMUp.TreatNulls         = TreatNullsStyle.Ignore;
            adxFunction.DMUp.VertAxis           = VerticalAxis.Custom;
            adxFunction.DMUp.CustomVertAxis     = myAxisLeft;
            adxFunction.DMUp.XValues.DataMember = "X";
            adxFunction.DMUp.XValues.DateTime   = true;
            adxFunction.DMUp.XValues.Order      = ValueListOrder.Ascending;
            adxFunction.DMUp.YValues.DataMember = "Y";

            BaseChart.Chart.Axes.Left.SetMinMax(BaseChart.Chart.Axes.Left.MinYValue - 10, BaseChart.Chart.Axes.Left.MaxYValue + 10);
            BaseChart.Chart.Axes.Bottom.SetMinMax(BaseChart.Chart.Axes.Bottom.MinXValue - 1, BaseChart.Chart.Axes.Bottom.MaxXValue + 1);
        }
        public OBVProFunctionChart(ChartView BaseChart)
        {
            candle      = new Candle();
            volume      = new Volume();
            line        = new Line();
            obvFunction = new OBVFunction();
            var         = new Variables.Variables();
            midLeftAxis = new Axis();
            botLeftAxis = new Axis();

            Themes.CandleGodStyle(candle);
            Themes.CustomAxisLeft(midLeftAxis);
            Themes.CustomAxisLeft(botLeftAxis);
            Themes.UpdateAxes(BaseChart.Chart.Axes.Left, BaseChart.Chart.Axes.Right);
            Themes.TripleAxisChart(BaseChart, midLeftAxis, botLeftAxis);
            BaseChart.Chart.Axes.Custom.Add(midLeftAxis);
            BaseChart.Chart.Axes.Custom.Add(botLeftAxis);

            BaseChart.Chart.Title.Text = "On Balance Volume";

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(volume);
            BaseChart.Chart.Series.Add(line);

            candle.FillSampleValues(20);
            candle.HorizAxis = HorizontalAxis.Bottom;
            candle.VertAxis  = VerticalAxis.Left;
            candle.Title     = "Candle";

            volume.HorizAxis          = HorizontalAxis.Bottom;
            volume.VertAxis           = VerticalAxis.Custom;
            volume.CustomVertAxis     = midLeftAxis;
            volume.XValues.DataMember = "X";
            volume.XValues.Order      = ValueListOrder.Ascending;
            volume.YValues.DataMember = "Y";
            volume.Title = "Volume";
            volume.FillSampleValues(20);
            volume.LinePen.Width = 3;
            volume.Color         = var.GetPaletteBasic[3];

            line.HorizAxis      = HorizontalAxis.Bottom;
            line.VertAxis       = VerticalAxis.Custom;
            line.CustomVertAxis = botLeftAxis;
            line.DataSource     = candle;
            line.Function       = obvFunction;
            line.Title          = "CLV Function";
            line.LinePen.Width  = 3;
            line.Color          = var.GetPaletteBasic[2];

            obvFunction.Period = 1;
            obvFunction.Series = candle;
            obvFunction.Volume = volume;

            BaseChart.Chart.Axes.Custom.Add(midLeftAxis);
            BaseChart.Chart.Axes.Custom.Add(botLeftAxis);


            midLeftAxis.Automatic = true;
            botLeftAxis.Automatic = true;
            BaseChart.Chart.Axes.Left.Automatic   = true;
            BaseChart.Chart.Axes.Bottom.Automatic = true;
        }
示例#15
0
        public GatorOscillProFunctionChart(ChartView BaseChart)
        {
            candle    = new Candle();
            line      = new Line();
            alligator = new AlligatorFunction();
            volume    = new Volume();
            gator     = new GatorFunction();
            var       = new Variables.Variables();
            leftAxis  = new Axis();

            BaseChart.Chart.Title.Text = "Gator Oscillator";

            Themes.CandleGodStyle(candle);
            Themes.DoubleAxisChart(BaseChart);
            Themes.CustomAxisLeft(leftAxis);

            FillSampleValues(candle, 60, 200);

            candle.Title              = "Data Source";
            candle.HorizAxis          = HorizontalAxis.Bottom;
            candle.VertAxis           = VerticalAxis.Left;
            candle.Marks.Transparency = 100;

            line.Title           = "Alligator";
            line.DataSource      = candle;
            line.Function        = alligator;
            line.HorizAxis       = HorizontalAxis.Bottom;
            line.VertAxis        = VerticalAxis.Left;
            line.LinePen.Width   = 2;
            line.Marks.DrawEvery = 8;

            FillSampleValues(volume, 15);
            volume.Title           = "Gator";
            volume.UseOrigin       = true;
            volume.DataSource      = candle;
            volume.Function        = gator;
            volume.HorizAxis       = HorizontalAxis.Bottom;
            volume.VertAxis        = VerticalAxis.Custom;
            volume.CustomVertAxis  = leftAxis;
            volume.LinePen.Width   = 2;
            volume.Marks.DrawEvery = 5;

            alligator.LipsPen.Color         = var.GetPaletteBasic[2];
            alligator.LipsPen.Width         = 3;
            alligator.TeethPen.Color        = var.GetPaletteBasic[3];
            alligator.TeethPen.Width        = 3;
            alligator.Lips.Marks.DrawEvery  = 5;
            alligator.Teeth.Marks.DrawEvery = 5;

            gator.Bottom.Marks.Transparency = 100;

            leftAxis.Automatic = true;
            leftAxis.Increment = 1;
            BaseChart.Chart.Axes.Left.Automatic          = true;
            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;
            BaseChart.Chart.Axes.Custom.Add(leftAxis);
            BaseChart.Chart.Axes.Bottom.Automatic = true;
            BaseChart.Chart.Legend.Visible        = false;
            BaseChart.Chart.Axes.Left.Increment   = 10;

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(line);
            BaseChart.Chart.Series.Add(volume);
        }
        public MoneyFlowProFunctionChart(ChartView BaseChart)
        {
            candle            = new Candle();
            volume            = new Volume();
            line              = new Line();
            moneyFlowFunction = new MoneyFlowFunction();
            var       = new Variables.Variables();
            rightAxis = new Axis();

            BaseChart.Chart.Header.Text = "Money Flow Index";

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(volume);
            BaseChart.Chart.Series.Add(line);

            Themes.CandleGodStyle(candle);
            Themes.CustomAxisRight(rightAxis);
            Themes.UpdateAxes(BaseChart.Chart.Axes.Left, BaseChart.Chart.Axes.Bottom);
            Themes.DoubleAxisChart(BaseChart);
            BaseChart.Chart.Axes.Custom.Add(rightAxis);

            BaseChart.Chart.Axes.Left.Automatic          = true;
            BaseChart.Chart.Axes.Left.Ticks.Transparency = 100;
            BaseChart.Chart.Axes.Bottom.Automatic        = true;
            rightAxis.Automatic = true;

            candle.FillSampleValues(15);
            candle.Title     = "Candle";
            candle.HorizAxis = HorizontalAxis.Bottom;
            candle.VertAxis  = VerticalAxis.Left;

            volume.HorizAxis          = HorizontalAxis.Bottom;
            volume.VertAxis           = VerticalAxis.Custom;
            volume.CustomVertAxis     = rightAxis;
            volume.XValues.DataMember = "X";
            volume.XValues.Order      = ValueListOrder.Ascending;
            volume.YValues.DataMember = "Y";
            volume.Title = "Volume";
            volume.FillSampleValues(20);
            volume.LinePen.Width = 3;

            line.HorizAxis      = HorizontalAxis.Bottom;
            line.VertAxis       = VerticalAxis.Custom;
            line.CustomVertAxis = rightAxis;
            line.DataSource     = candle;
            line.Function       = moneyFlowFunction;
            line.LinePen.Width  = 3;
            line.Color          = var.GetPaletteBasic[2];
            line.Title          = "Line";

            moneyFlowFunction.Series       = candle;
            moneyFlowFunction.Volume       = volume;
            moneyFlowFunction.CMFStyle     = CMFStyle.Histogram;
            moneyFlowFunction.Volume.Color = var.GetPaletteBasic[3];

            BaseChart.Chart.Axes.Custom.Add(rightAxis);

            rightAxis.Automatic = true;
            BaseChart.Chart.Axes.Left.Automatic   = true;
            BaseChart.Chart.Axes.Bottom.Automatic = true;
        }
示例#17
0
        public CLVProFunctionChart(ChartView BaseChart)
        {
            candle         = new Candle();
            volume         = new Volume();
            line           = new Line();
            clvFunction    = new CLVFunction();
            var            = new Variables.Variables();
            leftBottomAxis = new Axis();
            leftCenterAxis = new Axis();

            Themes.CandleGodStyle(candle);

            BaseChart.Chart.Header.Text = "Accumulation / Distribution Line";

            BaseChart.Chart.Series.Add(candle);
            BaseChart.Chart.Series.Add(volume);
            BaseChart.Chart.Series.Add(line);

            Themes.CustomAxisLeft(leftCenterAxis);
            Themes.CustomAxisLeft(leftBottomAxis);
            Themes.UpdateAxes(BaseChart.Chart.Axes.Left, BaseChart.Chart.Axes.Bottom);
            Themes.TripleAxisChart(BaseChart, leftCenterAxis, leftBottomAxis);

            candle.FillSampleValues(20);
            candle.HorizAxis = HorizontalAxis.Bottom;
            candle.VertAxis  = VerticalAxis.Left;
            candle.Title     = "Candle";

            volume.HorizAxis          = HorizontalAxis.Bottom;
            volume.VertAxis           = VerticalAxis.Custom;
            volume.CustomVertAxis     = leftCenterAxis;
            volume.XValues.DataMember = "X";
            volume.XValues.Order      = ValueListOrder.Ascending;
            volume.YValues.DataMember = "Y";
            volume.Title = "Volume";
            volume.FillSampleValues(20);
            volume.LinePen.Width = 3;
            volume.Color         = var.GetPaletteBasic[3];

            line.HorizAxis      = HorizontalAxis.Bottom;
            line.VertAxis       = VerticalAxis.Custom;
            line.CustomVertAxis = leftBottomAxis;
            line.DataSource     = candle;
            line.Function       = clvFunction;
            line.Title          = "CLV Function";
            line.LinePen.Width  = 3;
            line.Color          = var.GetPaletteBasic[2];

            clvFunction.Accumulate = true;
            clvFunction.Period     = 1;
            clvFunction.Series     = candle;
            clvFunction.Volume     = volume;

            BaseChart.Chart.Axes.Custom.Add(leftCenterAxis);
            BaseChart.Chart.Axes.Custom.Add(leftBottomAxis);

            leftBottomAxis.Automatic              = true;
            leftCenterAxis.Automatic              = true;
            BaseChart.Chart.Axes.Left.Automatic   = true;
            BaseChart.Chart.Axes.Bottom.Automatic = true;
        }