{
  "contract": "combinatorial-purged-cross-validation-design-v1",
  "publishedAt": "2026-09-16",
  "canonical": "/combinatorial-purged-cross-validation",
  "method": "Ordered N-group CPCV design with k held-out groups per split; split count C(N,k), complete path count C(N-1,k-1)",
  "rows": [
    {"groups":6,"testGroups":1,"trainTestSplits":6,"backtestPaths":1,"testAppearancesPerGroup":1,"trainingFraction":0.833333,"testFraction":0.166667},
    {"groups":6,"testGroups":2,"trainTestSplits":15,"backtestPaths":5,"testAppearancesPerGroup":5,"trainingFraction":0.666667,"testFraction":0.333333},
    {"groups":6,"testGroups":3,"trainTestSplits":20,"backtestPaths":10,"testAppearancesPerGroup":10,"trainingFraction":0.5,"testFraction":0.5},
    {"groups":8,"testGroups":1,"trainTestSplits":8,"backtestPaths":1,"testAppearancesPerGroup":1,"trainingFraction":0.875,"testFraction":0.125},
    {"groups":8,"testGroups":2,"trainTestSplits":28,"backtestPaths":7,"testAppearancesPerGroup":7,"trainingFraction":0.75,"testFraction":0.25},
    {"groups":8,"testGroups":3,"trainTestSplits":56,"backtestPaths":21,"testAppearancesPerGroup":21,"trainingFraction":0.625,"testFraction":0.375},
    {"groups":10,"testGroups":1,"trainTestSplits":10,"backtestPaths":1,"testAppearancesPerGroup":1,"trainingFraction":0.9,"testFraction":0.1},
    {"groups":10,"testGroups":2,"trainTestSplits":45,"backtestPaths":9,"testAppearancesPerGroup":9,"trainingFraction":0.8,"testFraction":0.2},
    {"groups":10,"testGroups":3,"trainTestSplits":120,"backtestPaths":36,"testAppearancesPerGroup":36,"trainingFraction":0.7,"testFraction":0.3},
    {"groups":12,"testGroups":1,"trainTestSplits":12,"backtestPaths":1,"testAppearancesPerGroup":1,"trainingFraction":0.916667,"testFraction":0.083333},
    {"groups":12,"testGroups":2,"trainTestSplits":66,"backtestPaths":11,"testAppearancesPerGroup":11,"trainingFraction":0.833333,"testFraction":0.166667},
    {"groups":12,"testGroups":3,"trainTestSplits":220,"backtestPaths":55,"testAppearancesPerGroup":55,"trainingFraction":0.75,"testFraction":0.25}
  ],
  "interpretation": "Counts describe CPCV design coverage, not independent evidence. Every split still requires appropriate purging and embargo when labels overlap in time."
}
