发布

  • 17200 7008d17714

    Add MaxDrawdownRecovery metric (#8865)

    frostbyte_neo 发布于 2025-07-17 19:32:23 +00:00 | 417 次提交 在此版本后已推送到 master

    • Implement a prototype of the maximum recovery time function.

    • Add unit test skeletons.

    • Add failing test

    • Issue #4581: Implement MaxDrawdownRecoveryTime.

    • Issue 4581: Add DTO for Drawdown Percentage, Drawdown Enddate, and High Value

    • Issue 4581: Fix bgu for when lDrawdowns list is empty.

    • Issue 4581: Change names of tests. Change name of file.

    • Issue 4581: Make adjustements to flow of adding drawdowns to lDrawdowns.

    • Issue 4581: Add multiple unit tests.

    • Issue #4581: Change name of unit test

    • Issue #4581: Add to PerformanceMetrics

    • Issue #4581: Add Maximum Drawdown Recovery to PortolioStatistics class.

    • Issue #4581: Add to portolfio statistics class.

    • Issue #4581: Add to statistics builder.

    • Issue #4581: Add report key.

    • Case #4581: Convert to decimal.

    • Issue #4581: Correct comment.

    • Issue #4581: Correct performance metrics view model string.

    • Case #4581: Correct statistics builder view model string..again.

    • Issue #4581: Placed DradownDradownDateHighValueDTO at the end of the file for simpler diff.

    • Issue #4581: Add 2 new tests.

    • Issue #4581: Change algorithm so that when multiple maximum drawdowns occur, the longest of all recoveries is reported.

    • Issue #4581: Add unit test.

    • Issue #4581: Remove reportkey. Change dto name.

    • Issue #4581: Change summary.

    • Issue #4581: Change comment.

    • Add max drawdown recovery calculation with unit tests

    • Update regression algorithms with the new metric

    • Solve review comments

    • Update regression algorithms

    • Add TryGet to safely get the key: MaximumDrawdownRecovery

    • Ignore MaximumDrawdownRecovery metric in OptimizationBacktest Json

    • Revert changes in Messaging

    • Update regression algorithms

    • Add test case: TakesLongestRecoveryAmongMultipleDrawdowns

    • Use integer days for MaximumDrawdownRecovery

    • Add MaximumDrawdownRecoveryReportElement

    • Use more explicit names

    • Rename files and variables for consistency

    • Update regression algorithms


    Co-authored-by: Alain Schaerer aschaerer@pcatg.com

    下载附件