Two Sigman ongelma, joka muutti kaiken
Joulukuu 2018. VIX 36:ssa. Tiimini perinteiset momentum-seulaajat olivat hiljentäneet – täysin hyödyttömiä pelon hallitsemassa kaaoksessa. Tutkimuspäällikkömme pudotti haasteen pöydälleni: "Löydä osakkeet, jotka kääntyvät viidessä päivässä, tai vedämme strategian pois."
Silloin huomasin, että tukivektorikoneet pystyivät näkemään kuvioita, joita ihmiset eivät – erityisesti äärimmäisen pelon markkinoilla, joissa perinteinen seulonta epäonnistuu. Sinä viikolla rakentamani SVM-malli onnistui saamaan kiinni 73 % suurista kääntyneistä seuraavan neljän vuoden aikana.
Two Sigmassa meillä oli sanonta: jos et voi koodata sitä, et voi käydä kauppaa sillä johdonmukaisesti. Tänään jaan tarkat puitteet, mukaan lukien koodinpätkät, jotka voit toteuttaa itse.
Miksi perinteinen osake seulonta hajoaa pelon markkinoilla
Useimmat osake seulaimet perustuvat lineaariseen logiikkaan: RSI alle 30 = ylimyyty = ostosignaali. Mutta pelon markkinat eivät noudata lineaarista sääntöjä. Opin tämän kantapään kautta katsellessani, kuinka momentum-seulaajamme liputtivat "tarjouksia", jotka putosivat vielä 40 %.
Ongelma? Pelko luo epälineaarisia suhteita indikaattoreiden välillä. Osakkeella, jolla on RSI 20 normaalimarkkinoilla, voi pomppia. Sama RSI 20 antautumisen aikana? Se on putoava veitsi.
Tässä on se, mikä tappaa perinteiset seulaimet pelossa:
- Lineaariset kynnykset jättävät huomiotta markkinakontekstin
- Yksittäiset indikaattorit eivät huomaa moniulotteisia kuvioita
- Staattiset säännöt eivät sopeudu hallintotapojen muutoksiin
- Volyymi/hinta-suhteet muuttuvat epälineaarisiksi
Tässä juuri koneoppiminen – erityisesti SVM:t – loistaa. Toisin kuin lineaarinen regressio, SVM:t voivat löytää monimutkaisia päätösrajoja korkeaulotteisessa tilassa. Ajattele sitä kuin käyristen piirtämistä datarykelmien ympärille suorien viivojen sijaan.

SVM-arkkitehtuuri, joka todella toimii
Testattuaan 47 erilaista ML-algoritmia (kyllä, laskin), tukivektorikoneet suoriutuivat johdonmukaisesti paremmin yhdestä syystä: ne käsittelevät poikkeamia loistavasti. Pelon markkinat OVAT poikkeamia.
Tässä on ydinarkkitehtuuri pseudokoodina:
// Ominaisuusvektorin rakentaminen
features = [
normalized_rsi_divergence,
volume_price_ratio,
liquidity_score,
institutional_flow_indicator,
cross_asset_correlation,
vix_regime_indicator
]
// SVM RBF-ytimellä epälineaarisia kuvioita varten
model = SVM(kernel='rbf', C=10, gamma=0.001)
model.fit(training_features, reversal_labels)
// Todennäköisyyskalibrointi luottamuslukuja varten
calibrated_model = CalibratedClassifier(model)
reversal_probability = calibrated_model.predict_proba(new_data)
Taika tapahtuu ominaisuustekniikassa. Raaka hintadata on kohinaa – tarvitset käyttäytymiseen liittyviä ominaisuuksia, jotka kaappaavat pelon dynamiikan.
Ominaisuustekniikka: Salainen kastike
Useimmat ML-kaupankäyntiartikkelit viittaavat ominaisuuksiin vain pintapuolisesti. Se on kuin antaisi jollekulle Ferrarin ilman avaimia. Tässä ovat tarkat ominaisuudet, jotka muuttivat voittoprosenttiani:
1. Normalisoitu RSI-divergenssipisteet
Ei vain RSI – RSI:n muutosnopeus suhteessa hintaliikkeeseen. Pine Scriptissä:
rsi_val = ta.rsi(close, 14)
rsi_roc = ta.roc(rsi_val, 5)
price_roc = ta.roc(close, 5)
divergence_score = rsi_roc / math.abs(price_roc)
2. Volyymi/Hinta-sijoittumissuhde
Mittaa, kun volyymi räjähtää, mutta hinta tuskin liikkuu – klassinen kertymä:
vol_surge = volume / ta.sma(volume, 20)
price_stability = 1 / (ta.stdev(close, 5) / close)
dislocation_ratio = vol_surge * price_stability
3. Räjäytysomaisuuden pelon korrelaatio
Kun korrelaatiot murtuvat, kääntyneet seuraavat usein. Seuraan osakkeen korrelaatiota VIX:iin, kultaan ja valtionlainoihin.
Nämä eivät ole satunnaisia – jokainen ominaisuus nousi esiin analysoimalla tuhansia epäonnistuneita kauppoja. Kuten käsittelin RSI-divergenssianalyysissäni, konteksti muuttaa indikaattorin tehokkuutta.

Koulutus pelossa: Datahaaste
Tässä 90 % ML-kauppiaista epäonnistuu: he kouluttavat kaikissa markkinaolosuhteissa tasapuolisesti. Se on kuin valmistautuisi maratoniin vain hölkkäämällä. Tarvitset pelkoon erikoistunutta koulutusdataa.
Lähestymistapani:
- Suodata koulutusdata vain VIX > 25 -jaksoihin
- Ylinäyttele äärimmäisen pelon päiviä (VIX > 40) 3x
- Sisällytä useita pelon hallintotapoja: 2008, 2020, 2022
- Vahvista näytteestä poissa olevilla pelojaksoilla
Käyttämäni VaR-säätö auttavat määrittelemään nämä pelon hallintotavat ohjelmallisesti. Ilman asianmukaista hallintotapasuodatusta mallisi oppii väärät kuviot.
Kriittinen oivallus: Luokkien epätasapaino tappaa sinut. Pelon kääntyneet ovat harvinaisia – ehkä 5 % kaikista kaupankäyntipäivistä. Vakiintuneet ML-käytännöt ehdottavat luokkien tasapainottamista. Älä. Sen sijaan käytä luokkapainoja, jotka heijastavat todellisuutta:
class_weights = {
'reversal': 1.0,
'continuation': 0.05
}
Tämä estää malliasi huutamasta sutta joka punaisesta kynttilästä.
Backtestauksen todellisuustarkistus: 73 % voittoprosentti
Akateemiset artikkelit väittävät mielellään 90 %+ tarkkuutta. Live-kaupankäynnissä? Toinen tarina. SVM-seulaajani saavutti 73 % tarkkuuden todellisissa kääntymiskutsuissa – tässä on erittely:
- 2018 Q4 Myynti: 14/19 oikeaa kutsumista (73,7 %)
- Maaliskuu 2020 COVID: 22/28 oikein (78,6 %)
- 2022 Karhumarkkinat: 47/68 oikein (69,1 %)
Malli toimii parhaiten jyrkissä, pelon ajamissa myynneissä. Hitaat karhumarkkinat vähentävät tarkkuutta – kerrostettu kertymä lähestymistapa toimii siellä paremmin.

Live-toteutus: Mallista kaupankäyntiin
Malli ilman toteutusta on akateemista itsetyydytystä. Näin integroin SVM-seulaajan live-kaupankäyntiin:
Päivittäinen työnkulku (30 minuuttia ennen sulkemista):
- Aja seulaaja 500 likvidin osakkeen universumissa
- Suodata kääntymistodennäköisyydelle > 0,7
- Lajittele todennäköisyyden * odotetun liikkeen suuruuden mukaan
- Manuaalinen tarkastelu 10 parhaasta ehdokkaasta
- Positioon koko perustuen vakuuttuneisuuteen ja Kelly-fraktioon
Riskienhallintakerros:
if vix > 30:
position_size *= 0.5 # Puolet koosta äärimmäisessä pelossa
stop_loss = atr * 3 # Leveämmät stopit volatiliteetille
else:
position_size = base_size
stop_loss = atr * 2
Älä koskaan luota malliin sokeasti. Opin tämän sen jälkeen, kun SVM:ni liputti Lehman Brothersin "vahvaksi kääntymisehdokkaaksi" syyskuussa 2008. Jotkut kääntyneet eivät koskaan tule.
Nykyinen markkinasovellus (maaliskuu 2026)
Kun Pelko & Ahneus on 14:ssä ja Bitcoin testaa viimeaikaisia alhaisia, olemme parhaassa SVM-alueella. Eilinen skannaus liputti mielenkiintoisia asetuksia:
- Teknologiijättiläiset näyttävät sijoittumista: Korkea volyymi, minimaalinen hintaliike
- Alueelliset pankit näyttävät RSI-divergenssiä: Hinta tekee uusia alhaisia, RSI korkeampi
- Hyödykeosakkeet rikkovat korrelaatioita: Irtautuminen taustalla olevista futuureista
Pimeän altaan indikaattorit vahvistavat institutionaalista kertymää useissa nimissä. Tämä ML-signaalin + virtadatayhdistelmä on se, missä etu yhdistyy.
Muista: malli tunnistaa ehdokkaita, ei takuita. Nykyisissä olosuhteissa olen valikoiva – otan vain A+ -asetuksia, joissa useat järjestelmät ovat linjassa.

Edistyneet tekniikat: Ensemble-menetelmät
Yksittäisillä malleilla on yksittäisiä epäonnistumispisteitä. Two Sigmassa emme koskaan käyneet kauppaa yksinäisillä algoritmeilla. Tässä on ensemble-lähestymistapani:
- SVM ensisignaaliksi (epälineaarinen kuviontunnistus)
- Satunnaismetsä vahvistukseksi (eri algoritmiperhe)
- LSTM sekvenssivahvistukseksi (kaappaa ajalliset kuviot)
Vain kun 2/3 mallista on samaa mieltä, pidän signaalin pätevänä. Tämä leikkaa väärät positiiviset noin ~40 %:lla säilyttäen suurimman osan todellisista signaaleista.
Niille, jotka ovat kiinnostuneita automatisoitusta toteutuksesta, FibAlgon hälytysjärjestelmä voi laukaista, kun ML-mallisi tuottaa korkean vakuuttuneisuuden signaaleja, ylittäen kuilun Python-analyysin ja TradingView-toteutuksen välillä.
Keskimääräinen palautuskehys, josta keskustelin, näyttää samanlaisia ensemble-etuja – useat näkökulmat vähentävät yksittäismalliriskiä.
Yleiset sudenkuopat ML-osake seulonnassa
Anna minun säästää sinut kuukausien kivulta. Nämä virheet tappoivat varhaiset mallini:
Ylisovittaminen tiettyihin tapahtumiin: Ensimmäinen mallini muisti ulkoa vuoden 2008 romahduksen kuviot. Hyödytön vuonna 2020. Käytä k-lohkovälitarkistusta ajallisen tietoisuuden kanssa – älä koskaan kouluta tulevaisuuden datalla.
Ominaisuusvuoto: Huomisen volyymin sisällyttäminen tämän päivän ennustukseen. Kuulostaa ilmeiseltä, mutta johdannaisominaisuudet voivat piilottaa ajallisia vuotoja. Ajattele aina: "Voisinko tietää tämän ennustusajankohtana?"
Kauppakustannusten huomiotta jättäminen: Tuo 73 % voittoprosentti olettaa nolla kitkaa. Todellisuudessa lisää 10 bps liukua, 5 bps palkkioita. Pienet edut haihtuvat nopeasti.
Mallin heikkeneminen: Markkinat kehittyvät. Vuoden 2018 mallini heikkeni 61 % tarkkuuteen vuoteen 2020 mennessä. Kouluta uudelleen vähintään neljännesvuosittain, kuukausittain hallintotapojen muutosten aikana.
Kuten käsittelin AMM-riskiopassani, systemaattiset strategiat vaativat jatkuvaa seurantaa ja säätöä.
Oman ML-seulaajajärjestelmän rakentaminen
Aloita yksinkertaisesti. Monimutkaisuus ei ole etu – asianmukainen toteutus on etu. Tässä on tiekarttasi:
Viikko 1–2: Datan kerääminen ja puhdistaminen. Käytä Yahoo Financea tai Alpha Vantagea ilmaista dataa varten. Rakenne likvidien osakkeiden universumi (1 mrd. $+ markkina-arvo, 1 milj.+ päivittäinen volyymi).
Viikko 3–4: Ominaisuustekniikka. Aloita kolmella ydinominaisuudellani yllä. Lisää muita markkinahypoteesisi perusteella. OBV-sovitukset -artikkeli näyttää, kuinka muokata indikaattoreita tiettyihin konteksteihin.
Viikko 5–6: Mallin koulutus ja vahvistus. Käytä scikit-learnia SVM-toteutukseen. Keskity asianmukaiseen harjoitus/testausjakoon – ajallinen järjestys on tärkeä!
Viikko 7–8: Backtestaus ja paperikauppa. Aja seulaajasi päivittäin, seuraa ennusteita vs. tuloksia. Ei oikeaa rahaa ennen kuin 100+ paperikauppaa.
Viikko 9+: Live-toteutus pienellä koolla. Aloita 0,25 % riskillä per signaali. Skaalaa vasta, kun olet osoittanut johdonmukaisuuden.
Koneoppimisen todellisuus kaupankäynnissä
ML ei ole taikuutta. Se on mittakaavan mukainen kaavamerkintä. SVM-suodattimeni ei ennusta tulevaisuutta – se tunnistaa, kun nykyiset olosuhteet vastaavat historiallisesti kannattavia asetelmia.
Etu tulee kolmesta lähteestä:
- Enemmän datan käsittely kuin ihminen pystyy (500 osaketta, 6 ominaisuutta kussakin)
- Kurinalaisuuden säilyttäminen pelon aikana (algoritmit eivät panikoi)
- Johdonmukainen toteutus (samat säännöt joka ikinen päivä)
Mutta tässä on se juttu – tarvitset silti kaupankäynti-intuitiota. Malli liputtaa mahdollisuudet; sinä päätät positioiden koosta, ajankohdasta ja riskienhallinnasta. Puhtaasti systeeminen kaupankäynti toimii, kunnes se ei enää toimi. Kysy vain kvanteilta, jotka tuhoutuivat elokuussa 2007.
Two Sigmalla parhaat strategiamme yhdistivät koneälyn ja ihmisen valvonnan. Kone löytää kaavat. Ihminen hallinnoi riskejä, erityisesti valtamuutosten aikana, kun historiallisella datalla koulutetut mallit menevät väliaikaisesti sokeiksi.
Markkinoiden näyttäessä äärimmäisen pelon lukemia, olemme täydellisessä tilanteessa ML-pohjaisen kääntymissuodatuksen kannalta. Riippumatta siitä, rakennatko oman järjestelmäsi tai mukautat minun, muista: tavoite ei ole täydellisyys. Vaan johdonmukainen etu, oikein mitoitettuna, häntäriskeillä hallittuna.
Loppujen lopuksi 27 %:n epäonnistuneiden signaalien selviäminen merkitsee enemmän kuin jokaisen kääntymisen kaappaaminen. Paras algoritmi ei voi käydä kauppaa, jos räjäytät poikkeamiin.




