6. oktober 2026 · raziskave

Zakaj je moj backtest trgoval po ceni, ki je trg nikoli ni pokazal?

Zakaj je moj backtest trgoval po ceni, ki je trg nikoli ni pokazal?

Backtest lahko prikaže izvedbo po ceni, ki je trg nikoli ni prikazal. Simulator je običajno iz nepopolnih podatkov sklepal o verjetni izvedbi: iz najvišje in najnižje cene svečke, srednje cene ali limitne cene, ki se je je dotaknil en posel. Dnevnik poslov je zato lahko videti natančen, čeprav prikriva, kaj je trg dejansko ponujal.

Najprej se vprašajte, s katero ceno bi vaše naročilo lahko prišlo v stik. Svečka zadnjih poslov pove, po katerih cenah se je trgovalo v določenem intervalu. Ne pove pa, kakšna sta bila ponudba in povpraševanje ob prispetju vašega naročila, koliko količine je bilo takrat na voljo ali ali bi se vaše naročilo lahko prebilo na začetek čakalne vrste.

Zakaj moj backtest prikazuje izvedbo zunaj tržne cene?

Najprej natančno opredelimo, kaj pomeni »zunaj«. Nakupna izvedba pod najnižjo ceno svečke ali prodajna izvedba nad njeno najvišjo ceno je očitna napaka v obračunu ali časovnem usklajevanju. Tudi izvedba znotraj razpona med najnižjo in najvišjo ceno je lahko izmišljena: cena je bila morda dosežena, še preden je naročilo obstajalo, na nasprotni strani razmika ali pri premajhni količini, da bi se izvedlo vaše naročilo.

Poglejmo enominutno svečko z začetno ceno 100.00, najnižjo ceno 99.80 in zaključno ceno 100.10. Vaša strategija vidi zaključeno svečko, odda nakupno naročilo, simulator pa ga izvede pri 99.80. Najnižja cena je bila morda dosežena na začetku minute, petdeset sekund pred signalom. Svečka ne dokazuje, da je bila cena 99.80 na voljo po odločitvi.

Razpoložljivi podatkiKaj potrjujejoČesa ne morejo potrditi
Svečka OHLCVRazpon opazovanih cen poslov in obseg v intervaluZaporedja cen, ponudbe in povpraševanja ali razpoložljivosti ob prispetju naročila
Zapisi poslovPrijavljene izvedbe s časovnimi žigi in cenamiKnjigovodske likvidnosti ali vašega mesta v čakalni vrsti
Kotacije na vrhu knjige naročilNajboljšo prikazano nakupno in prodajno ceno ob vzorčenih trenutkihGlobine nad najboljšo ravnjo ali tega, ali je kotacija vztrajala med vzorčenji
Dogodki v knjigi naročilSpremembe prikazane globine in dogodke v čakalni vrsti, odvisno od pokritosti vira podatkovSkrite likvidnosti, dostopa do trgovalnega mesta ali zagotovljene prednosti v čakalni vrsti

Drug pogost vzrok je zamenjevanje srednje cene in cen, po katerih je mogoče dejansko trgovati. Če je kotacija 99.99 za nakup in 100.01 za prodajo, je nakup pri srednji ceni 100.00 v poročilu videti lepo. Pri nakupu po tržni ceni praviloma plačate prodajno ceno, pri večjem naročilu pa še vpliv na trg. Če srednjo ceno označimo kot izvedbo, s tem potiho izbrišemo polovico razmika.

Ali se lahko limitno naročilo izvede že zato, ker trg doseže njegovo ceno?

Dotik cene je dokaz, da je bil pri tej limitni ceni zabeležen posel. Ni pa dokaz, da bi se vaše čakajoče naročilo izvedlo. Če so bila pred vašim naročilom druga naročila, obseg poslov pri tej ceni morda ni bil dovolj velik, da bi prišel do vašega mesta v čakalni vrsti. Posel je lahko bil sklenjen tudi na drugem trgovalnem mestu, medtem ko je vaše naročilo čakalo drugje.

Recimo, da je vaša nakupna limitna cena 50.00 in da se po oddaji naročila pri tej ceni trguje z 200 delnicami. Simulator, ki temelji na dotiku cene, izvede vseh 500 delnic. Previdnejši model preveri, kolikšen obseg se je po prispetju naročila trgoval pri 50.00 ali nižje, nato pa upošteva ocenjeno količino naročil pred vašim. Brez podatkov o knjigi na ravni posameznih naročil je ta čakalna vrsta zgolj predpostavka. V rezultatih mora biti jasno prikazana, ne pa zamolčana kot gotovost.

Pri manjšem raziskovalnem sistemu bi to predpostavko raje izrecno navedel in preizkusil razpon vrednosti, kot pa se pretvarjal, da podatki svečk razkrivajo prednost v čakalni vrsti. Ustrezen razpon je odvisen od trgovalnega mesta, velikosti naročila in pogostosti trgovanja strategije. Mirna delnica ob odprtju trga in nelikvidna kriptovalutna pogodba ob 03:00 UTC predstavljata različni težavi pri izvedbi.

Kako naj izberem model izvedbe za podatke v obliki svečk?

Model prilagodite tako podatkom kot trditvi, ki jo utemeljuje strategija. Backtest na podlagi svečk je lahko še vedno uporaben za počasne strategije, vendar morajo izvedbe upoštevati, kaj svečke dejansko razkrivajo.

  1. Določite čas odločitve in čas prispetja naročila. Če signal uporablja zaključno ceno svečke, naročilo oddajte po njenem zaključku. Izvedbo simulirajte v naslednjem razpoložljivem intervalu ali kotaciji, ne pa pri predhodno doseženi najnižji ceni zaključene svečke.
  2. Uporabite ustrezno stran razmika. Pri nakupih po tržni ceni začnite pri prodajni ceni, pri prodajah pa pri nakupni. Če imate samo svečke poslov, ocenite razmik iz ločenega vira ali navedite, da ga model ne upošteva.
  3. Omejite izvedbe glede na verjetno likvidnost. Uporabite omejitev deleža opazovanega obsega ter upoštevajte provizije in vpliv na trg. Skupni obseg svečke ne pomeni, da je bil ves ta obseg na voljo po izbrani ceni.
  4. Preizkusite predpostavke v neugodnih razmerah. Primerjajte izvedbe po naslednji začetni ceni s konservativnim zdrsom in preverite, ali rezultat vzdrži slabšo izvedbo. Modela izvedbe ne prilagajajte, dokler strategija ne postane dobičkonosna.

To so odločitve pri modeliranju, ne recept za rekonstrukcijo ene same prave izvedbe iz nepopolnih podatkov. Če je strategija odvisna od pridobitve nekaj bazičnih točk, podatki svečk morda niso zadosten dokaz za takšno trditev.

Kako lahko ugotovim, kje se je v backtestu pojavila nemogoča izvedba?

Sledite sumljivemu poslu od signala do knjige poslov. Časovni žig odločitve, časovni žig oddaje naročila, simulirani čas prispetja, izbrano tržno opazovanje, ceno izvedbe, količino izvedbe in provizijo hranite v ločenih poljih. Nato po vrsti preverite:

Če iz zapisa posla na ta vprašanja ne morete odgovoriti, backtestu manjkajo dokazi o izvedbi. Dodajte manjkajoča polja, ročno preverite nekaj poslov glede na neobdelane podatke in potrdite, da bi do prikazane izvedbe lahko prišlo po modelu, ki ste ga nameravali uporabiti. Lepo naraščajoča krivulja kapitala ne bo razkrila cene, ki je obstajala samo v simulatorju.

backtestingtržni podatkiizvedbapodatkovno inženirstvo
← Vse objave