2026 m. rugpjūčio 24 d. · tyrimai

Kodėl mano atgalinis testas vykdo daugiau sandorių nei popierinė strategija?

Kodėl mano atgalinis testas vykdo daugiau sandorių nei popierinė strategija?

Atgaliniame teste sandoriai dažnai skaičiuojami taip, tarsi signalas iš karto virstų pozicija. Prekiaujant popierinėje sąskaitoje tarp jų atsiranda pavedimas. Jis gali laukti, būti įvykdytas iš dalies, atšauktas ar atmestas arba likti aktyvus net pasikeitus signalui. Jei strategijos simuliacijoje šis ciklas praleidžiamas, sandorių skaičius ir pozicijos dydis gali menkai atitikti tai, ką užfiksuoja popierinė sąskaita.

Praktiškas sprendimas – laikyti pavedimus išliekančiais objektais su būsenomis ir laiko žymomis. Signalas nurodo pabandyti prekiauti; jis neįrodo, kad sandoris įvyko.

Kodėl mano strategija popierinėje sąskaitoje sudaro mažiau sandorių nei atgaliniame teste?

Pradėkime nuo pavedimų, kurie taip ir nebuvo įvykdyti. Atgaliniame teste gali būti daroma prielaida, kad kiekvienas limitinis pavedimas įvykdomas vos rinkai pasiekus jo kainą. Tačiau realioje rinkoje kainos pasiekimas neparodo, ar jūsų pavedimas buvo eilėje pirmas, ar buvo sudaryta pakankamai sandorių, ar kotiruotė dar galiojo, kai pavedimas pasiekė prekybos vietą.

Tarkime, strategija pateikia pirkimo limitinį pavedimą po $100 ir atšaukia jį po 30 sekundžių. Rinkoje užfiksuojama $100.00 kaina, bet už tokią kainą sudaroma tik nedaug sandorių, o kiti pavedimai turi pirmenybę. Jūsų pavedimas gali būti įvykdytas iš dalies arba visai neįvykdytas. Atgaliniame teste, kuriame pakanka kainos pasiekimo, užregistruojama visa pozicija. Popierinė sąskaita, kurioje atsižvelgiama į prielaidas apie eilę, gali neužfiksuoti jokio įvykdymo.

Rinkos pavedimų neatitikimai kitokie. Atgaliniame teste gali būti įvykdytas visas kiekis kitos žvakės pradžios kaina, o prekiaujant popierinėje sąskaitoje gali būti atmestas kiekis, neatitinkantis biržos apribojimų, arba pavedimas įvykdomas dalimis kintant pavedimų knygai. Žvakė apibendrina sandorius; ji negarantuoja, kad visą jūsų pavedimą buvo galima įvykdyti viena kaina.

Ką daryti atgaliniame teste, jei signalas pasikeičia, kol pavedimas dar neįvykdytas?

Seną pavedimą laikykite aktyvų, kol simuliatorius gauna ir apdoroja atšaukimą. Jei pirkimo pavedimas laukia eilėje, o signalas apsiverčia, strategija gali norėti jį atšaukti ir pateikti pardavimo pavedimą. Tačiau toks ketinimas iš karto nepanaikina pirkimo pavedimo. Jis gali būti įvykdytas, kol vykdomas atšaukimas, ir sąskaita liks su ilga pozicija kaip tik tuo metu, kai naujas signalas nurodo trumpą poziciją.

Modeliuokite tai kaip veiksmų seką: pasikeičia signalas, strategija siunčia atšaukimo užklausą, prekybos vieta patvirtina atšaukimą arba praneša apie įvykdymą, ir tik tada strategija sužino galutinę pavedimo būseną. Net paprastas fiksuotas delsos laikas gali atskleisti lenktynines sąlygas, kurias paslepia atgalinis testas su momentiniu atšaukimu.

Tyčia supaprastintame modelyje 1 sekundės atšaukimo delsa ir apdorojimas gavus kitą įvykį gali suteikti daugiau informacijos nei prielaida, kad atšaukimas įvyksta akimirksniu. Tinkama delsa priklauso nuo prekybos vietos ir sistemos; svarbu apskritai numatyti delsą. Jei jūsų pavedimas yra rinkos pavedimas be galimybės jo atšaukti, daliniai įvykdymai ir vėluojantys pranešimai vis tiek svarbūs.

Kokias pavedimo būsenas turėtų registruoti prekybos popierinėje sąskaitoje simuliatorius?

Naudokite nedidelį būsenų automatą ir išsaugokite kiekvieno perėjimo laiką. Tiksli terminija skiriasi pagal prekybos vietą, tačiau pagrindinės būsenos tos pačios:

Įvykdytą kiekį registruokite atskirai nuo prašyto kiekio, kartu nurodydami įvykdymo kainas ir mokesčius. Iš dalies įvykdytas pavedimas reiškia ir sudarytą sandorį, ir vis dar galiojantį įsipareigojimą dėl likusios dalies. Laikant jį tik atviru arba tiesiog užbaigtu prarandama informacija, kurios strategijai reikia kitam veiksmui nustatyti.

Pavedimo įvykisKą turi žinoti strategijaDažnas atgalinio testo supaprastinimas
Dalinis įvykdymasĮvykdytas kiekis, likęs kiekis, vidutinė kainaVisą pavedimą laikyti įvykdytu viena kaina
Atšaukimo užklausaUžklausos laikas ir galutinis atšaukimo arba įvykdymo patvirtinimasIš karto pašalinti pavedimą
AtmetimasPriežastis ir ar galima bandyti dar kartąLaikyti, kad prašytas sandoris įvyko
Galiojimo pabaigaLaikas, kai pavedimas nustojo būti tinkamas įvykdytiPalikti jį atvirą, kol vėliau bus pasiekta kaina

Kaip sąžiningai palyginti atgalinio testo sandorius su prekyba popierinėje sąskaitoje?

Pirmiausia palyginkite pavedimų įvykius, tada pozicijas, o galiausiai P&L. Jei atgaliniame teste įvykdytas pavedimas, kurio popierinė sąskaita niekada neįvykdė, vėlesnis P&L skirtumas yra pasekmė, o ne vieta, kur reikia ieškoti problemos.

Kiekvienam numatytam pavedimui abiejuose vykdymuose priskirkite tą patį nekintantį strategijos sprendimo arba pavedimo ID. Tada patikrinkite pateikimo laiką, prašytą kainą ir kiekį, galiojimo sąlygas, įvykdymus, atšaukimus, atmetimus, mokesčius ir galutinę poziciją. Taip pat užfiksuokite priežastį, kodėl simuliacijoje pavedimas nebuvo įvykdytas: kaina nepasiekė limito, tariama priešakyje buvusių pavedimų eilė nebuvo išsemta arba baigėsi pavedimo galiojimas.

Nedidelis pavyzdys padeda suprasti seką. Signalas nurodo pirkti 10 vienetų. Abi sistemos pateikia pavedimą 10:00:00. Atgaliniame teste daroma prielaida, kad jis visiškai įvykdytas 10:00:01. Prekiaujant popierinėje sąskaitoje 10:00:01 įvykdomi 4 vienetai, 10:00:02 gaunama atšaukimo užklausa, o prieš patvirtinant atšaukimą 10:00:03 užregistruojamas dar vienas 2 vienetų įvykdymas. Sąžiningas palyginimas: įvykdyti 6 vienetai iš 10, o 4 atšaukti. Suvedus viską į vieną „sandorį“ paslepiama tikroji strategijos turėta pozicija.

Ar reikia visos biržos simuliatoriaus, kad tai atlikčiau teisingai?

Ne. Atgalinį testą galima pradėti nuo kelių aiškių prielaidų: ar pakanka, kad būtų pasiekta limitinė kaina, kiek sandorių turi būti sudaryta šia kaina, kad būtų įveikta tariama priešakyje esančių pavedimų eilė, kiek laiko pavedimai lieka atviri ir kaip veikia atšaukimo delsa. Išbandykite strategiją su keliomis tikėtinomis nuostatų kombinacijomis. Jei rezultatai geri tik tada, kai visi laukiantys limitiniai pavedimai visiškai įvykdomi, apie modelį sužinojote kai ką svarbaus.

Prekyba popierinėje sąskaitoje taip pat nėra neginčijamas vykdymo kokybės etalonas. Joje gali būti naudojami simuliuoti įvykdymai ir neatsižvelgiama į tikrą pavedimų eilę. Šiuo atveju jos nauda siauresnė: ji parodo, ar strategija ir jos pavedimų valdymo sistema sutaria dėl laukiančio kiekio, atšaukimo, pozicijos ir pakartotinio bandymo elgsenos, kai įvykiai ateina laikui bėgant.

Nedidelis šio darbo džiaugsmas: geras pavedimų žurnalas gali paversti gluminantį neatitikimą nuobodžiu. „Antrasis papildomas pavedimas įvykdytas po atšaukimo užklausos“ yra daug aiškiau nei „prekyboje popierinėje sąskaitoje kažkas keisto“. Jei atgalinis testas nesutampa su popierine sąskaita, prieš redaguodami signalą peržiūrėkite pavedimo gyvavimo ciklą.

prekyba popierinėje sąskaitojepavedimų valdymasatgalinis testavimasvykdymasstrategijos tyrimai
← Visi įrašai