Maskin Læring Og Kort Posisjoner I Lager Trading Strategier


Jeg er ikke veldig sikker på om dette spørsmålet passer inn her. Jeg har nylig begynt å lese og lære om maskinlæring. Kan noen kaste litt lys på hvordan man skal gå om det, eller heller kan noen dele sin erfaring og få grunnleggende tips om hvordan man skal gå om det eller i det minste begynne å bruke det for å se noen resultater fra datasett. Hvor ambisiøs høres dette. Også nevner om standardalgoritmer som bør prøves eller sees mens du gjør dette. Skrevet 1. februar kl. 18 35. Det ser ut til å være en grunnleggende feil at noen kan komme sammen og lære noen maskinlæring eller AI-algoritmer, sette dem opp som en svart boks, slå deg og lene deg tilbake mens de går på pensjon. Mitt råd til deg. Les statistikk og maskinlæring først, så bekymre deg for hvordan å bruke dem på et gitt problem Det er ingen gratis lunsj her Dataanalyse er hardt arbeid Les Elements of Statistical Learning pdf er tilgjengelig gratis på nettstedet, og ikke begynn å prøve å bygge en modell til du forstår minst første 8 chapt Når du forstår statistikk og maskinlæring, må du lære å teste og bygge en handelsmodell, regnskap for transaksjonskostnader osv. som er et helt annet område. Etter at du har et håndtak på både analysen og økonomien , så vil det være noe tydelig hvordan man bruker det. Hele punktet i disse algoritmene prøver å finne en måte å passe en modell på data og produsere lav bias og varians i prediksjon, dvs. at trening og testforutsigelsesfeil vil være lav og lignende Her er et eksempel på et handelssystem ved hjelp av en støttevektormaskin i R, men bare husk at du vil gjøre deg selv en stor misforståelse hvis du ikke bruker tid til å forstå grunnleggende før du prøver å bruke noe esoterisk. Bare å legge til en underholdende oppdatering Jeg har nylig kommet over denne mastergraden En novel algoritmisk handelsramme Bruk av evolusjon og maskinlæring for porteføljeoptimalisering 2012 Det er en omfattende gjennomgang av ulike maskininlæringer approa ches sammenlignet med buy-and-hold Etter nesten 200 sider, kommer de til grunnleggende konklusjon. No trading system kunne overgå benchmark når du bruker transaksjonskostnader. Det betyr ikke at det ikke kan gjøres jeg har ikke brukt noe tid gjennomgår metodene sine for å se tilnærmingenes gyldighet, men det gir absolutt noen flere bevis for frivillig lunsjteorem. Ansatt 1. februar kl. 18 48. Jase Som en av forfatterne til den nevnte masteroppgaven jeg kan sitere mitt eget arbeid og si at hvis noen faktisk oppnår lønnsomme resultater, er det ikke noe incitament til å dele dem, da det ville negere deres fordel. Selv om resultatene våre kan gi støtte til markedshypotesen, utelukker det ikke at det eksisterer systemer som fungerer. Det kan være som sannsynlighetsteori Det er spekulert at gjennombrudd innen sannsynlighetsteori har skjedd flere ganger, men aldri delt. Dette kan skyldes det praktiske programmet i gambling. Så igjen er dette kanskje en ll moderne alkymi Andr Christoffer Andersen 30. april 13 på 10 01. Mitt råd til deg Det er flere maskinlærende kunstig intelligens ML AI grener der ute. Jeg har bare prøvd genetisk programmering og noen nevrale nettverk, og jeg tror personlig at læringen fra erfaring grenen ser ut til å ha den mest potensielle GP GA og nevrale nettene synes å være de mest utforskede metodene for formålet med aksjemarkedsprognoser, men hvis du gjør noe data mining på Predict Wall Street, kan du kanskje også gjøre noen følelsesanalyser. Tilbring litt tid på å lære om de ulike ML AI-teknikkene, finn noen markedsdata og prøv å implementere noen av disse algoritmene. Hver har sine sterke og svake sider, men du kan kanskje kombinere prognosene for hver algoritme til en sammensatt prediksjon som ligner på hva vinnerne av NetFlix-prisen gjorde. Noen ressurser Her er noen ressurser du kanskje vil se på. Chatter Den generelle konsensus blant handelsfolk er t lue Artificial Intelligence er en voodoo vitenskap, du kan ikke få en datamaskin til å forutsi aksjekursene, og du er sikker på å miste pengene dine hvis du prøver å gjøre det. Likevel vil de samme folkene fortelle deg at omtrent den eneste måten å tjene penger på aksjen markedet er å bygge og forbedre din egen handelsstrategi og følge den nøye som ikke egentlig er en dårlig ide. Ideen om AI-algoritmer er ikke å bygge Chip og la han handle for deg, men å automatisere prosessen med å skape strategier. veldig kjedelig prosess og på ingen måte er det lett. Minimizing Overfitting Som vi har hørt før, er et grunnleggende problem med AI-algoritmer overfitting aka datamining bias gitt et sett med data, din AI-algoritme kan finne et mønster som er spesielt relevant for trening sett, men det kan ikke være relevant i testsettet. Det finnes flere måter å minimere overfitting. Bruk et valideringssett gir det ikke tilbakemelding til algoritmen, men det lar deg oppdage når algoritmen din potensielt begynner å overfit, dvs. at du kan slutte å trene hvis du overfitterer for mye. Bruk online maskinlæring det i stor grad eliminerer behovet for back-testing og det er svært aktuelt for algoritmer som forsøker å gjøre markedsprognoser. Ensemble Learning gir deg en måte å ta flere maskininlæringsalgoritmer og kombinere sine spådommer Forutsetningen er at ulike algoritmer kan ha overfit dataene i noe område, men den korrekte kombinasjonen av sine spådommer vil ha bedre prediktiv kraft. To aspekter av statistisk læring er nyttige for handel. tidligere nevnt noen statistiske metoder som er fokusert på å jobbe med levende datasett. Det betyr at du vet at du bare observerer et utvalg av data, og du vil ekstrapolere. Du må derfor håndtere prøven og ut av prøveproblemer, overfitting osv. Fra dette synspunktet , data-mining er mer fokusert på døde datasett, dvs. at du kan se nesten alle dataene, du har et eneste problem i prøven enn statistisk lære g. Fordi statistisk læring handler om å jobbe med levende datasett, måtte de anvendte matematikkene som omhandler dem, fokusere på et toskala problem. venstre XF theta Xn, xi L pi Xn, n ende rett hvor X er multidimensjonal tilstandsrommet for å studere du har i det dine forklarende variabler og de som skal forutsi, F inneholder dynamikken til X som trenger noen parametere theta Slumpen av X kommer fra innovasjonen xi, som er ii d. Målet med statistisk læring er å bygge en metodikk L som som innganger en delvis observasjon pi av X og gradvis justere et estimathatt theta av theta, slik at vi vil vite alt som trengs på X. Hvis du tenker på å bruke statistisk læring for å finne parametrene for en lineær regresjon, kan vi modellere tilstandsrommet som denne underbrace yx slutten, høyre venstre begynner ab 1 1 0 0 slutten høyre cdot underbrace x 1 epsilon slutten til høyre som dermed tillater observere y, xn på noen n her theta a, b. Deretter må du finne en måte å gradvis bygge en estimator av theta ved hjelp av våre observasjoner. Hvorfor ikke en gradient nedstigning på L2 avstanden mellom y og regresjonen. C hat a, hat bn sum yk - hat a, xk h ved b 2. Her gamma er en vektingsplan. Underlig en fin måte å bygge en estimator på er å skrive riktig kriteriene for å minimere og implementere en gradient nedstigning som vil produsere læringsordningen L. Gå tilbake til vårt opprinnelige generiske problem trenger vi litt anvendt matte å vite når par dynamiske systemer i X, hat theta konvergerer, og vi trenger å vite hvordan å bygge estimeringsordninger L som konvergerer mot den opprinnelige theta. For å gi deg poeng på slike matematiske resultater. Nå kan vi gå tilbake til andre aspekt av statistisk læring som er veldig interessant for quant trader strategists.2 Resultatene som brukes til å bevise effektiviteten av statistiske læringsmetoder kan brukes til å bevise effektiviteten av handelsalgoritmer For å se at det er nok å lese igjen det koplede dynamiske systemet som tillater å skrive statistisk læring forlot MF rho Mn, xi L pi Mn, n ende right. Now M er markedsvariabler, rho er underliggende PnL, L er en handelsstrategi Bare erstatt minimering av et kriterium med maks imizing PnL. See for eksempel Optimal deling av ordrer over likviditetsbassengene, en stokatisk algoritm tilnærming av Gilles Pags, Sophie Laruelle, Charles-Albert Lehalle i dette papiret, viser forfattere hvem som skal bruke denne tilnærmingen for å splitte en rekkefølge på forskjellige mørke bassenger samtidig lære evnen til bassengene å gi likviditet og bruke resultatene til trade. The statistiske læringsverktøy kan brukes til å bygge iterative trading strategier de fleste av dem er iterative og bevise deres effektivitet. Det korte og brutale svaret er du ikke t Først fordi ML og statistikk er ikke noe du kan kommandere godt om ett eller to år Min anbefalte tidshorisont for å lære noe som ikke er trivielt, er 10 år ML ikke en oppskrift å tjene penger, men bare en annen måte å observere virkeligheten på. For det andre, fordi en god statistiker vet at forståelsen av dataene og problemdomenet er 80 av arbeidet Det er derfor du har statistikere som fokuserer på fysikkdataanalyse, på genomikk, på sabermetri osv. For rekorden, Jerome Friedman, medforfatter av ESL sitert ovenfor, er fysiker og har fortsatt en høflighet på SLAC. Så, studer statistikk og finans i noen år. Vær tålmodig. Gå din egen vei. Mengde kan variere. Feb 9 11 på 4 41.Jeg er helt enig Bare fordi du vet maskinlæring og statistikk, betyr det ikke at du vet hvordan du skal søke om det for å finansiere Dr Mike 10. aug 11 kl 20 25. Også en viktig ting å huske er du vant t være handel mot folk, vil du være handel mot andre kunstige intelligens algoritmer som ser på handler hoper seg inn og er rasende beregne oddsen at kollektive yous ville bli spooked ut av en produsert nedgang og ta det mindre tapet i å skape en spike dypp og lure alle de AI s til å stoppe, og deretter rulle dukkert tilbake i det og ri bølgen, tjene dine tap Aksjemarkedet er et nullsum spill, behandle det som å legge inn en pro boxing kamp, ​​hvis du er 20 år veteran, du kommer til å gå se Eric Leschinski 13 februar 16 på 1 56. En grunnleggende applikasjon forutsier økonomisk nød. Få en mengde data med noen selskaper som har misligholdt, og andre som har t, med en rekke økonomiske opplysninger og forhold. Bruk en maskinlæringsmetode slik som SVM, for å se om du kan forutsi hvilke selskaper som vil være standard og hvilke som ikke vil. Bruke at SVM i fremtiden til korte høye sannsynlighet standard selskaper og lange lav sannsynlighet standard selskaper, med fortjeneste av kort salg. Det er en sier å plukke pennies opp foran dampruller du gjør tilsvarende som å selge en out-of-the-money put i dette tilfellet vil du gjøre lite fortjeneste i mange år, deretter bli helt renset ut når markedet smelter ned hvert 10. år eller så Det er også en tilsvarende strategi som kjøper penger, setter de penger i årevis, så gjør en drap når markedet smelter ned. Se Talabs The Black Swan Contango 5. juni kl. 22.00 20.Remember at internasjonal bedrifter har brukt hund røde milliarder dollar og mannstid på de aller beste og klareste kunstige intelligenshodet i løpet av de siste 40 årene har jeg snakket med noen av tårnene som er ansvarlige for alfaene over på Citadel og Goldman Sachs, og hubrisen fra nybegynnere til å tenke de kan sette sammen en algoritme som vil gå tå til tå med dem og vinne, er nesten like dum som et barn forteller deg at han skal hoppe til månen Lykke til barn og pass opp for rommartierne Ikke for å si nye mestere kan ikke bli gjort, men oddsen er mot deg Eric Leschinski 13. februar kl. 16.00. En mulighet verdt å utforske er å bruke støttemetoduleringsverktøyet på Metatrader 5-plattformen. For det første, hvis du ikke er kjent med det, har Metatrader 5 er en plattform utviklet for brukere å implementere algoritmisk handel i forex og CFD-markeder Jeg er ikke sikker på om plattformen kan utvides til aksjer og andre markeder. Det brukes vanligvis til tekniske analysebaserte strategier, dvs. ved hjelp av indikatorer basert på hist orical data og brukes av folk som ønsker å automatisere sin handel. Support Vector Machine Learning Tool har blitt utviklet av et av brukerne i samfunnet for å tillate at støttevektormaskiner skal brukes til tekniske indikatorer og gi råd om handel. En gratis demo-versjon av verktøyet kan lastes ned her hvis du vil undersøke videre. Som jeg forstår, bruker verktøyet historiske prisdata for å vurdere om hypotetiske handler tidligere hadde vært vellykket. Det tar da disse dataene sammen med de historiske verdiene fra en rekke tilpasses indikatorer MACD, oscillatorer osv., og bruker dette til å trene en støttevektormaskin. Deretter bruker den den trente støttevektormaskinen til å signalisere fremtidige kjøpssalg. En bedre beskrivelse finner du på linken. Jeg har spilt rundt med det litt med noen veldig interessante resultater, men som med alle algoritmiske handelsstrategier anbefaler jeg solid tilbake fremover testing før du tar den til live market. answered 10 desember 12 kl 11 59. y, men til tross for å bli brukt som et populært eksempel på maskinlæring, har ingen noensinne oppnådd et aksjemarkedsprognose. Det virker ikke av flere grunner, sjekk tilfeldig tur av Fama og ganske mange andre, rasjonell beslutningstaking feil, feil forutsetninger , men det mest overbevisende er at hvis det skulle fungere, ville noen kunne bli vanvittig rik i løpet av flere måneder, da de egentlig eier hele verden. Da dette ikke skjer, og du kan være sikker på at hele banken har prøvd det, har vi gode bevis , at det bare ikke virker. I tillegg Hvordan tror du du vil oppnå hva titusenvis av fagfolk har unnlatt, ved å bruke de samme metodene de har, pluss begrensede ressurser og bare grunnleggende versjoner av deres metoder. 7 47. Bare en side om dine mest overbevisende grunnstrategier har kapasitetsgrenser, dvs. nivåer utover hvilke markedsvirkningen din vil overskride tilgjengelig alfa, selv om du antar at du har ubegrenset kapital. Jeg er ikke sikker på hva du mener med en lagerma rket prediksjonsindeks futures ETF s, men absolutt er det mange mennesker som foretar kortsiktige spådommer, og nyter godt av dem hver dag i markeder avekz 23. november kl. 13 på 13. 19. Jeg ekko mye av hva Shane skrev. I tillegg til å lese ESL, Jeg vil foreslå en enda mer grunnleggende studie av statistikk først. Utover det er problemene jeg skisserte i i et annet spørsmål på denne utvekslingen svært relevant. Spesielt er problemet med datamining bias et alvorlig veikryss for enhver maskinbasert strategi. Dette innlegget vil detaljere hva jeg gjorde for å gjøre ca 500k fra høyfrekvent handel fra 2009 til 2010 Siden jeg handlet helt uavhengig og ikke lenger kjører programmet mitt, er jeg glad for å fortelle alt. Min handel var for det meste i Russel 2000 og DAX futures kontraktene. Nøkkelen til min suksess tror jeg ikke var i en sofistikert økonomisk ligning, men heller i den generelle algoritmenes design som bundet sammen mange enkle komponenter og brukt maskinlæring for å optimalisere for maksimal profesjonell itability Du behøvde ikke å vite noen sofistikert terminologi her fordi da jeg satte opp programmet mitt, var det alt basert på intuisjon Andrew Ngs fantastiske maskinlæringskurs var ikke tilgjengelig ennå - btw hvis du klikker på denne lenken vil du bli tatt til mitt nåværende prosjekt CourseTalk , en vurdering nettsted for MOOCs. First Jeg vil bare demonstrere at min suksess ikke var bare et resultat av flaks Mitt program gjorde 1000-4000 handler per dag halv lang, halv kort og aldri kommet i stillinger på mer enn noen få kontrakter på en gang Dette betydde at tilfeldighetshastigheten fra en bestemt handel var ganske rask. Resultatet var at jeg aldri mistet mer enn 2000 på en dag og aldri hatt en tapende måned. EDIT Disse tallene er etter betalende provisjoner. Og her er diagrammet for å gi deg en følelse av den daglige variasjonen. Merk dette utelukker de siste 7 månedene fordi - som tallene sluttet å gå opp - mistet jeg motivasjonen for å komme inn i dem. Min trading background. Prior å sette opp mitt automatiserte handelsprogram Jeg hadde 2 års erfaring som en manuell daghandler Dette var tilbake i 2001 - det var de første dagene med elektronisk handel og det var muligheter for scalpers å tjene gode penger jeg kan bare beskrive hva jeg gjorde som besluttet å spille et videospill gambling med en antatt kanten Å være vellykket mente å være rask, være disiplinert og ha en god intuitiv mønstergenkjenningsevne jeg klarte å gjøre rundt 250k, betale av studielånene og få penger igjen Win. Over de neste fem årene vil jeg starte to oppstart, og hente opp noen programmeringsevner underveis. Det ville ikke være før slutten av 2008 at jeg ville komme tilbake til handel. Med penger som gikk lite fra salget av min første oppstart, handel tilbød håper på noen raske penger mens jeg fant ut mitt neste trekk. I 2008 var jeg manuelt dag trading futures ved hjelp av programvare kalt T4 Jeg d hadde lyst på noen tilpassede ordreoppføring hurtigtaster, så etter å ha oppdaget T4 hadde en API, tok jeg utfordringen av å lære C programmeringsspråket som kreves for å bruke API-en, og fortsatte å bygge meg noen hurtigtaster. Etter at jeg hadde fått føttene våte med API-en, hadde jeg snart større ambisjoner jeg ønsket å lære datamaskinen å handle for meg. APIen ga både en strøm av markedsdata og en enkel måte å sende ordre til utvekslingen - alt jeg måtte gjøre var å lage logikken i midten. Deretter er et skjermbilde av et T4-handelsvindu. Det var kult at når jeg fikk jobbe med programmet, klarte jeg å se på datahandelen på nøyaktig samme grensesnitt. Se på virkelige bestillinger som springer inn og ut av seg selv med mine virkelige penger, var både spennende og skummelt. Utformingen av min algoritme. Fra begynnelsen var målet mitt å sette opp et system slik at jeg kunne være rimelig co selv om jeg tjener penger før jeg har gjort noen live-handel. For å oppnå dette trengte jeg å bygge et handelssimuleringsramme som ville - så nøyaktig som mulig - simulere live trading. Mens handel i live-modus krevde behandling av markedsoppdateringer strømmet gjennom API, simuleringsmodus kreves å lese markedsoppdateringer fra en datafil For å samle inn disse dataene, konfigurerer jeg den første versjonen av programmet mitt for å bare koble til API-en og registrere markedsoppdateringer med tidsstempler. Jeg endte opp med å bruke 4 uker av nyere markedsdata for å trene og teste systemet mitt på . Med et grunnleggende rammeverk på plass, hadde jeg fortsatt oppgave å finne ut hvordan jeg kunne skape et lønnsomt handelssystem. Som det viser seg, vil algoritmen min bryte ned i to forskjellige komponenter, som jeg vil utforske igjen. trades. Predicting price movements. Kanskje en åpenbar komponent i ethvert handelssystem er å være i stand til å forutse hvor prisene vil flytte Og mitt var ikke noe unntak jeg definerte gjeldende pris som gjennomsnittet av innsiden bud og innside tilbudet og jeg satte målet om å forutsi hvor prisen ville være i de neste 10 sekunder min algoritme ville trenge å komme opp med denne prediksjon øyeblikk for øyeblikk gjennom trading day. Creating optimalisering indikatorer. Jeg opprettet en håndfull indikatorer som viste seg å ha en meningsfylt evne til å forutsi kortvarige prisbevegelser. Hver indikator produserte et tall som var enten positivt eller negativt. En indikator var nyttig dersom det ofte ikke var et positivt tall som korresponderer med markedet og et negativt tall korresponderer med markedet går ned. Min system tillot meg å raskt bestemme hvor mye prediktiv evne noen indikator hadde, så jeg var i stand til å eksperimentere med mange forskjellige indikatorer for å se hva som fungerte. Mange av indikatorene hadde variabler i formlene som produserte dem og jeg var i stand til å finne de optimale verdiene for de variablene ved å gjøre side om side sammenligninger av resultater oppnådd med varierende verdier. dicatorer som var mest nyttige var alle relativt enkle og var basert på de siste begivenhetene i markedet jeg var trading, samt markedene for korrelerte verdipapirer. Lag nøyaktige prisbevegelsesutsikter. Det var ikke nok indikatorer som bare forutslo en opp - eller nedprisbevegelse. Jeg trengte å vite nøyaktig hvor mye prisbevegelse var spådd av hver mulig verdi av hver indikator jeg trengte en formel som ville konvertere en indikatorverdi til en prisforutsigelse. For å oppnå dette spåte jeg spådde prisforskyvninger i 50 buckets som avhenger av området som indikatorverdien falt i Dette produserte unike spådommer for hver bøtte som jeg så kunne grave i Excel Som du kan se, forventes prisendringen som indikatorverdien øker. Basert på en graf som dette, var jeg i stand til å lage en formel for å passe til kurven I begynnelsen gjorde jeg denne kurven montering manuelt, men jeg skrev snart opp noen kode for å automatisere denne prosessen. Merk at ikke alle indikatorkurverne hadde de samme s hape Merk også at skuffene ble logaritmisk fordelt slik at dataene spredes jevnt. Endelig merk at negative indikatorverdier og deres tilsvarende nedadgående prisforutsigelser ble vendt og kombinert med de positive verdiene. Min algoritme behandlet opp og ned nøyaktig samebining indikatorene for en enkelt prediksjon. En viktig ting å vurdere var at hver indikator ikke var helt uavhengig Jeg kunne ikke bare legge opp alle spådommene som hver indikator gjorde hver for seg. Nøkkelen var å finne ut den ekstra prediktive verdien som hver indikator hadde utover det som allerede var spådd Dette var ikke vanskelig å implementere, men det innebar at hvis jeg var kurvepassende flere indikatorer samtidig, måtte jeg være forsiktig med å skifte en ville påvirke forutsigelsen til en annen. For å kurve passe alle indikatorene samtidig sett opp optimalisereren for å gå bare 30 av veien mot de nye prediksjonskurverne med hvert pass. Med dette 30 hoppet fant jeg at prediksjonskurverne ville stabilisere seg innenfor noen få passeringer. Med hver indikator som nå gir oss det s tilleggspris prediksjon, kan jeg bare legge dem opp for å produsere en enkelt prediksjon av hvor markedet vil være om 10 sekunder. Hvorfor forutsi priser er ikke nok. Du tror kanskje at med denne kanten på markedet var jeg gull, men du må huske på at markedet består av bud og tilbud - det er ikke bare en markedspris Suksess i høyfrekvent handel kommer ned til å få gode priser og det er ikke så lett. Følgende faktorer gjør det vanskelig å skape et lønnsomt system. Med hver handel måtte jeg betale provisjoner til både megler og bytte. Spredningsforskjellen mellom høyeste bud og laveste tilbud betydde at hvis jeg bare skulle kjøpe og selge tilfeldig vil jeg miste massevis av penger. Mesteparten av markedsvolumet var andre bots som bare ville utføre en handel med meg hvis de trodde de hadde noen statistisk kant. Å se et tilbud garanterte ikke at jeg kunne kjøpe det. tiden min kjøpsordre kom til byttet var det veldig mulig at det tilbudet hadde blitt kansellert. Som en liten markedsaktør var det ingen måte jeg kunne konkurrere på fart alene. Å bygge en full handelssimulering. Så hadde jeg et rammeverk som tillot meg å backtest og optimalisere indikatorer Men jeg måtte gå utover dette - jeg trengte et rammeverk som kunne tillate meg å sikkerhetskopiere og optimalisere et fullhandelssystem en hvor jeg sendte ordrer og kom i stillinger I dette tilfellet ville jeg optimalisere for totalt PL og til en viss grad gjennomsnittlig PL per handel. Dette ville være vanskeligere og på noen måter umulig å modellere nøyaktig, men jeg gjorde så godt som mulig. Her er noen av problemene jeg måtte håndtere. Når en ordre ble sendt til markedet i simulering Jeg måtte modellere lagtiden. Faktumet at systemet mitt så et tilbud, betyr ikke at det kunne kjøpe det med en gang. Systemet ville sende bestillingen, vent ca 20 millisekunder, og da bare hvis tilbudet fortsatt var der, ble det vurdert som en henrettet handel Dette var inexakt fordi den virkelige forsinkelsestiden var inkonsekvent og urapportert. Når jeg lagde bud eller tilbud måtte jeg se på handelsutførelsesstrømmen som ble levert av API og bruke dem til å måle når bestillingen min ville ha blitt henrettet mot For å gjøre dette riktig jeg måtte spore posisjonen til bestillingen min i køen. Det sa først i første utgangssystemet. Igjen kunne jeg ikke gjøre dette perfekt, men jeg gjorde en god tilnærming. For å finjustere min ordningseksempler jeg gjorde var å ta loggfilene mine fra lever trading via API og sammenligne dem med loggfilene som produseres ved simulert handel fra nøyaktig samme tidsperiode jeg klarte å få simuleringen min til det punktet at det var ganske nøyaktig og for de delene som var umulige å modellere nøyaktig, sørget jeg for at produserer i det minste utfall som var statistisk liknende i beregningene som jeg trodde var viktige. Å lage lønnsomme handler. Med en ordreimuleringsmodell på plass kunne jeg nå sende ordrer i simuleringsmodus og se en simulert PL Men hvordan ville m y-systemet vet når og hvor du skal kjøpe og selge. Prisflytspådommer var et utgangspunkt, men ikke hele historien. Hva jeg gjorde var å skape et scoring system for hvert av 5 prisnivåer på tilbudet og tilbudet. Disse inkluderte ett nivå over innsiden bud for en kjøpsordre og ett nivå under det innvendige tilbudet for en salgsordre. Hvis poengsummen til et gitt prisnivå var over en viss terskel som ville bety at systemet mitt skulle ha et aktivt budtilbud der - under terskelen så var det noen aktive ordrer bør avbrytes Basert på dette var det ikke uvanlig at systemet mitt ville blinke et bud i markedet, og deretter avbryte det umiddelbart. Selv om jeg prøvde å minimere dette, var det irriterende for alle som så på skjermen med menneskelige øyne - inkludert meg. prisnivå score ble beregnet ut fra følgende faktorer. Prisen flytte prediksjon som vi diskuterte tidligere. Prisnivået i spørsmålet Innre nivåer betydde større prisbevegelser spådommer var nødvendig. Antall kontrakter foran min rekkefølge i køen Mindre var bedre. Antall kontrakter bak bestillingen min i køen Mer var bedre. Disse faktorene ser vanligvis ut til å identifisere trygge steder å by på. Prissendingen alene var ikke tilstrekkelig fordi den ikke gjorde rede for det faktum at når jeg plasserte et bud, ble jeg ikke fylt automatisk - jeg ble bare fylt hvis noen solgte meg der. Virkeligheten var at det faktum at noen som solgte meg til en viss pris, forandret statistiske oddsene for handelen. De variabler som ble benyttet i dette trinnet var alle gjenstand for optimalisering Dette ble gjort på nøyaktig samme måte som jeg optimaliserte variabler i prisflytindikatorene, bortsett fra i dette tilfellet, optimaliserte jeg for bunnlinjen P L. Hva mitt program ignoreres. Når handel som mennesker har vi ofte sterke følelser og forstyrrelser som kan føre til mindre enn optimale beslutninger. Klart ville jeg ikke kodifisere disse forstyrrelsene. Her er noen faktorer som min system ignorerte. Prisen som en stilling ble oppgitt - I et handelskontor er det ganske vanlig å høre samtale om prisen som noen er lange eller korte på som om det skulle påvirke deres fremtidige beslutninger. Mens dette har noen gyldighet som en del av en risikoreduserende strategi, har det egentlig ingen betydning for det fremtidige kurset i markedet. Derfor min Programmet ignorerer helt denne informasjonen Det er det samme konseptet som å ignorere nedsatte kostnader. Gjøre kort vs å forlate en lang posisjon - Vanligvis ville en forhandler ha forskjellige kriterier som bestemmer hvor å selge en lang posisjon versus hvor du skal gå kort. Men fra mitt algoritmsperspektiv var det ingen grunn til å skille Hvis min algoritme forventet en nedadgående flytting, var en god ide, uansett om det var for tiden lenge, kort eller flat. En dobling av strategi - Dette er en felles strategi hvor handelsmenn vil kjøpe flere aksjer i tilfelle at den opprinnelige handelen går imot dem Dette medfører at gjennomsnittskjøpsprisen din blir lavere, og det betyr når eller om lageret vender seg, vil du bli satt for å gjøre din mon øye tilbake på kort tid Etter min mening er dette virkelig en fryktelig strategi med mindre du er Warren Buffet Du blir lurt til å tro at du har det bra fordi de fleste av dine handler vil bli vinnere Problemet er når du mister deg og mister stor Den andre effekten er det gjør det vanskelig å bedømme om du faktisk har en kant på markedet eller bare får det heldig Å kunne overvåke og bekrefte at programmet mitt faktisk hadde en kant var et viktig mål. Siden algoritmen min tok beslutninger på samme måte, uansett hvor det gikk inn i en handel, eller hvis det for øyeblikket var lenge eller kort, ble det noen ganger satt inn og tok noen store tapende handler i tillegg til noen store vinnende handler. Men du burde ikke tro at det ikke var noen risikostyring. For å håndtere risiko håndhevet jeg et maksimum stillingsstørrelse på 2 kontrakter om gangen, noen ganger støtet opp på høyvolumsdager. Jeg hadde også en maksimal daglig tapgrense for å beskytte mot uventede markedsforhold eller en feil i min programvare. Disse grensene ble håndhevet i min kode bu t også i backend gjennom megleren Som det skjedde jeg aldri oppstått noen betydelige problemer. Running algoritmen. Fra det øyeblikket jeg begynte å jobbe på mitt program det tok meg ca 6 måneder før jeg fikk det til poenget med lønnsomhet og begynte å kjøre det live Selv om det var rettferdig, var det betydelig tid å lære et nytt programmeringsspråk. Da jeg jobbet for å forbedre programmet, så jeg økt fortjeneste for hver av de neste fire månedene. Hver uke skulle jeg omskole systemet mitt basert på de foregående 4 ukene data jeg fant dette traff den rette balansen mellom å ta vare på nyere markedsadferdstendenser og forsikre min algoritme hadde nok data til å etablere meningsfulle mønstre Ettersom treningen begynte å ta mer og mer tid, splittet jeg det slik at det kunne utføres av 8 virtuelle maskiner som bruker Amazon EC2 Resultatene ble deretter coalesced på min lokale maskin. Høydepunktet av min handel var oktober 2009 da jeg gjorde nesten 100k Etter dette fortsatte jeg å tilbringe de neste fire månedene t å rydde for å forbedre mitt program til tross for redusert fortjeneste hver måned. Dessverre på dette punktet antar jeg at jeg implementerte alle mine beste ideer fordi ingenting jeg prøvde syntes å hjelpe mye. Med frustrasjonen om ikke å kunne gjøre forbedringer og ikke ha en følelse av vekst, jeg begynte å tenke på en ny retning jeg sendte 6 forskjellige høyfrekvente handelsfirmaer for å se om de ville være interessert i å kjøpe min programvare og ansette meg til å jobbe for dem. Ingen svarte Jeg hadde noen nye oppstartsideer jeg ønsket å jobbe med, så jeg aldri fulgte opp. UPDATE - Jeg postet dette på Hacker News, og det har fått mye oppmerksomhet. Jeg vil bare si at jeg ikke fortaler noen som prøver å gjøre noe som dette selv nå. Du vil trenge et team med virkelig smarte mennesker med en rekke opplevelser. å ha noe håp om å konkurrere Selv når jeg gjorde dette, tror jeg det var svært sjelden at enkeltpersoner skulle oppnå suksess, selv om jeg hadde hørt om andre. Det er en kommentar øverst på siden som nevner manipulert sta tistics and refers to me as a retail investor that quants would gleefully pick off This is a rather unfortunate comment that s simply not based in reality Setting that aside there s some interesting comments. UPDATE 2 - I ve posted a follow-up FAQ that answers some common questions I ve received from traders about this post. Quant Trading Using Machine Learning. Financial markets are fickle beasts that can be extremely difficult to navigate for the average investor This course will introduce you to machine learning, a field of study that gives computers the ability to learn without being explicitly programmed, while teaching you how to apply these techniques to quantitative trading Using Python libraries, you ll discover how to build sophisticated financial models that will better inform your investing decisions Ideally, this one will buy itself back and then some. Access 64 lectures 2017 StackCommerce All Rights Reserved.

Comments

Popular posts from this blog

Komplett Liste Of Binære Alternativer Meglere

Veid Gjennomsnitt Vs Moving Average

Gratis Online Forex Trading Trening