2026 m. spalio 26 d. · duomenys

Kodėl mano atgalinis opcionų strategijos testas nuolat pakeičia duomenis?

Kodėl mano atgalinis opcionų strategijos testas nuolat pakeičia duomenis?

Opcionų strategijos atgalinio testo rezultatai gali pasikeisti nepasikeitus nė vienai strategijos kodo eilutei. Tiekėjas pataiso neteisingą kotiruotę, įtraukia pavėluotą sandorį, peržiūri kontrakto metaduomenis arba pakeičia kertančiųjų rinkų filtrą. Pakartojate testą tomis pačiomis datomis ir gaunate kitokį įvykdymą, kitokią poziciją, galbūt kitokį Sharpe rodiklį. Tai nebūtinai strategijos klaida. Pasikeitė duomenys, pagal kuriuos strategija buvo testuojama.

Kad opcionų strategijos atgalinio testo rezultatus būtų galima atkurti, rinkos duomenis laikykite versijuojama įvestimi. Užfiksuokite, kurią momentinę kopiją naudojote, išsaugokite neapdorotus stebėjimus, lėmusius kiekvieną sprendimą, o prieš pasitikėdami nauju apibendrintu rezultatu palyginkite pokyčius kontrakto ir laiko žymos lygmeniu.

Kodėl pasikeitė mano opcionų strategijos atgalinio testo rezultatai, nors kodas liko toks pats?

Opcionų įrašai ypač jautrūs pataisoms, nes tai, ar kontraktą galima laikyti prekiaujamu, priklauso nuo kelių kartu kintančių laukų: pirkimo kainos, pardavimo kainos, kiekių, bazinio turto kainos, galiojimo pabaigos, vykdymo kainos ir kontrakto daugiklio ar suteikiamo turto. Pataisyta kotiruotė gali tariamą galimybę paversti kertančia rinka. Metaduomenų pataisa gali pakeisti pozicijos daugiklio reikšmę.

Tarkime, strategija perka pirkimo opcioną, kai pardavimo kaina nesiekia $2.00. Pirmą kartą įkėlus duomenis, 10:14 kotiruotėje pardavimo kaina yra $1.95, pirkimo kaina – $1.90, o kiekis – 5. Vėliau tiekėjas, suderinęs pavėluotą biržos pranešimą, pakoreguoja pardavimo kainą į $2.05. Vienas stebėjimas pakeičia signalą. Jei tas kontraktas tą dieną buvo vienintelis strategijos sandoris, nedidelė duomenų pataisa gali lemti didžiąją tos dienos grąžos dalį.

Svarbus ir kotiruočių filtravimas. Tiekėjai gali pašalinti pasenusias kotiruotes, atmesti kertančias rinkas arba kitaip normalizuoti laiko žymas. Tokia politika gali būti pagrįsta, bet ji yra duomenų rinkinio tapatybės dalis. „SPY opcionai, nuo sausio iki kovo“ neapibrėžia atkuriamos istorijos.

Kas yra opcionų duomenų versija?

Duomenų versija – tai tiksli istorinių stebėjimų versija, prieinama konkrečiam tyrimo vykdymui. Išsaugokite tiekėjo ir duomenų rinkinio pavadinimą, gavimo laiką, datų intervalą, schemos versiją ir visas valymo ar filtravimo taisykles. Jei tiekėjas pateikia momentinių kopijų ID arba taisymo laiko žymas, išsaugokite ir jas.

Kiekvienam simuliuotam sprendimui išsaugokite pakankamai duomenų kilmės informacijos, kad galėtumėte atsakyti: kuris kontraktas buvo svarstomas, kuri kotiruotė pasirinkta, kada ji paskelbta arba gauta ir pagal kokią taisyklę ji laikyta tinkama? Svarbūs ir neapdorotas, ir išvestinis įrašai. Išvalyta NBBO kotiruotė be pradinių laiko žymų gali paslėpti, ar kotiruotė buvo pasenusi, ar atkeliavo jau priėmus simuliuotą sprendimą.

Išsaugotinas įrašasKodėl tai svarbuPavyzdys
Šaltinio momentinė kopijaNurodo, kokia istorija naudota vykdant testąTiekėjo versijos ID ir gavimo laiko žyma
Kotiruotės kilmės duomenysPaaiškina, kodėl pasirinkta būtent ši rinkos informacijaBirža, įvykio laikas, gavimo laikas, pirkimo ir pardavimo kainos bei kiekiai
Kontrakto sąlygosApibrėžia, ką reiškė opcionasVykdymo kaina, galiojimo pabaiga, daugiklis ir suteikiamas turtas
Valymo politikaParodo, kurie stebėjimai buvo atmestiPasenimo riba ir kertančių kotiruočių tvarkymas

Kaip patikrinti, ar tiekėjo pataisa pakeitė mano rezultatus?

Paleiskite tą pačią strategiją su ta pačia konfigūracija abiejose momentinėse kopijose. Pirmiausia palyginkite tinkamų stebėjimų ir kontraktų skaičių pagal datą. Tada palyginkite sprendimus ir įvykdymus: kurie signalai atsirado ar dingo, kuri kotiruotė pasikeitė ir ar naujas įrašas pakeitė modeliuojamą įvykdymo kainą.

Neapsiribokite bendra grąža. Stebėkite sandorių skaičiaus, įėjimo ir išėjimo kainų, atmestų signalų pokyčius bei P&L dalį, kurią sudaro tik vienoje duomenų versijoje esantys sandoriai. Sharpe rodiklis gali išlikti panašus, nors atskiri sandoriai pakeičiami kitais; pagrindinis rodiklis neparodys, kad jo pagrindą sudaranti istorija pasikeitė.

2palygintinos duomenų versijos
4išsaugotini kilmės laukai
1sandoris gali stipriai paveikti mažą imtį

Kad auditas būtų naudingas, nekeiskite strategijos, mokesčių ir įvykdymo prielaidų. Jei vienu metu pasikeis keli dalykai, nežinosite, ar skirtumą lėmė tiekėjo pataisa, ar jūsų pačių eksperimentas.

Ar visada turėčiau naudoti naujausią opcionų istoriją?

Naudokite naujausią istoriją, kai siekiate remtis geriausia šiuo metu tiekėjo atkuriama istorija. Išsaugokite seną momentinę kopiją, jei reikia atkurti ankstesnį rezultatą arba suprasti, kokią informaciją jūsų tyrimų sistema turėjo tuo metu. Tai atsakymai į skirtingus klausimus.

Atliekant tyrimus pagal informaciją konkrečiu laiko momentu, įrašas dabar gali būti tikslesnis po pataisos, bet tuo metu strategijai neprieinamas. Jei įmanoma, išsaugokite paskelbimo ir gavimo laikus; jei ne, aiškiai įvardykite šį apribojimą. Šiuolaikinė rekonstrukcija automatiškai neatspindi istorinio informacijos rinkinio.

Pasikeitus opcionų strategijos atgalinio testo rezultatams, pirmiausia reikėtų klausti: „Kurie stebėjimai pasikeitė?“ Klausimas „Kuris vykdymas teisingas?“ kyla tik tada, kai jau galite į tai atsakyti.

Ką turėčiau išsaugoti su kiekvienu atgaliniu testu?

Kartu su rezultatais išsaugokite trumpą aprašą: duomenų teikėją ir momentinę kopiją, gavimo laiką, schemos bei valymo versijas, kontraktų metaduomenų šaltinį, strategijos kodo versiją, įvykdymo prielaidas ir vykdymo konfigūraciją. Susiekite kiekvieną sandorį su jį pagrindusiomis kotiruočių eilutėmis.

Šis nedidelis įrašas paslaptingą pakartotinį vykdymą paverčia skirtumų rinkiniu, kurį galite patikrinti. Opcionų istorija ir toliau bus taisoma. Jūsų tyrimų procesas turėtų parodyti kiekvieną pataisą, kad geresnis archyvas pagerintų įrodymus ir tyliai neperrašytų eksperimento.

opcionų duomenysduomenys konkrečiu laiko momentuatgalinis testavimasduomenų inžinerija
← Visi įrašai