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

A keresés ára

Olvasási idő ~13 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

Egy 15 000 beállításra kiterjedő, 156 üzleten megítélt keresés üzletenként 0,317 R előnyt gyárt, még mielőtt a piac bármit is tett volna, és ez a szám pusztán a két darabszámból jön ki, egyetlen ár sincs benne. Alkalmazd ugyanezt a számtant a 63. lecke keresésére: a győztesének 3,65-ös t-statisztikája nem 1,65-öt, hanem 3,54-et köteles átugrani, és át is ugorja. Utána rögzíts egy számot, amelyet az a backtest soha nem nyomtatott ki — hány üzletet kellett egy szabálynak lezárnia ahhoz, hogy egyáltalán nyerhessen — és ugyanarról a győztesről szóló ítélet 147-ből egyről fej vagy írásra vándorol, miközben egyetlen ár sem változik.

Előfeltételek: A 63. lecke, a 253 cellás keresésért, amelynek győztesét ez az oldal újraítéli, 19. lecke, azért, amit egy hét üzletre épülő t-statisztika elbír és amit nem, és 62. lecke, azért a mondatért, amelyként egy szabályt meg kell fogalmazni, mielőtt bármi ebből érvényes lenne.

Amit a darabszám önmagában már elárul

Tegyük fel, hogy minden szabály, amelyet tesztelni készülsz, értéktelen. Nem rosszul megtervezett, nem szerencsétlen: értéktelen, abban a pontos értelemben, hogy a valódi előnye nulla. Mindegyik így is visszaad egy számot, mert egy véges üzletsorozat minta, és a minták ingadoznak. Tesztelj egyet, és kapsz egy kilengést. Tesztelj sokat, és megtartod a legnagyobb kilengést, amit találtál, hiszen a legnagyobbat megtartani éppen ez a keresés. Sok zajos nulla közül a legnagyobb nem nulla, és a méretét pusztán a húzások száma szabja meg, nem pedig a forrás, amelyből húztad őket.

Ez az utolsó tagmondat a lecke egésze, és megéri nyíltan kimondani. Hogy egy keresés mennyi előnyt gyárt, nem függ az eszköztől, sem az időtávtól, sem az évtől, sem attól, volt-e trend a piacon. Két darabszámtól függ: hány beállítást próbáltál ki, és mindegyiket hány üzleten ítélted meg. Mindkettő ismert, mielőtt bármit is lefuttatnál.

Írd fel egy beállítás t-statisztikáját a szokásos módon: az átlagos üzletét elosztva ennek az átlagnak a standard hibájával. A nulla előny feltevése mellett minden beállítás t-értéke egy húzás a standard normális eloszlásból, és egy N beállításra kiterjedő keresés N ilyen húzás közül a legnagyobbat tartja meg. Ennek a legnagyobb húzásnak a várható értékére egy százaléknál pontosabb zárt alak létezik; ezt az eredményt López de Prado 2014-ben Bailey, Borwein és Zhu társaságában tette közzé:

E[max of N] ≈ (1 − γ) Φ−1(1 − 1/N) + γ Φ−1(1 − 1/(N e)), γ = 0.5772156649

Egy behelyettesítés, végigvezetve, hogy itt semmit ne kelljen elhinni. 15 000 beállításnál 1 osztva N-nel 0,0000667, és a standard normális eloszlás értéke, amely ennyit hagy a felső farokban, 3,82022. Ezután N szorozva e-vel 40 774, 1 osztva ezzel 0,0000245, ennek normális értéke pedig 4,06011. A kettőt 0,4228 és 0,5772 súllyal véve 3,95869 adódik. Ez egy t-statisztika. Hogy üzletenkénti előnnyé váljon, oszd el az üzletszám négyzetgyökével: 156 gyöke 12,49, és 3,95869 osztva 12,49-cel 0,317. Ebbe a számításba semmilyen piacról semmi nem került bele.

Ugyanez a képlet arra a kérdésre is felel, amely a gyakorlati embert valóban foglalkoztatja: nem arra, mennyit ér el a legjobb értéktelen szabály, hanem arra, milyen eredmény lett volna meglepő. Ha megköveteljük, hogy egy N értéktelen beállításra kiterjedő keresés csak százból ötször adjon t fölötti értéket, a léc 0,95 1/N-edik hatványának normális értékére kerül. A próba ezen az egész oldalon egyoldalú, mert egy vesztes szabály nem felfedezés, és éppen ezért áll egyetlen beállítás 1,645-nél, nem pedig a kétoldalú 1,96-nál. Ez az alábbi harmadik oszlop.

BeállításokVárható legjobb tLéc öt százaléknálR üzletenként, 156 üzlet
10,0001,6450,000
101,5752,5680,126
1002,5313,2830,203
2532,8413,5370,228
10003,2553,8840,261
15 0003,9594,4990,317
100 0004,3914,8870,352

Olvasd az első oszlopot a harmadik ellenében, és a hasznos rész a forma lesz. Egy beállításról 253-ra lépve a léc 1,645-ről 3,537-re emelkedik, és a kár nagyobbik fele itt keletkezik. 253-ról 100 000-re lépni 395-ször annyi keresés, a lécet mégis csak további 1,350-del emeli. A büntetés a darabszám logaritmusával nő, ezért egy szerény keresés drága, egy hatalmas pedig alig rosszabb egy nagynál. Ez mindkét irányba vág, és arról az irányról, amely ellened vág, senki nem beszél: nem kell tízezres rács ahhoz, hogy csúnyán ki legyél téve. Száz már 3,283-nál tart.

A lap, amelyet ez a modul a 62. leckében nyitott, itt harmadik oszlopot kap, a mondat mellett és a 63. lecke által hozzátett számpár mellett. A léc, amelyet ennek a beállításnak át kellett ugrania, és a darabszám, amelyből a lécet kiszámolták. Az a sor, amelynek t-értéke nem haladja meg a saját lécét, semmit nem mutatott ki, az a sor pedig, amely nem viszi magával a darabszámot, lécet sem kaphat. Szinte senki nem jegyzi fel ezt a darabszámot azok közül, akikkel szemben kereskedsz. Egyetlen egész számba kerül, amelyet a keresés előtt kell leírni, nem utólag felidézni; és azért van ott ritkán, mert csak rosszabbnak mutathat egy eredményt.

Ugyanaz a győztes, ötféleképpen megítélve

A 63. lecke hatvan záróár fölött 253 mozgóátlag-beállítást keresett végig, és a legmagasabb nettó összegűt tartotta meg: 2 barra vett átlag az 5 barra vett átlaggal szemben, hét üzlet, költségek után részvényenként 9,84, t-érték 3,65. A fenti táblázat szerint 253 beállítás a lécet 3,537-re teszi, a győztes tehát átugorja. Tiszta megfelelésnek látszik, és megéri látni, miért nem az.

Számold meg, hány üzletet zárt le ténylegesen a 253 beállítás mindegyike ezeken a záróárakon. A legkisebb 1, a medián 1, a háromnegyedes pontnál álló érték 2, a legnagyobb pedig 16. A rács több mint fele soha nem zárt le második oda-vissza fordulót. A keresés tehát névlegesen 253 széles volt, és ennek a szélességnek a java olyan beállításokból állt, amelyek alig kereskedtek, amelyek átlaga egy vagy két szám átlaga, t-statisztikája pedig ennek megfelelően vad. A képlet 253 összemérhető próbát tételez fel. Amit átnyújtottak neki, 253 teljesen egyenlőtlen súlyú próba volt.

A szokásos javítás egy alsó korlát: egy beállítás csak akkor nyerhet, ha legalább ennyi üzletet lezárt. Ezt senki nem vitatja. Amit senki nem nyomtat ki, éppen a szám. Futtasd hát le újra a 63. lecke nullhipotézisét — a barról barra mért 59 elmozdulás visszatevéssel húzva, 4 000 sorozat, mag 20260903, mindegyiken ugyanaz a 253 cellás keresés — és jegyezd fel, milyen gyakran éri el a legjobb megengedett beállítás a győztes 3,65-ét, öt alsó korlátnál.

Legkisebb üzletszámMegengedett cellákLegjobb t a hatvan záróáron3,65-öt elérő szerkezet nélküli keresések
21156,240,5048
3506,240,2210
5203,790,0385
7113,650,0068
1041,030,0031

Hét üzletes alsó korlátnál, vagyis pontosan annyinál, amennyit a győztes lezárt, a szerkezet nélküli keresések 0,68 százaléka éri el a 3,65-öt: nagyjából egy a 147-ből, és olyan eredmény, amelyet bárki közölne. Kettes alsó korlátnál 50,5 százalékuk éri el. A győztes változatlan, a záróárak változatlanok, a 253 beállítás változatlan, ugyanaz a t-statisztika mégis hol 147-ből egyes lelet, hol érmefeldobás — egyetlen egész számon múlik, amely egyetlen backtest-jelentésben sem szerepel sehol.

A keresés miatti korrekciónak saját gombja van.

Abból a táblázatból még két dolog hullik ki, és mindkettő rosszabb a főcímnél. Az alsó korlát nem csupán szűri a győztest, hanem megváltoztatja, melyik beállítás nyer: kettes és hármas korlátnál a rács legjobb t-értéke 6,24, amelyet egy 3 és 11 páros ad négy üzleten, a 2 és 5 győztes pedig egyáltalán nem a legjobb cella. Tízes üzletkorlátnál viszont a 253 közül bárhol a legjobb t 1,03. Ezen a sorozaton a látszólagos előny minden morzsája olyan beállításokban lakik, amelyek tíznél kevesebbszer kereskednek, vagyis pontosan abban a tartományban, ahol egy t-statisztikának a legkevesebb joga van hitelt kapni.

A zárt alak tehát zsebbe való becslés, nem ítélet. Erre a rácsra 3,537-et adott; a szimuláció ötös alsó korlátnál 3,397-es öt százalékos pontot ad, ami közel van, hármas korlátnál pedig 9,57-et, ami egyáltalán nincs közel. A képletet arra használd, hogy indulás előtt nagyjából tudd, mivel állsz szemben, és mielőtt bármit elhinnél, szimulálj annál a korlátnál, amelyet ténylegesen használtál.

Ezt ma este csináld meg: írd le a beállításaid darabszámát és a legkisebb üzletszámodat, mielőtt eredményre néznél, majd a lécet a kettő közül az elsőből számold ki.

Amit ez nem old meg

Hogy a beállítások függetlenek. Kifejezetten nem azok: egy 2 és 5 keresztezés meg egy 2 és 6 keresztezés majdnem ugyanazokon a barokon kereskedik, a 253 húzás tehát erősen átfed, és független próbákra a valódi léc 3,537 alatt lenne. A képlet így korrelált rácson túlkorrigál, és ez az irány az óvatosságot szolgálja, nem az olvasót. Attól még érdemes ismerni ezt a korlátot, de ha egy oldal válaszként idézi, akkor mérés helyett felső határt idéz.

Hogy hatvan záróár elbírja mindezt. Ötvenkilenc elmozdulás, hét üzletes győztes, és alsó korlátok, amelyek tíznél kiürítik a rácsot: a második táblázat minden száma elég rövid sorozaton készült ahhoz, hogy a korlátok és a mintahossz összegabalyodjanak. Kétezer baron a tízes korlát a rács javát állva hagyná, és a 147-ből egy meg az érmefeldobás közötti átbillenés, ha egyáltalán bekövetkezne, más korlátoknál következne be. A mechanizmus nem függ a hossztól. A konkrét számok teljes egészében attól függenek.

Hogy a t-statisztika a helyes mennyiség. Feltételezi, hogy egy beállítás üzletei azonos szórású független húzások, márpedig egyetlen sorozaton egyetlen szabály egymást követő üzletei egyik sem: átfednek rezsimben, ugyanazoknak a heteknek az ingadozását osztják meg, és egy hosszabban tartó szabály nagyobbakat és kevesebbet vesz belőlük. Pontosan ezért ingadozik az üzletszám ennyire a rácson végig, vagyis a hiba, amelyet az alsó korlát foltoz, és a feltevés, amelyen a mennyiség nyugszik, ugyanaz a hiba kétszer megnézve.

Hogy az újramintázott nullhipotézis a helyes. Az elmozdulások visszatevéses húzása mindennel együtt szétveri a volatilitás fürtösödését is, márpedig éppen ez a fürtösödés dönti el, hány üzletet zár le egy keresztezéses beállítás. A nullhipotézis így olyan üzletszámokat állít elő, amelyeket valódi sorozat nem adna, és a második táblázat megengedettcella-számai ezért kissé mellé mennek. Egy blokkos bootstrap megőrizné a fürtösödést, és ez lenne a becsületes következő lépés; ez az oldal nem futtat ilyet, ugyanabból az okból, mint a 63. lecke.

Hogy az alsó korlát megválasztása ártatlan. Nem az, és ez az oldal épp most hajtotta végre azt a fogást, amelyre figyelmeztet: öt korlát futott le, és mind az öt ki van nyomtatva, ami becsületes, csakhogy aki ötöt futtat és arról az egyről számol be, amelynél a saját szabálya átugorja a lécet, egy szinttel feljebb tolta a keresést, és mostantól korlátok között keres. A lapra kerülő darabszámnak minden dimenziót tartalmaznia kell, amelyet változtattál, és a korlát is egy ezek közül abban a pillanatban, amikor egynél többet próbálsz.

És a legtöbbe kerülő engedmény. A 63. lecke úgy ért véget, hogy nem tudta megszámolni a soha le nem írt beállításokat, és ez az oldal ezt nem oldja meg; csak élesebbé és kényelmetlenebbé teszi. A léc a darabszám függvénye, a darabszám viszont csak a kódba írt rácsra ismert, miközben a chart, amelyet megnéztél, a paraméter, amelyet elmozdítottál és visszatettél, az eszköz, amelyet csúnyaság miatt hagytál ott, mind olyan beállítás, amely emeli a lécet és nyomot sem hagy. A képlet csak a keresésnek arra a részére alakít megszámlálhatatlan feladatot megszámlálhatóvá, amely elég becsületes volt ahhoz, hogy begépeljék. A 65. lecke ott van, ahol a darabszámot erővel egyre szorítják, az árat pedig idővel fizetik meg: egyetlen beállításnál a léc 4,499-ről 1,645-re esik, és egy 15 000 cellás backtest ezért 7,48-szor annyi üzletet igényel, mint egy élő nyilvántartás, hogy ugyanazt az állítást megtámassza.

Feladatok

  1. Számold meg a rácsodat. Vedd elő az utoljára optimalizált stratégiádat, és számold meg a kódba írt beállításokat: minden paraméterértéket, összeszorozva, azokkal együtt, amelyeket lefuttattál és eldobtál. Tedd be ezt a darabszámot a léc képletébe, vagy olvasd ki az első táblázatból. Tíz perc, és egyetlen szám marad a kezedben: a t, amelyet a győztesednek meg kellett vernie, és ez csaknem biztosan nem 1,65.
  2. Keresd meg, hol fordul át az ítéleted. Vedd ugyanezt a keresést, és futtasd le újra 2, 5 és 10 üzletes alsó korlátnál, mindegyiknél feljegyezve a nyertes beállítást és annak t-értékét. Fél óra, és egyetlen szám marad a kezedben: a korlát, amelynél a győztesed nyerni megszűnik, és ez elárulja, mennyit vittek az eredményedből olyan beállítások, amelyek alig kereskedtek.
  3. Szimuláld a lécet, amellyel valóban szemben állsz. Mintázd újra visszatevéssel az eszközöd barról barra mért változásait, futtasd le a teljes keresésedet minden szintetikus sorozaton a választott alsó korlátnál, és tedd ezt ezerszer egy leírt magról indulva. Számold meg, milyen gyakran éri el a legjobb megengedett beállítás a valódi győztesed t-értékét. Egy este, és egyetlen szám marad a kezedben: ez az arány, és a lécnek ez az egyetlen olyan változata, amely tudja, mi közös a beállításaidban.

Források. 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), a várható maximum képletéért, amelybe ez az oldal behelyettesít, és a belőle következő legrövidebb backtest-hosszért. David H. Bailey és Marcos López de Prado, „The Deflated Sharpe Ratio: Correcting for Selection Bias, Backtest Overfitting, and Non-Normality” (The Journal of Portfolio Management, 2014), ugyanezért a korrekcióért, amelyet nem átugrandó lécként, hanem a közölt számra alkalmazott levonásként fogalmaz meg. Campbell R. Harvey és Yan Liu, „Backtesting” (The Journal of Portfolio Management, 2015), azért az érvért, hogy a próbálkozások száma az első, amit bármely backtest olvasójának kérnie kellene; a lapon ezt az oszlopot teszi hozzá ez a lecke. Halbert White, „A Reality Check for Data Snooping” (Econometrica, 2000), az újramintázási eljárásért, amelyre a második táblázat épül, a 63. leckéből átvéve.

Kapcsolódó leckék
A 63. lecke

A backtesting mint bizonyíték

A 253 cellás keresés, amelynek győztesét ez a lecke a saját léce ellenében újraítéli.

Lecke elolvasása →
19. lecke

Mennyi idő, amíg megtudod

Amit egy hét üzletre épülő t-statisztika elbír és amit nem.

Lecke elolvasása →
62. lecke

Minek kellene történnie

A mondat, amelyként egy szabályt meg kell fogalmazni, mielőtt bármilyen korrekció érvényes lenne.

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 →