BIKENZO

Backtesztelés: mit mutathat meg és hogyan téveszt meg

A backtesztelés egy kereskedési szabályt futtat le történelmi adatokon, hogy lássuk, hogyan viselkedett volna, de egy jól kinéző backteszt nem jelzi előre a jövőbeli eredményeket — a túlillesztés és a rejtett torzítások rendszeresen sokkal jobbnak mutatják a stratégiákat papíron, mint amilyen teljesítményt élesben nyújtanak.

A backtesztelés az a gyakorlat, amelynek során egy meghatározott kereskedési szabályrendszert veszünk, és azt múltbeli árfolyamadatokra alkalmazzuk, hogy megmérjük, hogyan teljesítettek volna a szabályok. Ez az egyik leggyakoribb eszköz a kvantitatív és a diszkrecionális kereskedésben, és valóban hasznos lehet egy stratégia viselkedésének megértéséhez. Egyben az egyik legkönnyebb eszköz arra is, hogy becsapd vele saját magadat. Ez a cikk közérthetően elmagyarázza, mit mér valójában egy backteszt, honnan származnak az eredményei, és milyen konkrét módokon — mindenekelőtt a túlillesztés révén — tud egy backteszt megtéveszteni. Semmi itt nem kereskedési tanács vagy ajánlás; ez háttéranyag, hogy megfelelő szkepticizmussal tudd olvasni a backteszt eredményeit.

Mi is valójában a backtesztelés

Egy backteszt egy rögzített szabályrendszert vesz — például egy belépési feltételt, egy kilépési feltételt és egy pozícióméretet —, és lejátssza azt egy történelmi adathalmazon, például a múltbeli Bitcoin (BTC) árfolyamokon. Rögzíti, milyen ügyleteket generált volna a szabály, és statisztikákat állít elő, mint a teljes hozam, a nyerési arány, a maximális visszaesés (drawdown) és az ügyletek száma.

Az alapötlet egyszerű: ha egy szabálynak nem lenne hasznos szerkezete, akkor nem viselkedhetne jobban a véletlennél a múltbeli adatokon. A backtesztelés egy módja annak, hogy egy szabály történelmi viselkedését mérhető, megismételhető módon vizsgáljuk, ahelyett hogy az emlékezetre vagy a megérzésre hagyatkoznánk arról, hogy 'mi szokott történni.'

Mit mutathat meg jogosan egy backteszt

Egy backteszt leíró és diagnosztikai eszközként a legmegbízhatóbb, nem pedig előrejelzőként. Feltárhatja, milyen gyakran kereskedett volna egy szabály, mekkora volt a legrosszabb történelmi visszaesése, mennyire érzékenyek az eredmények a költségekre, és hogy a logika egyáltalán fut-e hibák nélkül.

Kizárásra is hasznos. Egy szabály, amely rosszul teljesített egy hosszú, változatos történelem során — vagy amely csak egyetlen szűk időszakban működött —, egyértelműen nem bizonyította a robusztusságát. Az ötletek kizárása gyakran őszintébb felhasználása a backtesztelésnek, mint annak megpróbálása, hogy megerősítsük: egy kedvenc ötlet 'működik.'

Túlillesztés: a központi csapda

A túlillesztés akkor következik be, amikor egy stratégia annyira szorosan van egyetlen történelmi adathalmaz sajátosságaihoz hangolva, hogy zajt rögzít, nem pedig valamilyen tartós mintázatot. Ha több száz paraméter-kombinációt tesztelsz, és megtartod azt, amelyik a legjobb múltbeli hozamot adta, akkor nagyon valószínűleg a szerencsét választottad, nem a tudást — valamelyik kombináció mindig jónak fog kinézni a véletlen folytán.

A figyelmeztető jelek ismerősek: sok hangolható paraméter, olyan eredmények, amelyek összeomlanak, ha egy beállítást kicsit elmozdítunk, néhány ügyletre koncentrálódó látványos teljesítmény, és olyan szabályok, amelyeket ismételten addig igazítottak, amíg a tőkegörbe vonzóvá nem vált. Egy túlillesztett stratégia általában sokkal rosszabbul teljesít a mintán kívül — olyan adatokon, amelyekhez nem hangolták —, és még rosszabbul az éles kereskedésben.

Egyéb torzítások, amelyek felfújják a backteszt eredményeit

A túlillesztés nem az egyetlen probléma. Az előretekintési torzítás (look-ahead bias) olyan információt használ, amely az ügylet pillanatában nem lett volna elérhető. A túlélési torzítás (survivorship bias) csak a még létező eszközöket teszteli, figyelmen kívül hagyva azokat, amelyek megbuktak. Az adatbányászati torzítás (data-snooping bias) akkor halmozódik fel, amikor sokan sok ötletet tesztelnek ugyanazon a történelmen, és csak a nyertesekről számolnak be.

A gyakorlati súrlódásokat is könnyű kihagyni. A kereskedési költségek, a díjak, a csúszás (slippage), a szpredek (spreads), a finanszírozás és a nagy megbízások vékony piacon való teljesítésének nehézsége egy papíron nyereséges szabályt veszteségessé változtathat. Egy backteszt, amely tökéletes teljesítéseket feltételez ideális árakon, olyan piacot mér, amely nem létezik.

Miért nem előrejelzés egy jó backteszt

Még egy gondosan megszerkesztett, torzításokra kontrollált backteszt is a múltat írja le egyetlen meghatározott feltételrendszer mellett. A piacok változnak: a likviditás, a volatilitás, a résztvevők és a szabályozás mind változik az idő múlásával, és egy szabály, amely megfelelt egy rezsimnek, kudarcot vallhat egy másikban. A múltbeli teljesítmény nem hordoz garanciát a jövőre nézve, és a backteszteket gyakran túlzottan felnagyítják.

Ezért vitatottak és szubjektívek az előrejelző kereskedési módszerek általában — a chartmintázatok, az Elliott-hullámok, a Fibonacci-szintek és a technikai indikátorok, mint az RSI vagy a MACD. A backtesztelésük pontosnak mutathatja őket, de nem teheti őket az árak megbízható előrejelzőjévé. A kereskedés magas kockázatú, és a kutatások következetesen azt jelzik, hogy a legtöbb lakossági kereskedő idővel pénzt veszít.

A piaci adatok olvasása kontextussal

Mivel a backtesztek hízeleghetnek egy stratégiának, egyesek szívesebben néznek szélesebb piaci adatkontextust is, nem csak az árat. A BIKENZO egy Bitcoin-adat- és analitikai terminál, amely olyan információkat mutat, mint a likviditás a BTC-árfolyamhoz viszonyítva; ez a kontextus segíthet értelmezni, hogy egy történelmi mozgás mély, likvid piacon vagy vékony piacon történt-e.

Ez kontextus, nem jelzés vagy előrejelzés. A BIKENZO nem mondja meg, mi fog történni, nem generál ügyleteket, és nem is hely a kereskedésre — ez egy lencse az ár mögötti adatok megértéséhez. Bármely döntés és bármely kockázat teljes mértékben a tiéd marad.

FAQ

Azt jelenti-e egy nyereséges backteszt, hogy a stratégia pénzt fog keresni?
Nem. Egy backteszt a történelmi viselkedést írja le meghatározott feltételezések mellett; nem garantálja a jövőbeli eredményeket. Az erős múltbeli teljesítmény származhat túlillesztésből, kihagyott költségekből vagy egy már nem létező piaci rezsimből, és az eredmények gyakran sokkal rosszabbak az éles kereskedésben.
Mi a túlillesztés közérthetően?
A túlillesztés az, amikor egy stratégia annyira szorosan van egyetlen adathalmazhoz hangolva, hogy véletlenszerű zajt tanul meg valódi mintázat helyett. Az ilyen stratégiák kiválónak tűnnek azon az adaton, amelyhez illesztették őket, és jellemzően szétesnek új adatokon vagy valós kereskedésben.
Hogyan próbálják az emberek csökkenteni a túlillesztést?
A gyakori módszerek közé tartozik a kevesebb paraméter használata, a tesztelés olyan adatokon, amelyekhez a szabályt nem hangolták (mintán kívül), annak ellenőrzése, hogy az eredmények túlélik-e a beállítások kis változtatásait, valamint a reális költségek és csúszás beépítése. Ezek csökkentik a kockázatot, de sosem szüntetik meg — egyetlen backteszt sem tudja bizonyítani, hogy egy stratégia a jövőben működni fog.
Igazolhat-e a backtesztelés chartmintázatokat, Fibonaccit vagy olyan indikátorokat, mint az RSI és a MACD?
Nem megbízhatóan. Ezek a módszerek szubjektívek és vitatottak, és egy backteszt pontosabbnak mutathatja őket, mint amilyenek. A backtesztelés le tudja írni, hogyan viselkedett egy szabály a történelemben, de nem tud egy vitatott módszert az ár megbízható előrejelzőjévé alakítani.
Akkor haszontalan a backtesztelés?
Nem. Őszintén használva értékes egy szabály viselkedésének megértéséhez, a történelmi visszaesések méréséhez, a feltételezésekre való érzékenység ellenőrzéséhez és a törékeny ötletek kizárásához. A veszély az, ha a jövőbeli nyereség bizonyítékaként kezeljük, nem pedig diagnosztikai eszközként.
Hogyan kapcsolódik a BIKENZO a backteszteléshez?
A BIKENZO egy Bitcoin-adat- és analitikai terminál, nem bróker, tőzsde vagy backtesztelő motor. Nyújthat piaci adatkontextust, például a likviditást a BTC-árfolyamhoz viszonyítva, ami segíthet a történelmi mozgások értelmezésében — de nem tesz előrejelzéseket, és nem kínál kereskedési jelzéseket.

A Bitcoin liquidity terminal. Global central-bank liquidity, plotted against the Bitcoin price, in one screen.

Előnézet kérése