#region Using declarations
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Input;
using System.Windows.Media;
using System.Xml.Serialization;
using NinjaTrader.Cbi;
using NinjaTrader.Gui;
using NinjaTrader.Gui.Chart;
using NinjaTrader.Gui.SuperDom;
using NinjaTrader.Gui.Tools;
using NinjaTrader.Data;
using NinjaTrader.NinjaScript;
using NinjaTrader.Core.FloatingPoint;

#endregion



#region NinjaScript generated code. Neither change nor remove.

namespace NinjaTrader.NinjaScript.Indicators
{
	public partial class Indicator : NinjaTrader.Gui.NinjaScript.IndicatorRenderBase
	{
		
		private PropShieldUniRenkoAdvisorCoreV1[] cachePropShieldUniRenkoAdvisorCoreV1;

		
		public PropShieldUniRenkoAdvisorCoreV1 PropShieldUniRenkoAdvisorCoreV1(bool enabledAdvisor, int modePreset, int updateIntervalMinutes, bool useAnchoredSchedule, int anchorHour, int anchorMinute, int minSizeTicks, int maxSizeTicks, double baseAtrToSizeMultiplier, double offsetRatio, double reversalRatio, int roundStepTicks, bool usePresetSizeSnapping, bool useTimeOfDayMultiplier, bool enableVixSeries, string vixInstrument, bool showVixLine, bool showHud, bool compactHudMode, PropShieldAdvisorHudCorner corner, bool showRecommendedString, bool showScheduleLine, bool showPreviousSettings, bool showChangedFlash, bool showVolatilityRegime, bool showNextUpdateLine, bool showConfidenceLine, bool showTrendCueLine, bool showStrengthLine, bool showActionCueLine, bool showWhyLine, bool showAtrTicksLine, bool showRawSizeLine, bool showRoundedSizeLine, bool useRegimeColorCue, int updateIntervalMs, int fontSize, string fontFamily, double backOpacity)
		{
			return PropShieldUniRenkoAdvisorCoreV1(Input, enabledAdvisor, modePreset, updateIntervalMinutes, useAnchoredSchedule, anchorHour, anchorMinute, minSizeTicks, maxSizeTicks, baseAtrToSizeMultiplier, offsetRatio, reversalRatio, roundStepTicks, usePresetSizeSnapping, useTimeOfDayMultiplier, enableVixSeries, vixInstrument, showVixLine, showHud, compactHudMode, corner, showRecommendedString, showScheduleLine, showPreviousSettings, showChangedFlash, showVolatilityRegime, showNextUpdateLine, showConfidenceLine, showTrendCueLine, showStrengthLine, showActionCueLine, showWhyLine, showAtrTicksLine, showRawSizeLine, showRoundedSizeLine, useRegimeColorCue, updateIntervalMs, fontSize, fontFamily, backOpacity);
		}


		
		public PropShieldUniRenkoAdvisorCoreV1 PropShieldUniRenkoAdvisorCoreV1(ISeries<double> input, bool enabledAdvisor, int modePreset, int updateIntervalMinutes, bool useAnchoredSchedule, int anchorHour, int anchorMinute, int minSizeTicks, int maxSizeTicks, double baseAtrToSizeMultiplier, double offsetRatio, double reversalRatio, int roundStepTicks, bool usePresetSizeSnapping, bool useTimeOfDayMultiplier, bool enableVixSeries, string vixInstrument, bool showVixLine, bool showHud, bool compactHudMode, PropShieldAdvisorHudCorner corner, bool showRecommendedString, bool showScheduleLine, bool showPreviousSettings, bool showChangedFlash, bool showVolatilityRegime, bool showNextUpdateLine, bool showConfidenceLine, bool showTrendCueLine, bool showStrengthLine, bool showActionCueLine, bool showWhyLine, bool showAtrTicksLine, bool showRawSizeLine, bool showRoundedSizeLine, bool useRegimeColorCue, int updateIntervalMs, int fontSize, string fontFamily, double backOpacity)
		{
			if (cachePropShieldUniRenkoAdvisorCoreV1 != null)
				for (int idx = 0; idx < cachePropShieldUniRenkoAdvisorCoreV1.Length; idx++)
					if (cachePropShieldUniRenkoAdvisorCoreV1[idx].EnabledAdvisor == enabledAdvisor && cachePropShieldUniRenkoAdvisorCoreV1[idx].ModePreset == modePreset && cachePropShieldUniRenkoAdvisorCoreV1[idx].UpdateIntervalMinutes == updateIntervalMinutes && cachePropShieldUniRenkoAdvisorCoreV1[idx].UseAnchoredSchedule == useAnchoredSchedule && cachePropShieldUniRenkoAdvisorCoreV1[idx].AnchorHour == anchorHour && cachePropShieldUniRenkoAdvisorCoreV1[idx].AnchorMinute == anchorMinute && cachePropShieldUniRenkoAdvisorCoreV1[idx].MinSizeTicks == minSizeTicks && cachePropShieldUniRenkoAdvisorCoreV1[idx].MaxSizeTicks == maxSizeTicks && cachePropShieldUniRenkoAdvisorCoreV1[idx].BaseAtrToSizeMultiplier == baseAtrToSizeMultiplier && cachePropShieldUniRenkoAdvisorCoreV1[idx].OffsetRatio == offsetRatio && cachePropShieldUniRenkoAdvisorCoreV1[idx].ReversalRatio == reversalRatio && cachePropShieldUniRenkoAdvisorCoreV1[idx].RoundStepTicks == roundStepTicks && cachePropShieldUniRenkoAdvisorCoreV1[idx].UsePresetSizeSnapping == usePresetSizeSnapping && cachePropShieldUniRenkoAdvisorCoreV1[idx].UseTimeOfDayMultiplier == useTimeOfDayMultiplier && cachePropShieldUniRenkoAdvisorCoreV1[idx].EnableVixSeries == enableVixSeries && cachePropShieldUniRenkoAdvisorCoreV1[idx].VixInstrument == vixInstrument && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowVixLine == showVixLine && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowHud == showHud && cachePropShieldUniRenkoAdvisorCoreV1[idx].CompactHudMode == compactHudMode && cachePropShieldUniRenkoAdvisorCoreV1[idx].Corner == corner && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowRecommendedString == showRecommendedString && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowScheduleLine == showScheduleLine && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowPreviousSettings == showPreviousSettings && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowChangedFlash == showChangedFlash && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowVolatilityRegime == showVolatilityRegime && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowNextUpdateLine == showNextUpdateLine && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowConfidenceLine == showConfidenceLine && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowTrendCueLine == showTrendCueLine && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowStrengthLine == showStrengthLine && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowActionCueLine == showActionCueLine && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowWhyLine == showWhyLine && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowAtrTicksLine == showAtrTicksLine && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowRawSizeLine == showRawSizeLine && cachePropShieldUniRenkoAdvisorCoreV1[idx].ShowRoundedSizeLine == showRoundedSizeLine && cachePropShieldUniRenkoAdvisorCoreV1[idx].UseRegimeColorCue == useRegimeColorCue && cachePropShieldUniRenkoAdvisorCoreV1[idx].UpdateIntervalMs == updateIntervalMs && cachePropShieldUniRenkoAdvisorCoreV1[idx].FontSize == fontSize && cachePropShieldUniRenkoAdvisorCoreV1[idx].FontFamily == fontFamily && cachePropShieldUniRenkoAdvisorCoreV1[idx].BackOpacity == backOpacity && cachePropShieldUniRenkoAdvisorCoreV1[idx].EqualsInput(input))
						return cachePropShieldUniRenkoAdvisorCoreV1[idx];
			return CacheIndicator<PropShieldUniRenkoAdvisorCoreV1>(new PropShieldUniRenkoAdvisorCoreV1(){ EnabledAdvisor = enabledAdvisor, ModePreset = modePreset, UpdateIntervalMinutes = updateIntervalMinutes, UseAnchoredSchedule = useAnchoredSchedule, AnchorHour = anchorHour, AnchorMinute = anchorMinute, MinSizeTicks = minSizeTicks, MaxSizeTicks = maxSizeTicks, BaseAtrToSizeMultiplier = baseAtrToSizeMultiplier, OffsetRatio = offsetRatio, ReversalRatio = reversalRatio, RoundStepTicks = roundStepTicks, UsePresetSizeSnapping = usePresetSizeSnapping, UseTimeOfDayMultiplier = useTimeOfDayMultiplier, EnableVixSeries = enableVixSeries, VixInstrument = vixInstrument, ShowVixLine = showVixLine, ShowHud = showHud, CompactHudMode = compactHudMode, Corner = corner, ShowRecommendedString = showRecommendedString, ShowScheduleLine = showScheduleLine, ShowPreviousSettings = showPreviousSettings, ShowChangedFlash = showChangedFlash, ShowVolatilityRegime = showVolatilityRegime, ShowNextUpdateLine = showNextUpdateLine, ShowConfidenceLine = showConfidenceLine, ShowTrendCueLine = showTrendCueLine, ShowStrengthLine = showStrengthLine, ShowActionCueLine = showActionCueLine, ShowWhyLine = showWhyLine, ShowAtrTicksLine = showAtrTicksLine, ShowRawSizeLine = showRawSizeLine, ShowRoundedSizeLine = showRoundedSizeLine, UseRegimeColorCue = useRegimeColorCue, UpdateIntervalMs = updateIntervalMs, FontSize = fontSize, FontFamily = fontFamily, BackOpacity = backOpacity }, input, ref cachePropShieldUniRenkoAdvisorCoreV1);
		}

	}
}

namespace NinjaTrader.NinjaScript.MarketAnalyzerColumns
{
	public partial class MarketAnalyzerColumn : MarketAnalyzerColumnBase
	{
		
		public Indicators.PropShieldUniRenkoAdvisorCoreV1 PropShieldUniRenkoAdvisorCoreV1(bool enabledAdvisor, int modePreset, int updateIntervalMinutes, bool useAnchoredSchedule, int anchorHour, int anchorMinute, int minSizeTicks, int maxSizeTicks, double baseAtrToSizeMultiplier, double offsetRatio, double reversalRatio, int roundStepTicks, bool usePresetSizeSnapping, bool useTimeOfDayMultiplier, bool enableVixSeries, string vixInstrument, bool showVixLine, bool showHud, bool compactHudMode, PropShieldAdvisorHudCorner corner, bool showRecommendedString, bool showScheduleLine, bool showPreviousSettings, bool showChangedFlash, bool showVolatilityRegime, bool showNextUpdateLine, bool showConfidenceLine, bool showTrendCueLine, bool showStrengthLine, bool showActionCueLine, bool showWhyLine, bool showAtrTicksLine, bool showRawSizeLine, bool showRoundedSizeLine, bool useRegimeColorCue, int updateIntervalMs, int fontSize, string fontFamily, double backOpacity)
		{
			return indicator.PropShieldUniRenkoAdvisorCoreV1(Input, enabledAdvisor, modePreset, updateIntervalMinutes, useAnchoredSchedule, anchorHour, anchorMinute, minSizeTicks, maxSizeTicks, baseAtrToSizeMultiplier, offsetRatio, reversalRatio, roundStepTicks, usePresetSizeSnapping, useTimeOfDayMultiplier, enableVixSeries, vixInstrument, showVixLine, showHud, compactHudMode, corner, showRecommendedString, showScheduleLine, showPreviousSettings, showChangedFlash, showVolatilityRegime, showNextUpdateLine, showConfidenceLine, showTrendCueLine, showStrengthLine, showActionCueLine, showWhyLine, showAtrTicksLine, showRawSizeLine, showRoundedSizeLine, useRegimeColorCue, updateIntervalMs, fontSize, fontFamily, backOpacity);
		}


		
		public Indicators.PropShieldUniRenkoAdvisorCoreV1 PropShieldUniRenkoAdvisorCoreV1(ISeries<double> input , bool enabledAdvisor, int modePreset, int updateIntervalMinutes, bool useAnchoredSchedule, int anchorHour, int anchorMinute, int minSizeTicks, int maxSizeTicks, double baseAtrToSizeMultiplier, double offsetRatio, double reversalRatio, int roundStepTicks, bool usePresetSizeSnapping, bool useTimeOfDayMultiplier, bool enableVixSeries, string vixInstrument, bool showVixLine, bool showHud, bool compactHudMode, PropShieldAdvisorHudCorner corner, bool showRecommendedString, bool showScheduleLine, bool showPreviousSettings, bool showChangedFlash, bool showVolatilityRegime, bool showNextUpdateLine, bool showConfidenceLine, bool showTrendCueLine, bool showStrengthLine, bool showActionCueLine, bool showWhyLine, bool showAtrTicksLine, bool showRawSizeLine, bool showRoundedSizeLine, bool useRegimeColorCue, int updateIntervalMs, int fontSize, string fontFamily, double backOpacity)
		{
			return indicator.PropShieldUniRenkoAdvisorCoreV1(input, enabledAdvisor, modePreset, updateIntervalMinutes, useAnchoredSchedule, anchorHour, anchorMinute, minSizeTicks, maxSizeTicks, baseAtrToSizeMultiplier, offsetRatio, reversalRatio, roundStepTicks, usePresetSizeSnapping, useTimeOfDayMultiplier, enableVixSeries, vixInstrument, showVixLine, showHud, compactHudMode, corner, showRecommendedString, showScheduleLine, showPreviousSettings, showChangedFlash, showVolatilityRegime, showNextUpdateLine, showConfidenceLine, showTrendCueLine, showStrengthLine, showActionCueLine, showWhyLine, showAtrTicksLine, showRawSizeLine, showRoundedSizeLine, useRegimeColorCue, updateIntervalMs, fontSize, fontFamily, backOpacity);
		}
	
	}
}

namespace NinjaTrader.NinjaScript.Strategies
{
	public partial class Strategy : NinjaTrader.Gui.NinjaScript.StrategyRenderBase
	{
		
		public Indicators.PropShieldUniRenkoAdvisorCoreV1 PropShieldUniRenkoAdvisorCoreV1(bool enabledAdvisor, int modePreset, int updateIntervalMinutes, bool useAnchoredSchedule, int anchorHour, int anchorMinute, int minSizeTicks, int maxSizeTicks, double baseAtrToSizeMultiplier, double offsetRatio, double reversalRatio, int roundStepTicks, bool usePresetSizeSnapping, bool useTimeOfDayMultiplier, bool enableVixSeries, string vixInstrument, bool showVixLine, bool showHud, bool compactHudMode, PropShieldAdvisorHudCorner corner, bool showRecommendedString, bool showScheduleLine, bool showPreviousSettings, bool showChangedFlash, bool showVolatilityRegime, bool showNextUpdateLine, bool showConfidenceLine, bool showTrendCueLine, bool showStrengthLine, bool showActionCueLine, bool showWhyLine, bool showAtrTicksLine, bool showRawSizeLine, bool showRoundedSizeLine, bool useRegimeColorCue, int updateIntervalMs, int fontSize, string fontFamily, double backOpacity)
		{
			return indicator.PropShieldUniRenkoAdvisorCoreV1(Input, enabledAdvisor, modePreset, updateIntervalMinutes, useAnchoredSchedule, anchorHour, anchorMinute, minSizeTicks, maxSizeTicks, baseAtrToSizeMultiplier, offsetRatio, reversalRatio, roundStepTicks, usePresetSizeSnapping, useTimeOfDayMultiplier, enableVixSeries, vixInstrument, showVixLine, showHud, compactHudMode, corner, showRecommendedString, showScheduleLine, showPreviousSettings, showChangedFlash, showVolatilityRegime, showNextUpdateLine, showConfidenceLine, showTrendCueLine, showStrengthLine, showActionCueLine, showWhyLine, showAtrTicksLine, showRawSizeLine, showRoundedSizeLine, useRegimeColorCue, updateIntervalMs, fontSize, fontFamily, backOpacity);
		}


		
		public Indicators.PropShieldUniRenkoAdvisorCoreV1 PropShieldUniRenkoAdvisorCoreV1(ISeries<double> input , bool enabledAdvisor, int modePreset, int updateIntervalMinutes, bool useAnchoredSchedule, int anchorHour, int anchorMinute, int minSizeTicks, int maxSizeTicks, double baseAtrToSizeMultiplier, double offsetRatio, double reversalRatio, int roundStepTicks, bool usePresetSizeSnapping, bool useTimeOfDayMultiplier, bool enableVixSeries, string vixInstrument, bool showVixLine, bool showHud, bool compactHudMode, PropShieldAdvisorHudCorner corner, bool showRecommendedString, bool showScheduleLine, bool showPreviousSettings, bool showChangedFlash, bool showVolatilityRegime, bool showNextUpdateLine, bool showConfidenceLine, bool showTrendCueLine, bool showStrengthLine, bool showActionCueLine, bool showWhyLine, bool showAtrTicksLine, bool showRawSizeLine, bool showRoundedSizeLine, bool useRegimeColorCue, int updateIntervalMs, int fontSize, string fontFamily, double backOpacity)
		{
			return indicator.PropShieldUniRenkoAdvisorCoreV1(input, enabledAdvisor, modePreset, updateIntervalMinutes, useAnchoredSchedule, anchorHour, anchorMinute, minSizeTicks, maxSizeTicks, baseAtrToSizeMultiplier, offsetRatio, reversalRatio, roundStepTicks, usePresetSizeSnapping, useTimeOfDayMultiplier, enableVixSeries, vixInstrument, showVixLine, showHud, compactHudMode, corner, showRecommendedString, showScheduleLine, showPreviousSettings, showChangedFlash, showVolatilityRegime, showNextUpdateLine, showConfidenceLine, showTrendCueLine, showStrengthLine, showActionCueLine, showWhyLine, showAtrTicksLine, showRawSizeLine, showRoundedSizeLine, useRegimeColorCue, updateIntervalMs, fontSize, fontFamily, backOpacity);
		}

	}
}

#endregion
