Kohta on kulunut vuosi siitä, kun siirryin täysipäiväisesti kvanttihinnoitteluun. Vuosi sitten liiketoimintani ei toiminut kovin hyvin, ja toivoin enemmän hallintaa tuottoihin – erityisesti ennustettavampaan ROI:hen. Siitä kaikki alkoi.

En odottanut tämän matkan olevan niin haastava kuin se on ollut – kun katson taaksepäin kaikkea oppimista, uudelleenoppimista, ohjelmointia, uudelleenohjelmointia, testaamista, uudelleen testaamista ja strategioiden käynnistämistä jossain vaiheessa vain nähdäkseni niiden epäonnistuvan. On kuitenkin olemassa muutamia strategioita, jotka selviytyvät kaikista prosesseista ja tulevat kannattaviksi. Näillä voittavilla strategioilla on joitakin yhteisiä malleja, jotka olen yrittänyt koota seuraaviin opetuksiin, jotka olen oppinut viimeisen vuoden aikana.

Jotkin kohdat saattavat tuntua sinulle, kokeneemmalle kauppiaalle, ilmeisiltä. Minulle jokainen yksittäinen niistä oli valtava oivallus, jota joskus seurasi suuri muutos siinä, miten lähestyn markkinoita. Toivon, että olisin tiennyt nämä kohdat etukäteen, jolloin olisin saattanut säästää lukemattomia tunteja. Seuraavat oppitunnit on osoitettu minulle, eivätkä ne ole mielekkäässä järjestyksessä.

Valitse markkinasi strategisesti

Yhdysvaltalaisilla osakkeilla, valuuttamarkkinoilla ja joukkovelkakirjalainoilla kaupankäynti on luultavasti huono idea. Se ei ole viisain valinta, johtuen liian suuresta kilpailusta suurimpien toimijoiden kanssa. Etsi likviditeettisi makea piste tarkastelemalla markkinoita, jotka tukisivat likviditeettitarpeitasi; ne eivät kuitenkaan saisi olla suuruusluokkaa suurempia. Pelaa ja voita kapeilla markkinoilla oppimalla niiden säännöt sen sijaan, että kävisit kauppaa siellä, missä suuret toimijat käyvät kauppaa ja missä peli on paljon vaikeampaa. Pointtini on tämä: Filippiinien osakkeita koskeva strategia on todennäköisesti kannattavampi kuin sama strategia yhdysvaltalaisilla osakkeilla.

Opi säännöt ja hyväksy ne

Kävin kauppaa muutamilla eri markkinoilla (jälkikäteen ajateltuna minun olisi pitänyt pitäytyä yhdessä). Jokaisella on erilaiset säännöt ja ne on peukaloitu omalla tavallaan. Markkinatekijät (tai yhden markkinan hallitsevimmat toimijat) tekevät kaikkensa voittaakseen. Oleta, että markkinat ovat manipuloituja, opettele säännöt ja pelaa niiden mukaan, mutta älä kiellä niitä ajattelemalla, että markkinat toimivat luonnollisesti. Älä yritä ”päihittää” markkinoita; se todennäköisesti kostautuu. Etsi jälkiä (käyttäytymistä, spoofingia, sijoitettuja toimeksiantoja ja likviditeetin metsästystä), joita suuret toimijat jättävät, ja käytä niitä hyödyksesi.

Tiedä prioriteettisi

Kvanttipörssikaupankäynnissä on niin paljon tekemistä: strategian kehittäminen, optimointi, backtestaus, toteutus ja riskienhallinta. Älä keskity alussa vääriin asioihin – kuten parametrien optimointiin. Rakenna pikemminkin hyvin yksinkertaisia MVP-versioita jokaisesta yhtälön osasta ja optimoi iteroimalla tuotannon aikana. Täydellisesti optimoitu strategia ei auta, jos toteutusosa ei toimi oikein.

Varaa häviöitä ensimmäisenä vuonna

Älä aloita skaalautumista heti, kun näet alkuvaiheen onnistumisia, sillä se voi pyyhkäistä isoja osia (minun tapauksessani 40 %) salkustasi. Tarvitset paljon enemmän vaivaa saadaksesi sen takaisin; sen sijaan on helpompaa mukauttaa oikeat riskitoimenpiteet heti aluksi. Kun sinulla on odotus hävitä (ainakin ensimmäisenä vuonna), sinulla ei ole houkutusta laittaa enemmän pääomaa kuin on tarpeen testaamiseen ja oppimiseen.

Älä kiirehdi pääoman kanssa, kiirehdi toteutuksen kanssa

Olin liian nopea skaalautuessani pääomaa ajattelematta riskiä. Päinvastoin, löysin itseni usein analyysihalvauksesta ja lupasin itselleni käynnistää uuden strategian ”vielä yhden optimoinnin” jälkeen. Optimoin liikaa. Minun olisi pitänyt vain käynnistää useita strategioita nähdäkseni ensin, mikä toimii, ja optimoida sitten jatkuvasti. Strategioiden rakentaminen ja optimointi teorian pohjalta ei auta, jos ei ole käytännön palautetta.

Älä käytä hintapysähdyksiä

Havaitsin, että hintapysähdyksiä voi käyttää kahdella tavalla: joko ei lainkaan tai suojautumiseen mustilta joutsenilta (volatiliteettijakauman 99,9. persentiili). Käytä hintapysähdysten sijaan aikapysähdyksiä ja oikeaa position mitoitusta. Tutkimusten mukaan hintapysäytykset tuhoavat hyvän strategian yksinkertaisesti volatiliteetin satunnaisuuden vuoksi. Aikaulottuvuus on paljon helpommin hallittavissa ja ennustettavissa kuin kauppasi ilmaiseman hypoteesin hintaulottuvuus (sekä backtestissä että live-kaupankäynnissä). Käyttämällä aikapysähdyksiä asetat aikarajoitteen sille, kuinka kauan hypoteesisi on voimassa, mikä lähes aina vähentää varianssia (ja kasvattaa Sharpe-suhdetta).

Tiedä sisään- ja uloskirjautumiset

Tiedä jokaisessa kaupankäynnissä, minne tullaan sisään ja minne poistutaan. Minulle nämä asetetaan kahden säännön perusteella – toinen on muunnettu kaava Average True Range. On melkeinpä välttämätöntä, että sinulla on ennalta määritellyt säännöt sisään- ja ulostuloille, jotta voit testata oikein jälkikäteen ja tietää, mitä odottaa live-kaupankäynnissä.

Tiedä numerot

Kunkin strategian kohdalla sinun on tiedettävä odotusarvo, osumaprosentti, odotettavissa oleva alenema, pisin alenema, odotettavissa oleva volatiliteetti, varianssi, Sharpen suhdeluku, tuoton standardipoikkeama, tuoton vinous ja riskiarvo. Myös asianmukainen panoksen mitoitus, turmeltumisriski, Kelly-fraktio ja optimaalinen F olisi valittava strategisesti sen perusteella, miten strategia toimii backtestin aikana.

Riskienhallinta etusijalle

40 %:n pääoman häviäminen saattaa tapahtua päivässä; sen takaisin saaminen voi kuitenkin viedä useita kuukausia – ellei jopa vuosia. Käytä ensisijaisesti asianmukaista riskienhallintaa ja ole tietoinen mustan joutsenen tapahtumista johtuvasta mahdollisesta tuhoutumisriskistä. On aina hyvä odottaa pahinta tapausta. Ei pitäisi olla haaste strategioillesi herätä eräänä päivänä -50 %:n markkinoihin.

Käytä vähemmän parametreja, mutta tiedä, mitä ne tekevät

Parhaiten menestyvä strategiani käyttää vain kolmea parametria. Niitä on helppo optimoida ja niiden kestävyyttä on helppo testata. Tiedä tarkalleen, mitä parametrit tekevät ja miksi niitä käytetään. Pahin virhe lienee antaa optimointiskriptin tuottaa parametriyhdistelmiä, esim. hidas/nopea jakso useille liukuvan keskiarvon yhdistelmille. Varmasti tulee jotain, joka näyttää hyvältä paperilla/backtestissä, mutta on epätodennäköistä, että sama strategia toimii live-kaupankäynnissä.

Luo hyvä backtesti ja tunne kaikki yksityiskohdat

Älä lähde mukaan johonkin jo olemassa olevaan ratkaisuun (koskee muuten myös optimointia) – ainakaan ennen kuin olet itse rakentanut useita backtestejä. Sinun on ymmärrettävä lipsumisen, maksujen, suoritusjärjestyksen tapahtumien ja eri toimeksiantotyyppien vaikutus. Kirjoitin useita backtest-skriptejä, joista ensimmäiset olivat hyvin monimutkaisia. Viimeisin versioni toimii 12 rivillä koodia (enimmäkseen rinnakkaisia laskutoimituksia), mikä todistaa jälleen kerran, että yksinkertaisuus voittaa.

Löydä hyvä arviointimittari

Testata, miten strategia toimii, ei riitä; sinun on tiedettävä, mitä etsiä. Tietenkin aloin etsiä korkeaa vuotuista tuottoa. Sharpen optimointi oli parempi, mutta sekään ei ollut sitä, mitä tarvitsin (ihmettelen vielä tänäkin päivänä, miksi Sharpe-suhdetta pidetään alan standardina, koska on olemassa paljon parempia mittareita). Oikean optimointi- ja arviointimittarin löytäminen on avainasemassa; muuten rakennat jotain, joka menee täysin ohi tavoitteesta.

Tiedä, mitä etsit strategiasta

Hyvän arviointimittarin löytämiseksi sinun on tiedettävä, mitä itse asiassa etsit strategiasta, ja se perustuu moniin henkilökohtaisiin tekijöihin (salkun koko, hyväksytty riski jne.). Tiedä haluamasi strategian ominaisuudet, sillä se määrittelee, millainen arviointimittari kannattaa valita. Suosin johdonmukaisia, negatiivisesti vinoutuneita strategioita, ja tätä varten rakennan.

Keskity ominaisuuksiin, älä optimointiin

Optimoinnissa on suuri valikoima työkaluja, geneettisiä optimointeja, ei-konveksaalisia optimointeja, pääkomponenttianalyysiä, tilastollista/Bayesin optimointia ja tuhansia hienoja kirjastoja. Omasta näkökulmastani optimointi auttaa parantamaan strategiaa 10-20%, se ei kuitenkaan johda kannattavaan strategiaan ylipäätään. Jos strategia on huono, mikään optimointi ei auta. Keskity deduktiiviseen analyysiin ja feature engineeringiin – yksinkertaisesti sanottuna siihen, että syötteistä ja datasta tehdään järkeä.

Syväoppiminen on yliarvostettua

En ymmärrä tätä hypeä. Koneoppiminen on hienoa, ja syväoppiminen on myös hienoa (aka neuroverkot). 10 000 parametrin optimointi johtaa todennäköisesti vain overfittingiin. Jos strategia ei toimi ilman tehokirjastoja, kuten Tensorflow, se ei todennäköisesti toimi tuotannossa (vaikka backtest olisi hämmästyttävä). Lyhyesti sanottuna strategian pitäisi olla kannattava jo jollakin yksinkertaisella, kuten lineaarisella regressiolla.

parempaa dataa, parempia ominaisuuksia

”Data on digitaalisen maailman öljyä”, joku sanoi. Kuulin, että jotkut hedge-rahastot käyttävät satelliittikuvia parkkipaikoista ennustamaan osakkeiden tuottoja. Vaikka tuollainen data sisältää luultavasti rajoitetusti tietoa (veikkaisin, että yhtä hyvin kuin sääennustetiedot), se on silti käyttökelpoista dataa eikä missään nimessä huonoa. Pointtini on, että on keskityttävä parempien tietojen hankkimiseen, jotta voidaan tuottaa parempia ominaisuuksia. Yhdistä useita heikkoja ominaisuuksia ja strategioita yhteen, ja tämä todennäköisesti parantaa tuottoja.

Academic papers are great, but…

Academic papers are great, but they usually fall short in terms of practicality. Akateemikkojen ja elinkeinonharjoittajien välillä on yksinkertaisesti epäsuhta kannustimissa. Akateemikot eivät ole kauppiaita, eivätkä kauppiaat julkaise toimivia strategioita. Suhtaudu akateemiseen tutkimukseen varauksella, mutta älä kuitenkaan jätä sitä kokonaan huomiotta. En osaa laskea, kuinka monta kertaa olen löytänyt pienen tiedonpätkän, joka on todella arvokasta. Yksi paperi ei johda hyvään strategiaan, mutta 20 paperin oivallusten soveltaminen saattaa.

Nopea palaute on välttämätöntä

Kilpaileminen suurten toimijoiden kanssa, erityisesti HFT-maailmassa, on luultavasti huono ajatus (kuten selitin edellä). Päinvastoin meneminen – kauppojen pitäminen päiviä, kuukausia ja vuosia – ei myöskään ole ihanteellista. Minulle makea piste on 5-60 minuutin pitoaika. Jos en voi testata strategiaa kahdessa viikossa tilastollisesti merkitsevästi (eli yli 100 kauppaa), en investoi siihen aikaani. Testatakseni strategiaa, jonka pitoaika on useita päiviä (ja pidempi), tarvitsisin kuukausia validointiin, eikä se kiinnosta minua.

Älä käy kauppaa vain hinnan ja hintaindikaattoreiden perusteella

Hinta heijastaa sitä, mitä markkinoilla on tapahtunut. Sillä on vähän tietoa toimijoista ja heidän aikeistaan. Indikaattorit eivät myöskään ole tarpeeksi käyttökelpoisia, koska ne ovat vain johdannainen hinnasta, ja useimmat indikaattorit jäävät jälkeen. Markkinat ovat nykyään epäsäännöllisempiä ja automatisoidumpia, eivätkä jäljessä olevat indikaattorit ole niin hyödyllisiä kuin olettaisin niiden olleen aiemmin.

Johdannaisten johdannaiset ovat hyödyllisiä

Löysin tavan tehdä indikaattoreista hyödyllisiä: rakentamalla niiden pohjalta ominaisuuksia. Olen havainnut, että strategiat suoriutuisivat paljon paremmin, jos indikaattorit – vaikkapa liukuva keskiarvo – on strategisesti refaktoroitu joksikin toisen derivaation kaltaiseksi, esimerkiksi jakamalla MA-arvot binsseihin ja laskemalla esiintymät per bin viimeisten X tunnin aikana.

Kaksinkertaista aikaväli

Korkeamman aikavälien valitseminen johtaa lähes aina parempiin tuloksiin. Tämä ei voi toistua loputtomiin, koska tutkimuksesi on tehty yhtä tiettyä aikaväliä silmällä pitäen. Jos strategiasi on kuitenkin optimoitu 15 minuutille, pitoajan pidentäminen 30 minuutista 30 minuuttiin tuottaa lähes aina parempia tuottoja pienemmällä riskillä.

Riskipitoisemmat markkinat, pienemmät positiot

Tehdä kauppaa volatiliteeteiltaan epävakaammilla markkinoilla, koska volatiliteetti on hyvä mahdollisuus. Ole vain tietoinen riskeistä ja säädä position kokoa sen mukaisesti. Voi olla paljon kannattavampaa käydä kauppaa markkinoilla, jotka ovat 10x yhtä volatiileja, kun sinulla on 1/10-osa positiosta. Riski-palkkiokäyrä ei ole niin lineaarinen kuin luulin – katson sinua Bitcoin!

Trading-palkkiot tekevät valtavan eron

Kun tuplaat pitoajan, kuten mainittiin, palkkioiden merkitys jo vähenee. Strategioiden optimointi nimenomaan suurten maksujen välttämiseksi on vielä fiksumpaa. Strategiasta riippuen (erityisesti korkeammilla taajuuksilla) palkkiot muodostavat yli 50 prosenttia tuotoista. Tämä tarkoittaa, että maksujen optimoinnin pitäisi olla yksi tärkeimmistä prioriteeteista, olipa se sitten vähemmän markkinatoimeksiantojen käyttämistä, parempien välittäjien käyttämistä tai parempien sopimusten neuvottelemista nykyisten välittäjien kanssa.

Tutustu kaupankäyntiympäristöösi

Kuten edellä mainittiin kohdassa perehtyä tarkemmin yhteen markkinarakoon, tämä pätee vielä enemmän välittäjiin, pörsseihin, niiden API-rajapintoihin, seisokkiaikoihin ja viiveisiin. Sinun tulisi tuntea niiden API:t läpikotaisin, varsinkin kun monilla välittäjillä on monimutkaisia ja piilotettuja toiminnallisuuksia, jotka voivat todella auttaa omaa suorituskykyä (ehdolliset toimeksiannot, paremmat tiedot toimeksiantojen täyttymisestä/tilasta, irtotavaratoiminnot jne.).

Afterthoughts

Kiitos lukemisesta. Päivittäin oppimani asioiden määrä ei hidastu, vaikka lähestynkin 2000 tunnin rajaa kvanttipörssikaupankäynnissä. Mielestäni tämä on yksi niistä harvoista aloista, joilla oppimiskäyrä muuttuu ajan myötä jyrkemmäksi, mikä itse asiassa saa minut innostumaan tulevista kuukausista/vuosista. Lopuksi, jos unohdin jotain – tai jos haluat ottaa yhteyttä – ota yhteyttä minuun sähköpostitse.

Vastaa

Sähköpostiosoitettasi ei julkaista.