public Indicator.anaPivotsMonthlyV43 anaPivotsMonthlyV43(anaSessionCountPM43 activeSession, anaCalcModePM43 calcMode, anaPivotStylesPM43 pivotFormula, anaSessionTypePM43 pivotSession, bool showMidpivots, bool showPriorPeriods, double userDefinedClose, double userDefinedHigh, double userDefinedLow) { return _indicator.anaPivotsMonthlyV43(Input, activeSession, calcMode, pivotFormula, pivotSession, showMidpivots, showPriorPeriods, userDefinedClose, userDefinedHigh, userDefinedLow); }
/// <summary> /// Monthly Session Pivots. /// </summary> /// <returns></returns> public Indicator.anaPivotsMonthlyV43 anaPivotsMonthlyV43(Data.IDataSeries input, anaSessionCountPM43 activeSession, anaCalcModePM43 calcMode, anaPivotStylesPM43 pivotFormula, anaSessionTypePM43 pivotSession, bool showMidpivots, bool showPriorPeriods, double userDefinedClose, double userDefinedHigh, double userDefinedLow) { if (InInitialize && input == null) throw new ArgumentException("You only can access an indicator with the default input/bar series from within the 'Initialize()' method"); return _indicator.anaPivotsMonthlyV43(input, activeSession, calcMode, pivotFormula, pivotSession, showMidpivots, showPriorPeriods, userDefinedClose, userDefinedHigh, userDefinedLow); }
/// <summary> /// Monthly Session Pivots. /// </summary> /// <returns></returns> public anaPivotsMonthlyV43 anaPivotsMonthlyV43(Data.IDataSeries input, anaSessionCountPM43 activeSession, anaCalcModePM43 calcMode, anaPivotStylesPM43 pivotFormula, anaSessionTypePM43 pivotSession, bool showMidpivots, bool showPriorPeriods, double userDefinedClose, double userDefinedHigh, double userDefinedLow) { if (cacheanaPivotsMonthlyV43 != null) for (int idx = 0; idx < cacheanaPivotsMonthlyV43.Length; idx++) if (cacheanaPivotsMonthlyV43[idx].ActiveSession == activeSession && cacheanaPivotsMonthlyV43[idx].CalcMode == calcMode && cacheanaPivotsMonthlyV43[idx].PivotFormula == pivotFormula && cacheanaPivotsMonthlyV43[idx].PivotSession == pivotSession && cacheanaPivotsMonthlyV43[idx].ShowMidpivots == showMidpivots && cacheanaPivotsMonthlyV43[idx].ShowPriorPeriods == showPriorPeriods && Math.Abs(cacheanaPivotsMonthlyV43[idx].UserDefinedClose - userDefinedClose) <= double.Epsilon && Math.Abs(cacheanaPivotsMonthlyV43[idx].UserDefinedHigh - userDefinedHigh) <= double.Epsilon && Math.Abs(cacheanaPivotsMonthlyV43[idx].UserDefinedLow - userDefinedLow) <= double.Epsilon && cacheanaPivotsMonthlyV43[idx].EqualsInput(input)) return cacheanaPivotsMonthlyV43[idx]; lock (checkanaPivotsMonthlyV43) { checkanaPivotsMonthlyV43.ActiveSession = activeSession; activeSession = checkanaPivotsMonthlyV43.ActiveSession; checkanaPivotsMonthlyV43.CalcMode = calcMode; calcMode = checkanaPivotsMonthlyV43.CalcMode; checkanaPivotsMonthlyV43.PivotFormula = pivotFormula; pivotFormula = checkanaPivotsMonthlyV43.PivotFormula; checkanaPivotsMonthlyV43.PivotSession = pivotSession; pivotSession = checkanaPivotsMonthlyV43.PivotSession; checkanaPivotsMonthlyV43.ShowMidpivots = showMidpivots; showMidpivots = checkanaPivotsMonthlyV43.ShowMidpivots; checkanaPivotsMonthlyV43.ShowPriorPeriods = showPriorPeriods; showPriorPeriods = checkanaPivotsMonthlyV43.ShowPriorPeriods; checkanaPivotsMonthlyV43.UserDefinedClose = userDefinedClose; userDefinedClose = checkanaPivotsMonthlyV43.UserDefinedClose; checkanaPivotsMonthlyV43.UserDefinedHigh = userDefinedHigh; userDefinedHigh = checkanaPivotsMonthlyV43.UserDefinedHigh; checkanaPivotsMonthlyV43.UserDefinedLow = userDefinedLow; userDefinedLow = checkanaPivotsMonthlyV43.UserDefinedLow; if (cacheanaPivotsMonthlyV43 != null) for (int idx = 0; idx < cacheanaPivotsMonthlyV43.Length; idx++) if (cacheanaPivotsMonthlyV43[idx].ActiveSession == activeSession && cacheanaPivotsMonthlyV43[idx].CalcMode == calcMode && cacheanaPivotsMonthlyV43[idx].PivotFormula == pivotFormula && cacheanaPivotsMonthlyV43[idx].PivotSession == pivotSession && cacheanaPivotsMonthlyV43[idx].ShowMidpivots == showMidpivots && cacheanaPivotsMonthlyV43[idx].ShowPriorPeriods == showPriorPeriods && Math.Abs(cacheanaPivotsMonthlyV43[idx].UserDefinedClose - userDefinedClose) <= double.Epsilon && Math.Abs(cacheanaPivotsMonthlyV43[idx].UserDefinedHigh - userDefinedHigh) <= double.Epsilon && Math.Abs(cacheanaPivotsMonthlyV43[idx].UserDefinedLow - userDefinedLow) <= double.Epsilon && cacheanaPivotsMonthlyV43[idx].EqualsInput(input)) return cacheanaPivotsMonthlyV43[idx]; anaPivotsMonthlyV43 indicator = new anaPivotsMonthlyV43(); indicator.BarsRequired = BarsRequired; indicator.CalculateOnBarClose = CalculateOnBarClose; #if NT7 indicator.ForceMaximumBarsLookBack256 = ForceMaximumBarsLookBack256; indicator.MaximumBarsLookBack = MaximumBarsLookBack; #endif indicator.Input = input; indicator.ActiveSession = activeSession; indicator.CalcMode = calcMode; indicator.PivotFormula = pivotFormula; indicator.PivotSession = pivotSession; indicator.ShowMidpivots = showMidpivots; indicator.ShowPriorPeriods = showPriorPeriods; indicator.UserDefinedClose = userDefinedClose; indicator.UserDefinedHigh = userDefinedHigh; indicator.UserDefinedLow = userDefinedLow; Indicators.Add(indicator); indicator.SetUp(); anaPivotsMonthlyV43[] tmp = new anaPivotsMonthlyV43[cacheanaPivotsMonthlyV43 == null ? 1 : cacheanaPivotsMonthlyV43.Length + 1]; if (cacheanaPivotsMonthlyV43 != null) cacheanaPivotsMonthlyV43.CopyTo(tmp, 0); tmp[tmp.Length - 1] = indicator; cacheanaPivotsMonthlyV43 = tmp; return indicator; } }