Patch Optiemaat

Wat er mis was.
Optiemaat bewaart het jaartal van een datum als “het aantal jaren sinds 1900”. Voor dat getal is maar ruimte voor de getallen 0 tot en met 127: zeven schakelaartjes met elk twee standen geven 128 mogelijkheden. Dat is genoeg tot en met het jaar 2027, want 2027 is 127 jaar na 1900. Voor 2028 is het getal 128 nodig. Dat past niet meer en valt terug naar 0, dus het programma leest 2028 als het jaar 1900. Het is als een kilometerteller die van 99.999 terugspringt naar 00.000.

Waarom optieseries verdwenen. Beursopties lopen tot ver in de toekomst, bijvoorbeeld tot december 2028, 2029 en 2030. Optiemaat zag die vervaldatums als “een eeuw geleden”, vond de opties dus verlopen en gooide ze stilzwijgend weg. Er kwam geen foutmelding; de reeksen ontbraken gewoon in het OAS. Zonder aanpassing was Optiemaat na 2027 niet meer bruikbaar.

Wat er is gedaan.
Het programma is geleerd dat de laagste getallen (0 tot en met 31) niet meer “1900 tot en met 1931” betekenen, maar “2028 tot en met 2059”. Alle jaren tot en met 2027 werken precies als voorheen. Dit is gedaan in beide programma’s, NomServ.exe en Opmatw.exe.

Wat is getest
De datum van vandaag haalt het programma uit de klok van Windows en die loopt door dezelfde aangepaste route. Dat is getest door in de test de klok te laten doen alsof het 2028 tot 2059 was (24 gekozen datums, waaronder 1 januari 2028 en 29 februari 2028): alles klopte, terwijl het oorspronkelijke programma daar tientallen fouten maakte. Daarnaast zijn de echte optiegegevens (20.476 regels) met tien gesimuleerde klokdatums tussen 2026 en 2031 door de echte datumroutines gehaald: het gepatchte programma nam steeds precies de juiste regels aan, het oorspronkelijke niet.

Downloaden historische dagkoersen stopte na 2022
Twee kleinere problemen die onderweg zijn opgelost. Het invoerscherm voor de daghistorie weigerde jaartallen boven 2022, en het downloaden van een zeer lange koershistorie was extreem traag en liet NomServ afsluiten.