553bd3993a
* Add optional strict parameter to PivotPointsHighLow indicator for relaxed comparison - Added bool strict parameter (default true) to PivotPointsHighLow constructors - When strict=true: Uses strict inequalities (> and <) - existing behavior - When strict=false: Uses relaxed inequalities (>= and <=) - allows equal values - Updated comparison logic in FindNextLowPivotPoint and FindNextHighPivotPoint - Added new PPHL overload in QCAlgorithm.Indicators.cs with strict parameter - Added 5 comprehensive unit tests using TestCase attributes - All tests pass (19/19 relevant tests) - Backwards compatible: default behavior unchanged Addresses #8881 * Fix PPHL method signature to resolve overload ambiguity and maintain API consistency - Remove wrapper overload to eliminate compilation ambiguity - Reorder parameters: strict parameter now before resolution - Keep selector as last parameter (consistent with other indicator helpers) - Add unit tests verifying no overload ambiguity and correct strict parameter behavior Addresses PR review feedback on #9033 * Implement backward-compatible PPHL overloads to support strict parameter Added a second overload to maintain backward compatibility while introducing the strict parameter. This prevents breaking changes for existing code that uses positional arguments with the PPHL helper method. Changes: - Added backward-compatible overload that accepts (symbol, lengthHigh, lengthLow, lastStoredValues, resolution, selector) and delegates to the new implementation with strict: true - Kept the new overload with strict parameter as the primary implementation - Added comprehensive test (QCAlgorithmHelperOverloadResolution) documenting all 9 valid call patterns to prevent future regressions This approach ensures: - Existing calls like PPHL(symbol, 3, 3, 100, Resolution.Minute) continue to work - New calls like PPHL(symbol, 3, 3, strict: false) are supported - No ambiguity in overload resolution - All 23 PPHL tests pass successfully * Clean up some test duplication --------- Co-authored-by: Martin Molinero <martin.molinero1@gmail.com>