protected override void OnStateChange()
        {
            if (State == State.SetDefaults)
            {
                Description = NinjaTrader.Custom.Resource.NinjaScriptIndicatorDescriptionMAEnvelopes;
                Name        = NinjaTrader.Custom.Resource.NinjaScriptIndicatorNameMAEnvelopes;
                IsSuspendedWhileInactive = true;
                IsOverlay          = true;
                MAType             = 3;
                Period             = 14;
                EnvelopePercentage = 1.5;

                AddPlot(Brushes.DodgerBlue, NinjaTrader.Custom.Resource.NinjaScriptIndicatorUpper);
                AddPlot(new Gui.Stroke(Brushes.DodgerBlue, DashStyleHelper.Dash, 1), PlotStyle.Line, NinjaTrader.Custom.Resource.NinjaScriptIndicatorMiddle);
                AddPlot(Brushes.DodgerBlue, NinjaTrader.Custom.Resource.NinjaScriptIndicatorLower);
            }
            else if (State == State.DataLoaded)
            {
                ema  = EMA(Inputs[0], Period);
                hma  = HMA(Inputs[0], Period);
                sma  = SMA(Inputs[0], Period);
                tma  = TMA(Inputs[0], Period);
                tema = TEMA(Inputs[0], Period);
                wma  = WMA(Inputs[0], Period);
            }
        }
        protected override void OnStateChange()
        {
            if (State == State.SetDefaults)
            {
                Description = @"thinkorswim's HMA formula";
                Name        = "HMACustom";
                IsSuspendedWhileInactive = true;
                Period    = 45;
                IsOverlay = true;

                AddPlot(Brushes.Goldenrod, "HMACustom");
            }
            else if (State == State.DataLoaded)
            {
                diffSeries = new Series <double>(this);

                int halfHMALength = (int)Math.Ceiling((double)Period / 2);
                int halfPeriod    = Convert.ToInt32(halfHMALength);

                wma1 = WMA(Inputs[0], halfPeriod);
                wma2 = WMA(Inputs[0], Period);

                int sq = Convert.ToInt32(Math.Round(Math.Sqrt(Period), 0));

                wmaDiffSeries = WMA(diffSeries, sq);
            }
        }
Beispiel #3
0
        protected override void OnStateChange()
        {
            if (State == State.SetDefaults)
            {
                Description = NinjaTrader.Custom.Resource.NinjaScriptIndicatorDescriptionHMA;
                Name        = NinjaTrader.Custom.Resource.NinjaScriptIndicatorNameHMA;
                IsSuspendedWhileInactive = true;
                Period    = 14;
                IsOverlay = true;

                AddPlot(Brushes.Goldenrod, NinjaTrader.Custom.Resource.NinjaScriptIndicatorNameHMA);
            }
            else if (State == State.DataLoaded)
            {
                diffSeries    = new Series <double>(this);
                wma1          = WMA(Inputs[0], (Period / 2));
                wma2          = WMA(Inputs[0], Period);
                wmaDiffSeries = WMA(diffSeries, (int)Math.Sqrt(Period));
            }
        }