10:14 UTC-kor egy egyszerű kitörési stratégia kriptovaluta-perpetualt vásárolt, miután az ár átlépte a 20 perces csúcsot. A visszateszt 64 210 dolláros teljesülést mutatott. Ez az érték szerepelt az adatokban, a jelzés időbélyege pontos volt, a szimulált megbízás pedig a következő gyertyán érkezett meg. Majdnem tiszta eredménynek neveztük.
Aztán egymás mellé tettük az instrumentumazonosítókat. A jelzés a BTCUSDT perpetualból származott. A teljesülés egy BTCUSD inverz kontraktusból jött. Mindkettő 64 210 dollár körül forgott, és mindkettő likvid piac volt. Mégis külön ajánlati könyvük volt, eltérő árakkal, tickméretekkel, mélységgel és díjszabással. A visszateszt olyan piacot rakott össze, amelyhez egyetlen kereskedő sem férhetett hozzá.
Maga a stratégia nem volt különleges: belépés a gördülő csúcs fölötti záráskor, kilépés a gördülő mélypont alatti záráskor, minden pozíció méretezése fix dollárkockázatra. A gond csak akkor derült ki, amikor a „mennyit ért a BTC?” kérdésnél pontosabbat tettünk fel. Azt kérdeztük: „Mit tudott volna ez a megbízás megvenni ebben a konkrét kontraktusban, akkor és ott?”
A grafikon már a stratégia futtatása előtt összesített volt
Kutatási adatfolyamunk megkönnyítette a tőzsdék összehasonlítását. Egységesítette a szimbólumokat, és összesített ársort jelenített meg. Ez jól jött a piac áttekintéséhez, végrehajtási referenciának viszont nem volt megfelelő. Az összesített árfolyam több tőzsde legjobb árát is mutathatja, miközben a stratégia csak egyetlen helyszínre küldhet megbízást.
A kitöréskor az összesített gyertya csúcsa 64 205 dollár volt. A kiválasztott kontraktus utolsó kötési ára ekkorra már 64 218 dollárra emelkedett. Eközben az inverz kontraktus gyorsítótárazott jegyzése még mindig 64 210 dolláros eladási árat mutatott. A szimulátor az egyik ársorból vette a kitörést, a másikból pedig a kedvező eladási árat. Mindkét érték valós volt. Együtt azonban fikciót alkottak.
| Bemenet | Amit a visszateszt használt | Amire a megbízásnak szüksége volt |
|---|---|---|
| Kitörési csúcs | Összesített BTC-ár | A kiválasztott kontraktus saját árfolyamtörténete |
| Belépési referencia | Az inverz kontraktus gyorsítótárazott eladási ára | A kereskedett instrumentum friss eladási ára |
| Teljesülő mennyiség | Kért pozícióméret | Az egyes árszinteken elérhető mennyiség |
A piaci adatokat tartalmazó táblázat egy sora teljesnek tűnhet, miközben mezői különböző piacokat írnak le. A szimbólumalias nem bizonyítja, hogy két instrumentum ugyanazt az ajánlati könyvet használja. A kontraktusazonosítónak, a kereskedési helyszínnek, a jegyzés pénznemének és az időbélyegnek együtt kell végighaladnia a jelzésképzés és a végrehajtás folyamatán.
Visszajátszottuk a megbízást az ajánlati könyvön
Újrafuttattuk a belépést a kiválasztott perpetual saját legjobb eladási árával és a döntés pillanatában elérhető ajánlati könyvfrissítésekkel. A jegyzés friss volt, de a legfelső szinten csak 0,18 BTC állt rendelkezésre. A szimulált megbízásunk 0,50 BTC-re szólt. A fennmaradó 0,32 BTC-vel magasabb eladási árszintekre kellett volna lépnünk.
A korrigált belépési ár BTC-nként 21 dollárral volt rosszabb a megjelenített teljesülési árnál, díjak nélkül. Egyetlen ügyletnél ez kis különbség. A teszt egészét nézve azonban a stratégia bruttó nyereségének nagy része néhány gyors kitörésből származott. Amikor ezeket a belépéseket a megfelelő ajánlati könyvek alapján játszottuk vissza, a bruttó eredmény 31%-kal csökkent; a taker díjak és az árhatás tovább rontották.
Két olyan esetet is találtunk, amikor az ajánlati könyv legjobb árszintjének jegyzése a jelzés döntési ideje után érkezett. A legközelebbi időbélyeg alapján illesztő visszateszt észrevétlenül egy jövőbeli frissítést választhat ki. Mostantól visszafelé illesztünk: a jegyzésnek már elérhetőnek kellett lennie a megbízás elküldésekor, az életkorát pedig rögzítjük. Ha a legfrissebb használható jegyzés túl régi, a szimulátor végrehajthatatlannak jelöli a megbízást, vagy kifejezett szabályt alkalmaz az elavult adatokra.
Mi kell ahhoz, hogy egy ár kereskedhető legyen?
A gyertya záróára hasznos a jelzés kiszámításához. Önmagában nem bizonyítja, hogy egy adott megbízás ezen az áron teljesülhetett volna. Ehhez az árnak a pontos instrumentumhoz és kereskedési helyszínhez kell tartoznia, a megbízás érkezésekor elérhetőnek kell lennie, és elegendő ellenoldali mennyiségnek kell rendelkezésre állnia a kért mérethez. Ha az adatok ezekre a kérdésekre nem adnak választ, a korrekt eredmény egy ársáv vagy a hiányzó teljesülés, nem pedig egy kitalált, pontos ár.
Az összesített árfolyamot megtartottuk a piaci környezet megértéséhez, a végrehajtási folyamatból viszont kivettük. A jelzések mostantól a kiválasztott kontraktus saját árfolyamtörténetére támaszkodnak; a megbízásokat ennek a kontraktusnak az ajánlati könyvén játsszuk vissza, a díjakat és a mennyiséget pedig a teljesülés kiszámítása után vesszük figyelembe. Egy kis plusz adatkezelés, és jóval kevésbé hízelgő tőkegörbe.
A kitörés valóban megtörtént. A visszateszt egyszerűen jobb piacot adott neki, mint amit a stratégia kiválasztott.
← Összes bejegyzés


