Signal Pilot
🟠 Haladó • 63. lecke a 85-ből

A backtesting mint bizonyíték

Olvasási idő ~14 perc • 8. modul: Rendszerépítés
Signal Pilot
Professzionális kereskedési képzés
0 %
Haladsz!
Olvass tovább a lecke befejezéséhez

Ha 253 hétköznapi mozgóátlag-szabályt vizsgálsz át a kurzus hatvan záróárán, előjön egy győztes, amely költségek után részvényenként 9,84 dollárt hoz, szemben a tartás 5,68-ával, 7 ügyleten, 3,65-ös t-statisztikával. Most keverd meg ugyanazt a hatvan gyertyáról gyertyára elmozdulást úgy, hogy semmilyen időbeli szerkezet ne éljen túl, hagyd a sodródást és a volatilitást pontosan úgy, ahogy volt, és futtasd le ugyanazt a keresést újra. E szerkezet nélküli sorozatok 52,5 százalékán a legjobb szabály legalább annyival veri a tartást, mint az igazi tette, 77,2 százalékán pedig egyáltalán veri. Az eredmény az alatt a medián alatt van, amit egy olyan piac termel, amelyben nincsen semmi. Egyetlen szabály backtestje egy mérés; a 253 közül a legjobb backtestje pedig a keresés mérése.

Előfeltételek: 62. lecke, a négyrészes mondatért, amelyben egy szabályt meg kell írni, mielőtt egyáltalán tesztelni lehetne, 19. lecke, azért, hogy hét ügylet mit bír el és mit nem, valamint a 11. lecke, az oda-vissza költségért, amelyet ez az oldal minden rajta szereplő számból levon.

Az állítás úgy kimondva, ahogy valóban értik

A backtesting melletti érvek jók, és megérdemlik, hogy tisztességesen kimondjuk őket, mielőtt bármit is tennénk velük. A szabály utasítások halmaza. A történet annak feljegyzése, mit csináltak az árak. Le lehet tehát futtatni az utasításokat a feljegyzésen, és megtudni, mennyit hozott volna a szabály, ami hétköznapi mérnöki próba, nem babona. Ha vesztett, ezt olcsón megtanultad. Ha nyert, legalább megállapítottad, hogy az ötlet nem szemlátomást üres. Épeszű ember nem állítja, hogy a backtest megjósolja a jövőt. Az állítás szűkebb, és megtámadhatatlannak hangzik: a backtest megmondja, működött-e a szabály.

Íme, amit valójában megmond, olyan adatokon, amelyeket ez a kurzus már kinyomtatott. Vedd a hatvan záróárat és egyetlen szabálycsaládot: vétel, amikor a záróárak gyors mozgóátlaga fölfelé keresztezi a lassút, kiszállás, amikor visszakeresztezi lefelé. Gyors hosszak 2-től 12-ig, lassúak 3-tól 30-ig, a lassú mindig hosszabb a gyorsnál. Ez 253 konfiguráció, ami bármilyen mérce szerint kis keresés, és mindegyik olyan szabály, amelyet egy értelmes ember javasolhatott volna.

A végrehajtási megállapodás többet nyom, mint amilyennek látszik, ezért rákerül az oldalra. Egy keresztezés csak akkor látható, ha egy gyertya lezárt, tehát a jelet az i-edik gyertya záróáránál olvassuk, az ügyletet pedig az i plusz egyedik gyertya záróáránál kötjük. A jelet adó gyertyán belül végrehajtani olyan előretekintés, amely az interneten található backtestek felét működteti, és itt nagyjából a látszólagos előny egyharmadát éri. A költségek: egy cent spread, oldalanként öt bázispont slippage egy 103 körüli áron, és részvényenként fél cent jutalék, ami oda-vissza részvényenként 0,1230-at tesz ki. Minden, az utolsó gyertyán még nyitott pozíciót ott zárunk.

Futtasd le mind a 253-at, és a legjobb egy 2 gyertyás gyors átlag egy 5 gyertyás lassúval szemben. 7 ügyletet köt, és részvényenként bruttó 10,70-et, költségek után 9,84-et hoz, szemben az első záróáron vétel és az utolsón eladás 5,68-ával. A találati aránya 7-ből 6, az átlagos ügylete egy gyertyányi szórás 0,910-e, és a saját ügyletnaplójára számított t-statisztikája 3,65. Ezek a számok mind abból a fajtából valók, amire pénzt adnak egy stratégiának.

Mit talál ugyanez a keresés egy olyan piacon, amelyben nincsen semmi

A próba olcsó. Vedd az 59 gyertyáról gyertyára elmozdulást, amelyekből ez a sorozat áll, húzz ki belőlük 59-et véletlenszerűen visszatevéssel, és fűzd őket egymás után ugyanarról a kiindulási árról. Az eredménynek ugyanaz a sodródása és ugyanaz a volatilitása, mint az eredetinek, szó szerint ugyanazokból az elmozdulásokból épül, és semmilyen időbeli szerkezete nincs: semmit sem lehet benne kihasználni olyan szabállyal, amely bárminek a sorrendjétől függ, mert a sorrendet elpusztítottuk. Csináld ezt 4000-szer a 20260903-as magról, és futtasd le mindegyiken ugyanazt a 253 cellás keresést.

MérőszámÉrték
A 253 legjobbja, bruttó10,70
A 253 legjobbja, költségek után9,84
Vedd meg és tartsd, költségek után5,68
Előny a tartáshoz képest4,16
Szerkezet nélküli sorozatok, amelyek legjobb cellája veri a tartást0,772
Szerkezet nélküli sorozatok, amelyek túlszárnyalják a valódi előnyt0,525

A szerkezetet egyáltalán nem tartalmazó sorozatok 77,2 százalékán a 253 szabály legjobbja veri a vedd meg és tartsd stratégiát. 52,5 százalékán legalább azzal a 4,16-tal veri, amit a valódi keresés talált. A mért eredmény nemcsak hogy nem lenyűgöző ehhez az eloszláshoz képest: a mediánja alatt helyezkedik el. Bármit talált is a keresés a valódi záróárakon, egy ugyanekkora keresés ennél többet talál, az esetek több mint felében, olyan adatokban, amelyekben nincs mit találni.

Figyeld meg, mit nem mond ez. Nem mondja, hogy a szabály rossz, és nem mondja, hogy a sorozatnak nincs szerkezete. Azt mondja, hogy a 9,84-es számot olyan eljárás állította elő, amely amúgy is 9,84-hez hasonló számokat állít elő, tehát a szám nem használható bizonyítékként a piacról. Ez a mérésről szóló állítás, és ez az oka annak, hogy szinte senki, akivel szemben kereskedsz, soha nem ellenőrizte a sajátját: az ellenőrzés egy estébe és egy újramintavételező ciklusba kerül, és csak elvenni tud egy eredményt.

Két oszlop kerül arra a lapra, amelyet ez a modul a 62. leckében nyitott, a mondat mellé. Amit a backtest visszaadott, itt 4,16 a viszonyítási alap fölött. És amit ugyanez a keresés adott vissza olyan adatokon, amelyekben nincsen semmi, itt 4,16 vagy jobb a próbálkozások 52,5 százalékában. Az a sor, amelynek a második oszlopa nem kényelmesen nagyobb a harmadiknál, nem keresett semmit, és a pár többet ér, mint bármelyik szám külön, mert egyik sem jelent sokat a másik nélkül.

A két kivonás, amely megelőzi

Először a költségek, mert ebből az egyetlen biztos rész ez. Egy oda-vissza itt részvényenként 0,1230-ba kerül, és egy gyertyányi szórás ezen a sorozaton 1,5443, tehát egy oda-vissza egy R 0,0796-a. Kicsinek hangzik, amíg meg nem szorozzuk. A nyertes szabály 7 ügyletet köt, és ezért 0,557R-t fizet költségre; a tartás egyet köt, és 0,0796R-t fizet. A gyakran kereskedő szabály nagyjából fél R-rel hátrébbról indul, mielőtt bármelyikük bármiben igazat mondana, és ugyanez a költség két szigmás stopnál 0,0398R, fél szigmásnál 0,1593R, mert a költség centben rögzített, az R pedig nem.

Aztán a viszonyítási alap, és ez az a kivonás, amely szinte mindig hiányzik. A legjobb cella 9,84-et hozott. A tartás 5,68-at. A szabály hozzájárulása nem 9,84, hanem 4,16, mert a sorozat emelkedett, és minden szabály, amely vételi oldalon tölt időt, felszedi ezt az emelkedést, akár értett meg valamit, akár nem. Az a backtest, amely a stratégia saját tőkegörbéjét közli, a viszonyítási alapét viszont soha, a két szám közül a nagyobbat rejtette el.

A sor, amelyet az osztott mintás próba nem lát

A szokásos védekezés mindezzel szemben a mintán kívüli tesztelés, és ez tényleg megéri, úgyhogy csináljuk meg itt. Optimalizálj csak az első harminc záróáron. A legjobb cella ezen az ablakon megint a 2-es és 5-ös pár, amely 3 ügyleten 5,53 nettót hoz, egy olyan szakaszon, amelyen a vedd meg és tartsd 0,82-t vesztett. Ez úgy fest, mint egy szabály, amely talál valamit egy olyan piacon, amely semmit nem kínált. Fagyaszd be a paramétereket, ne nyúlj semmihez, és futtasd őket az utolsó harminc záróáron.

AblakLegjobb szabály, nettóVedd meg és tartsd, nettóÜgylet
1–30. gyertya, itt optimalizálva5,53-0,823
31–60. gyertya, befagyasztott paraméterek4,296,885

Átmegy. A teljesítmény 5,53-ról 4,29-re esett, ez 22 százalékos romlás, és a szakma minden ellenőrzőlistája mindent 30 százalék alatt átmenőnek tekint. A szabály nem volt görbére illesztve abban az értelemben, ahogy az ellenőrzőlista érti: valóban tovább működött olyan adatokon, amelyeket még sosem látott.

És ugyanezeken a nem látott gyertyákon a semmittevés 6,88-at hozott. A validált szabály 2,59-cel kikapott a viszonyítási alaptól épp azon az ablakon, amelynek igazolnia kellett volna, és a mintán kívüli teszt ezt nem tudta jelenteni, mert sehol nincs benne viszonyítási alap. A teszt azt kérdezi, megismétlődik-e egy eredmény. Soha nem kérdezi meg, megérte-e az eredmény.

Ugyanaz a hatvan záróár, az őszinteség négy fokán

Az alábbiakból semmi nem változtat az adatokon vagy a szabályon. A 2-es és 5-ös keresztezés minden fokon ugyanaz a szabály, ugyanazon a hatvan záróáron lefuttatva. Csak az változik, hogy mihez mérjük, és minden fok az, amelyiknél a backtestek zöme megáll.

Állj meg az első fokon, és a szabály 7 ügyleten, 6 nyertessel, részvényenként 10,70-et hozott. Állj meg a másodikon, és a költségek 9,84-re viszik, ami 8 százalékos lecsípés, és gondosságnak érződik, mert egy oldal, amely levonja a költségeket, alaposnak látszik. Állj meg a harmadikon, és a viszonyítási alap 4,16-ra viszi, ami megint több mint felére vágja, és ezzel már messzebb jutottál, mint a publikált backtestek többsége.

A negyedik fok az, amely az ítéletet változtatja meg, nem a nagyságot. Húzd újra az elmozdulásokat, futtasd újra a keresést, és a szerkezet nélküli sorozatok 52,5 százaléka olyan legjobb cellát termel, amely 4,16-tal vagy többel veri a tartást. A szabály saját 3,65-ös t-statisztikája nem téves; csak más kérdésre válaszol. Azt méri, mennyire biztosan tér el nullától ennek a cellának a 7 ügylete, és semmiképp nem tudhatja, hogy másik 252 cella meghallgatáson volt és kiesett. A t-statisztika a győztesen belül számolódik. A keresés kívül történt.

A backtest azt a keresést méri, amelyet lefuttattál, nem azt a piacot, amelyen lefuttattad.

Ami túléli, több, mint amennyinek hangzik. A backtest ma is öl szabályokat, olcsón és véglegesen: az a szabály, amely mintán belül, költségek előtt veszít, halott, és ezt egy délután alatt megtudni a technika létének nagy része. Amit egymaga nem tud, az egy szabály előléptetése. Az előléptetéshez kell a viszonyítási alap, kellenek a költségek és kell az újramintavételezett nulleloszlás, az a nulleloszlás pedig egyetlen kódciklus.

Futtasd hát le ma este mind a négy fokot a saját szabályodon, ebben a sorrendben, és állj meg az elsőnél, amelyik elveszi az eredményt.

Amit ez nem old meg

Hogy a backtesting nem működik. Az oldal egyetlen szabálycsaládot tesztelt egyetlen hatvan gyertyás sorozaton, 253 cellás kereséssel, egy igazi program pedig gyertyák ezrein és sok eszközön fut, ahol az a mintavételi zaj, amelyet ez az oldal kihasznál, sokkal kisebb. A keresési felfújódásról szóló érv egyikük méretétől sem függ, a konkrét 52,5 százalék viszont igen, és egy hosszabb sorozaton ugyanez a keresés arányosan kisebb előnyt gyártana. Semmi itt nem mutatja, hogy a technika haszontalan: azt mutatja, mit kell egy eredménynek túlélnie, mielőtt jelentene valamit.

Hogy az újramintavételes próba a helyes nulleloszlás. Az elmozdulások visszatevéses húzása egy csapásra elpusztít minden időbeli szerkezetet, ami azzá teszi, hogy azt próbálja: kihasználja-e a szabály a sorrendet, és semmi mást. Elpusztítja a volatilitás csoportosulását is, ami valós, és amit egy keresztezéses szabály valóban tud kereskedni, tehát ebből a szempontból a nulleloszlást túl könnyű megverni, és a valódi arány inkább 52,5 százalék fölött van, mint alatta. Egy blokk-bootstrap megőrizne valamennyit ebből a szerkezetből, és ez a becsületes következő lépés; ez az oldal nem futtat ilyet.

Hogy a költségek a tieid. Egy cent spread és oldalanként öt bázispont slippage kis méretben egy likvid eszközt ír le. Valami szélesebben súlyosan optimisták, egy mély nagy kapitalizációjú papíron száz részvénnyel pesszimisták. Ezen az oldalon minden szám együtt mozog ezzel a feltevéssel, és a 7 ügyletes szabály nagyjából hétszer olyan gyorsan mozog, mint a viszonyítási alap, ami a tartásnak kedvező irány.

Hogy a vedd meg és tartsd a helyes viszonyítási alap. Itt az, mert a szabály csak vételi egy emelkedő sorozaton, és rossz egy olyan szabályhoz, amely shortol, vagy egy olyan szakaszhoz, amely esett. Eső sorozaton minden csak vételi szabály gyengén fest a tartáshoz képest, olyan okból, amelynek semmi köze a szabályhoz; és olyan viszonyítási alapot választani, amely neked kedvez, ugyanaz a hiba, mint olyan ablakot választani, amely ezt teszi. A viszonyítási alapot a teszt előtt kell megválasztani, ez az oldal pedig utána választotta, mert a sorozat már meg volt írva.

Hogy az osztott mintás eredmény általánosítható. Félenként harminc gyertya messze túl kevés, a mintán belüli ablak 3 ügyletet, a mintán kívüli 5-öt tartalmaz, és ilyen kis mintákkal a 22 százalékos romlás száma szinte semmilyen információt nem hordoz. Amit alátámaszt, az nem az, hogy a mintán kívüli tesztek rendszerint átengedik a rossz szabályokat; hanem a szűkebb és szilárdabb megállapítás, hogy átengedhetnek egy olyan szabályt, amely kikap a viszonyítási alaptól, mert nincs bennük viszonyítási alap. Ez a hiba szerkezeti, és egyáltalán nem függ a minta nagyságától.

És az engedmény, amely a legtöbbe kerül: ez az oldal azt mondja, vond ki azt, amit a keresés termelt volna, és semmilyen módot nem ad erre a ténylegesen lefuttatott keresés esetében. A 253 cella megszámolható, mert le lettek kódolva. Azok a szabályok, amelyeket megnéztél egy charton és elvetettél, a paraméter, amelyet kétszer elmozdítottál és visszatettél, az eszköz, amelyet elsőnek próbáltál és elejtettél, mert csúnya volt — azok is konfigurációk, nincsenek feljegyezve, és szinte biztosan többen vannak 253-nál. Az oldalon szereplő korrekció csak a keresésnek arra a részére számolható ki, amely elég becsületes volt ahhoz, hogy leírják. A 64. lecke frontálisan nekimegy ennek a problémának, és azt találja, hogy a felfújódás pusztán a darabszámból előre megjósolható: 15 000 konfiguráció 156 ügyleten át tartó keresésénél a legjobb cella 0,351R előnyt mutat, mielőtt a piac egyáltalán bármit is csinált volna.

Feladatok

  1. Árazd be egy oda-vissza fordulót R-ben. Vedd az eszközöd spreadjét, a brókered jutalékát és egy slippage-értéket, amelyet meg tudnál védeni, add össze őket egy oda-visszára, és oszd el egy gyertyányi szórással azon az időtávon, amelyen kereskedsz. Tíz perc, és a végén egy szám marad a kezedben: egy ügylet költsége R-ben, vagyis pontosan azt az összeget, amit minden valaha olvasott backtest kihagyott.
  2. Tedd a viszonyítási alapot a szabályod mellé. Vegyél egy szabályt, amellyel már kereskedsz vagy amelyben már hiszel, futtasd le kétszáz gyertyán az imént kiszámolt költséggel csökkentve, és ugyanazon a kétszáz gyertyán számold ki, mennyit hozott volna az első záróáron vétel és az utolsón eladás. Fél óra, és a végén egy szám marad a kezedben: a kettő közötti rés, vagyis a tőkegörbédnek az egyetlen része, amelyért a szabály felel.
  3. Futtasd le a nulleloszlást. Vedd ugyanannak a kétszáz gyertyának a gyertyáról gyertyára változásait, húzz ki kétszázat véletlenszerűen visszatevéssel, fűzd őket egymás után, és futtasd le az egész keresésedet újra a szintetikus sorozaton. Csináld ezt ezerszer egy maggal, amelyet leírsz, és számold meg, hányszor veri a legjobb eredmény a viszonyítási alapot legalább annyival, amennyit a valódi keresésed talált. Egy este, és a végén egy szám marad a kezedben: az arány, vagyis annak a valószínűsége, hogy egy olyan piac, amelyben nincsen semmi, átnyújtotta volna neked azt, amit találtál.

Források. Halbert White, „A Reality Check for Data Snooping” (Econometrica, 2000), a bootstrap eljárásért, amelyet ez a lecke kicsiben lefuttat, és azért az érvért, hogy egy keresést a legjobb szabály eloszlásához kell mérni, nem egy szabályéhoz. Ryan Sullivan, Allan Timmermann és Halbert White, „Data-Snooping, Technical Trading Rule Performance, and the Bootstrap” (The Journal of Finance, 1999), ugyanezért a kísérletért teljes léptékben, egy évszázadnyi napi adaton és szabályok ezrein elvégezve; ez az a tanulmány, amelynek ez az oldal hatvan gyertyás utánzata. David H. Bailey, Jonathan M. Borwein, Marcos López de Prado és Qiji Jim Zhu, „Pseudo-Mathematics and Financial Charlatanism: The Effects of Backtest Overfitting on Out-of-Sample Performance” (Notices of the American Mathematical Society, 2014), azért az eredményért, hogy a kipróbált konfigurációk száma önmagában elég annak megjóslásához, mennyi látszólagos előny bukkan fel; a következő lecke épp ezt számolja ki. Bradley Efron, „Bootstrap Methods: Another Look at the Jackknife” (The Annals of Statistics, 1979), az újramintavételezési módszerért, amelyből e lecke nulleloszlása épül.

Kapcsolódó leckék
62. lecke

Minek kellene történnie

A négyrészes mondat, amelyben egy szabályt meg kell írni, mielőtt egyáltalán tesztelni lehetne.

Lecke elolvasása →
19. lecke

Mennyi idő, amíg megtudod

Hogy hét ügylet és egy 3,65-ös t-statisztika mit bír el és mit nem.

Lecke elolvasása →
11. lecke

Slippage és hatás lakossági méretben

Az oda-vissza költség, amelyet ez a lecke az oldal minden számából levon.

Lecke elolvasása →
Kizárólag oktatási célra. A kereskedés jelentős veszteségkockázattal jár. Ez nem pénzügyi tanácsadás. A múltbeli teljesítmény nem garantálja a jövőbeli eredményeket.

💬 Beszélgetés (0 hozzászólás)

0/1000

Hozzászólások betöltése…

← Előző lecke Következő lecke →

Készen állsz a Signal Pilottal kereskedni?

Váltsd gyakorlatra a tanultakat professzionális indikátorokkal és valós idejű piacelemző eszközökkel.

Vissza a Signal Pilothoz →