Expanding en rolling windows voor walk-forward-validatie
Vergelijk groeiende en vaste rollende trainingsvensters voor financiële modellen, houd validatie apart van de eindtest en kies vensterregels zonder toekomstige uitkomsten.
In deze gidsEen walk-forward-fold heeft aparte trainings- en evaluatievensters
Korte samenvatting
Een expanding trainingsvenster behoudt de oudste bruikbare historie en voegt nieuwe gegevens toe zodra die bekend zijn. Een rolling venster bevat steeds een vast aantal van de meest recente bruikbare waarnemingen en laat oudere rijen vervallen. Beide zijn geschikt voor chronologische walk-forward-evaluatie; geen van beide vervangt de scheiding tussen modelselectie en de uiteindelijke testperiode.
Een walk-forward-fold heeft aparte trainings- en evaluatievensters
Op een voorspellingsoorsprong kent de onderzoeker bepaalde historische kenmerken en uitkomsten, past een model toe of werkt het bij, en evalueert het daarna op een later blok. Door de oorsprong vooruit te schuiven ontstaan opeenvolgende out-of-sampleperioden. De trainingsvensterregel bepaalt welke eerdere, bruikbare rijen bij elke fit worden gebruikt. De validatie- en testregels bepalen welke latere uitkomsten opties vergelijken en prestaties schatten. Die beslissingen hangen samen, maar zijn niet hetzelfde venster.
Een expanding regel begint bij een vaste historische grens en groeit zodra nieuwe uitkomsten beschikbaar komen. Een rolling regel schuift beide grenzen op, maar houdt na de opstartfase het aantal waarnemingen constant. Gebruik op geen van beide manieren een doel waarvan de uitkomst op de voorspellingsoorsprong nog niet vaststaat. Bij labels over meerdere sessies vertelt de datum van een rij mogelijk niet wanneer de uitkomst bekend werd; bewaar het eindtijdstip van het label en gebruik dat.
Houd ook de terugkijkperiode van kenmerken apart van het trainingsvenster. Een signaal kan de volatiliteit van elke rij over een korte recente periode berekenen, terwijl het model rijen van meerdere jaren gebruikt. De terugkijkperiode van een kenmerk wijzigen verandert de invoer; het trainingsvenster wijzigen verandert de waarnemingen waarmee het model wordt geschat.
Een expanding window houdt de eerste historie vast
Noem \(s\) de index van de eerste bruikbare waarneming en \(t\) die van de meest recente waarneming waarvan het label bij de fit volledig bekend is. De expanding trainingsset is \(\{s,s+1,\ldots,t\}\). Bij de volgende oorsprong blijven deze rijen staan en komen nieuw bruikbare rijen erbij. De steekproef groeit dus in de tijd, tenzij een aparte regel gegevens filtert of verwijdert.
Meer waarnemingen kunnen de steekproefruis van parameterschattingen verkleinen als oudere gegevens het onderzochte proces nog beschrijven. Ze kunnen zeldzame marktomstandigheden bewaren die een korte recente steekproef mist, en voorkomen dat je een willekeurige historische afkapdatum kiest. Oudere rijen verliezen echter niet vanzelf invloed door hun leeftijd. Als het verband tussen kenmerken en rendement verandert, kunnen vroege gegevens schattingen richting achterhaalde omstandigheden trekken. Grotere fits kunnen bovendien trager zijn. Historie behouden maakt die niet automatisch representatiever.
Een rolling window verwijdert waarnemingen buiten de gekozen periode
Bij een vaste lengte \(W\) is de trainingsset op tijdstip \(t\) \(\{t-W+1,\ldots,t\}\), na verwerking van labelvertraging en eventuele grensafstand. Op de volgende oorsprong schuift het eindpunt op en valt de oudste bruikbare rij weg. De lengte kan worden uitgedrukt in waarnemingen of kalenderduur; bij onregelmatige gegevens zijn die eenheden niet uitwisselbaar.
Een rolling window legt een actualiteitsregel vast. Dat kan passen bij onderzoek naar aanpassing aan veranderende omstandigheden of bij een operationele behoefte aan een vaste trainingsomvang. Het model past zich daarmee niet automatisch aan. Bij weinig frequente fits of geleidelijke verandering kan de reactie alsnog traag zijn. Een korte periode levert minder informatie, kan schattingen instabiel maken, zeldzame stressperioden uitsluiten of te weinig voorbeelden overlaten voor een complex model. Een langere periode behoudt meer historie, maar kan recente patronen verdunnen.
Ook de meeteenheid telt: hetzelfde aantal rijen kan door ontbrekende handelsdagen of een andere frequentie verschillende kalenderperioden omvatten. Definieer bij paneldata of het venster rijen of datumgroepen van activa verwijdert. Kies je \(W\) nadat je de eindtest hebt bekeken, dan is die test onderdeel van de selectie en niet langer onafhankelijk.
De twee regels leveren elke fit een andere historie
| Keuze | Trainingsrijen bij een fit | Mogelijk voordeel | Te onderzoeken kosten |
|---|---|---|---|
| Expanding | Alle bruikbare rijen vanaf een vaste start tot het tijdstip | Meer waarnemingen en behoud van oudere episoden | Oude regimes blijven invloed houden; fits kunnen trager worden |
| Rolling | De nieuwste vaste periode aan bruikbare rijen | Duidelijke actualiteitsgrens en beperkte steekproef | Minder informatie; resultaat gevoeliger voor de gekozen lengte |
Houd de informatiegrens, kenmerken, modelklasse, trainingsdoel, fitdata, voorspelhorizon, testblokken en uitvoeringsaannames gelijk om alleen het vensterbeleid te vergelijken. Als het rolling model ook vaker wordt bijgewerkt of andere kenmerken krijgt, is een scoreverschil niet alleen aan het venster toe te schrijven.
Deze regels bepalen ook niet de voorspellingsoorsprong. Beide trainingsvensters kunnen met rollende oorsprongen worden geëvalueerd: trainen op bruikbare historie, het volgende blok voorspellen, opschuiven en herhalen. Leonard Tashmans overzicht van out-of-sample-voorspellingstests00065-0) bespreekt rollende oorsprongen en rollende schattingsvensters. Het ene bepaalt wanneer evaluatie plaatsvindt; het andere welke trainingsrijen blijven.
Een hypothetische tijdlijn laat zien wat elke fit gebruikt
Alle aantallen en datums zijn hypothetisch. Stel dat het model elke maand opnieuw wordt gefit om het rendement van de volgende maand te voorspellen, en dat de eerste fit 60 bruikbare waarnemingen gebruikt die eindigen in maand 120. Een label is pas bruikbaar wanneer de uitkomst ervan volledig is. Op de eerste voorspellingsoorsprong gebruiken beide regels dezelfde 60 rijen als het rolling venster 60 lang is.
Zodra een nieuwe maanduitkomst bekend is, bevat expanding 61 bruikbare rijen. Rolling voegt de nieuwe rij toe en verwijdert de oudste, zodat het er 60 houdt. Na 12 updates bevat expanding 72 rijen vanaf het oorspronkelijke begin; rolling houdt de meest recente 60. De schattingen kunnen uiteenlopen doordat de historie verschilt, ook al was elke gebruikte rij beschikbaar op het moment van de fit.
Reserveer in dit voorbeeld de laatste 24 maanden voor een externe test. Kies de vensterregel en -lengte, kenmerken en andere instellingen op eerdere chronologische validatieblokken. Evalueer daarna de bevroren keuze volgens het vooraf vastgelegde fitschema. De lengte aanpassen nadat je de externe testresultaten ziet, gebruikt die resultaten voor selectie en overschat de bewijskracht van de eindperiode.
Kies de vensterregel binnen chronologische validatie
Formuleer eerst de vraag: moet het model bij elke fit alle beschikbare historie gebruiken, of is er een reden om oude voorbeelden te laten vervallen? Verwacht je dat de doelrelatie stabiel is, of kunnen relevante invoervariabelen veranderen? Deze vragen helpen kandidaten afbakenen, maar bewijzen niet vooraf welke regel in een bepaalde markt beter presteert.
Vergelijk op eerdere ontwikkeldata een kleine, vooraf vastgelegde set, bijvoorbeeld expanding en enkele plausibele rolling lengtes, op dezelfde chronologische validatieblokken en met dezelfde fitfrequentie. Bepaal het doel vóór het scoren: voorspellingsverlies, kalibratie, portefeuillenut na omzet en maximale terugval beantwoorden verschillende vragen. Houd kosten en beperkingen gelijk en registreer mislukte fits en ontbrekende voorspellingen. Bij overlappende doelen of testblokken kunnen naburige scores rendementen delen; beschrijf die afhankelijkheid in plaats van elke rij als een onafhankelijk experiment te tellen.
Houd een latere chronologische periode apart als eindtest. In een genest ontwerp selecteert de interne validatie het venster en andere instellingen met alleen gegevens van vóór elk extern testblok; de externe uitkomsten beoordelen de volledige selectieprocedure. De gids voor purged cross-validation legt grensgevallen met overlappende labels uit. Overfitting van financiële modellen en multiple testing behandelen verwante selectierisico’s.
Stem labels, voorbewerking en fittiming af op wat toen bekend was
Gebruik op elke oorsprong alleen kenmerken en labels die toen bekend waren. Een voorwaarts rendement over meerdere sessies kan bij de validatiegrens nog onvolledig zijn, ook als de beslisdatum eerder ligt. Laat zo nodig een gat vallen of verwijder rijen op basis van de werkelijke labelintervallen. Een vast aantal rijen is alleen passend als waarnemingsfrequentie en doelhorizon dat rechtvaardigen. Geen vensterregel herstelt een kenmerk met toekomstige informatie.
Fit imputatie, schaling, kenmerkselectie en andere aangeleerde voorbewerking alleen op het trainingsdeel van elke fold. Gebruik bij keuze van een drempel of hyperparameter interne chronologische validatie binnen het trainingsdeel en zet de keuze vast voor de latere evaluatie. De officiële scikit-learn-documentatie voor TimeSeriesSplit beschrijft standaard een groeiende trainingsset en max_train_size om de omvang ervan te beperken. gap is een aantal samples; vergelijkbare foldduur veronderstelt gelijk verdeelde waarnemingen. Controleer ook financiële labeltijdstippen en de gebruikte bibliotheekversie.
Rapporteer prestaties per oorsprong en benoem de beperkingen
Vermeld vensterregel en exacte lengte, de oudste behouden datum, het aantal bruikbare rijen per fit, de labelbeschikbaarheidsregel, validatie- en testdatums, horizon en fitschema. Toon resultaten per testblok naast het totaal. Een gemiddelde kan verhullen dat één marktperiode de vergelijking bepaalt; opeenvolgende voorspellingen kunnen rendementen delen en zijn dan geen onafhankelijk bewijs.
Voorspellingsnauwkeurigheid is geen netto handelsresultaat. Positievorming, hefboom, omzet, liquiditeit, kosten, spread, marktimpact, lenen, funding en uitvoeringstiming beïnvloeden de uitkomst. Houd deze aannames gelijk en vermeld wat ontbreekt. De studie van Cerqueira, Torgo en Mozetič over prestatie-inschatting voor tijdreeksen rapporteert dat schattingen kunnen verschillen tussen stationaire en niet-stationaire situaties. De studie vergelijkt financiële vensterbeleidsregels niet rechtstreeks en bewijst niet dat één regel altijd wint.
Zie elke backtest als bewijs over een bepaalde historie en procedure. Expanding kan een verouderd regime behouden; rolling kan bruikbare informatie weggooien en ruisiger worden. De gekozen regel kan falen in een ander regime, instrumentenuniversum of kostenklimaat. Validatie verkleint onzekerheid over de geteste procedure, maar garandeert geen toekomstige opbrengst en bewijst geen optimaal venster.
Veelgestelde vragen
Q1Is een expanding window altijd beter omdat het meer gegevens gebruikt?
Nee. Meer rijen kunnen schattingen stabiliseren als oudere waarnemingen relevant blijven, maar verouderde regimes kunnen het model blijven beïnvloeden. Dat hangt af van gegevens, doel, kenmerken, schatter en evaluatieperiode.
Q2Past een rolling window zich automatisch aan een marktregimewisseling aan?
Nee. Het verwijdert rijen buiten de gekozen periode, maar detecteert geen verandering en garandeert niet dat de nieuwe steekproef het volgende regime vertegenwoordigt. Fitfrequentie, vensterlengte en modelontwerp blijven belangrijk.
Q3Mag ik dezelfde periode gebruiken om het venster af te stellen en eindprestaties te rapporteren?
Dan is die periode onderdeel van de modelselectie. Kies de regel met chronologische validatie en evalueer de bevroren procedure op een latere, ongemoeid gelaten test. Ook die uitkomst beschrijft alleen de geteste historie en aannames.
Bronnen en verder lezen
Probleem melden
We bereiden een e-mail met de link naar dit artikel voor. Mark ontvangt je melding pas nadat je die verstuurt
Snelle check
De gids gelezen? Test jezelf met 3 vragen
Vraag 01
Wat verandert er bij de volgende fit in een rolling trainingsvenster met vaste lengte?
Kies een antwoord om de uitleg te zien
Optiewoordenlijst
The relationship between systematic prediction error from model mismatch and instability caused by sensitivity to the training sample.
Lees de uitgebreide gidsFamily-wise error rateThe probability of falsely rejecting at least one true null hypothesis within a predefined family of tests.
Lees de uitgebreide gidsAssignmentThe process that requires an option writer to fulfill the contract after an exercise notice is allocated; it can create or remove an underlying position.
Lees de uitgebreide gids