Ved hjelp av genetiske algoritmer til prognose finansielle markeder

Coding Challenge #29: Smart Rockets in p5.js (November 2024)

Coding Challenge #29: Smart Rockets in p5.js (November 2024)
Ved hjelp av genetiske algoritmer til prognose finansielle markeder
Anonim

Burton foreslo i sin bok "En tilfeldig spasertur i Wall Street" (1973) at "En blindfoldet ape kaste dart på en avis finansielle sider kunne velge en portefølje som ville gjøre like bra som en nøye utvalgt av eksperter. " Mens evolusjonen kanskje har gjort mannen ikke mer intelligent til å plukke aksjer, har Charles Darwins teori ganske effektive når de brukes mer direkte. (For å hjelpe deg med å velge aksjer, sjekk ut Hvordan velge en lager .)

TUTORIAL: Lagerplukende strategier

Hva er genetiske algoritmer?
Genetiske algoritmer (GAs) er problemløsende metoder (eller heuristikk) som etterligner prosessen med naturlig evolusjon. I motsetning til kunstige nevrale nettverk (ANNs), designet for å fungere som neuroner i hjernen, bruker disse algoritmene konseptene naturlig valg for å bestemme den beste løsningen for et problem. Som et resultat blir GAs ofte brukt som optimaliserere som justerer parametere for å minimere eller maksimere noe tilbakemåling, som deretter kan brukes uavhengig eller i konstruksjonen av et ANN.

På de finansielle markedene er de genetiske algoritmene mest vant til å finne de beste kombinasjonsverdiene til parametere i en handelsregel, og de kan bygges inn i ANN-modeller designet for å velge aksjer og identifisere handler. Flere studier har vist at disse metodene kan vise seg å være effektive, blant annet "Genetic Algorithms: Genesis of Stock Evaluation" (2004) av Rama, og "The Applications of Genetic Algorithms in Stock Market Data Mining Optimization" (2004) av Lin, Cao, Wang , Zhang. (For å lære mer om ANN, se Neural Networks: Forecasting Profits .)

Hvordan genetiske algoritmer virker
Genetiske algoritmer er laget matematisk ved hjelp av vektorer, som er mengder som har retning og størrelse. Parametre for hver handelsregel er representert med en endimensjonal vektor som kan betraktes som et kromosom i genetiske termer. I mellomtiden kan verdiene som brukes i hver parameter betraktes som gener, som deretter modifiseres ved naturlig valg.

For eksempel kan en handelsregel innebære bruk av parametere som Moving Average Convergence-Divergence (MACD), Eksponentiell Moving Average (EMA) og Stochastics. En genetisk algoritme vil da legge inn verdier i disse parameterne med målet om å maksimere nettoresultatet. Over tid er små endringer introdusert, og de som gir en ønskelig innvirkning, beholdes for neste generasjon.

Det finnes tre typer genetiske operasjoner som kan utføres:

  • Crossovers representerer reproduksjon og biologisk overgang sett i biologi, hvor et barn tar på seg bestemte egenskaper hos foreldrene.
  • Mutasjoner representerer biologisk mutasjon og brukes til å opprettholde genetisk mangfold fra en generasjon av en befolkning til den neste ved å introdusere tilfeldige små endringer.
  • Valg er scenen hvor individuelle genomene er valgt fra en populasjon for senere avl (rekombinasjon eller crossover).

Disse tre operatørene blir da brukt i en fem-trinns prosess:

  1. Initialiser en tilfeldig befolkning, hvor hvert kromosom er n -lengde, med n er antall parametre. Det vil si at et tilfeldig antall parametere er etablert med n elementer hver.
  2. Velg kromosomer, eller parametere, som øker ønskelige resultater (antagelig nettoresultat).
  3. Bruk mutasjoner eller crossover operatører til de valgte foreldrene og generer et avkom.
  4. Rekombinere avkom og gjeldende befolkning for å danne en ny befolkning hos seleksjonsoperatøren.
  5. Gjenta trinn to til fire.

Over tid vil denne prosessen resultere i stadig gunstigere kromosomer (eller parametere) for bruk i en handelsregel. Prosessen avsluttes da når et stoppkriterium er oppfylt, som kan inkludere kjøretid, kondisjon, antall generasjoner eller andre kriterier. (For mer om MACD, les Trading MACD Divergence .)

Bruk av genetiske algoritmer i handel
Mens genetiske algoritmer primært brukes av institusjonelle kvantitative handelsmenn, kan enkelte handelsmenn utnytte kraften til genetiske algoritmer - uten en grad i avansert matematikk - ved hjelp av flere programvarepakker på markedet. Disse løsningene spenner fra frittstående programvarepakker rettet mot finansmarkedene til Microsoft Excel-tillegg som kan lette mer praktisk analyse.

Når du bruker disse programmene, kan handelsfolk definere et sett med parametere som deretter optimaliseres ved hjelp av en genetisk algoritme og et sett med historiske data. Noen programmer kan optimalisere hvilke parametere som brukes og verdiene for dem, mens andre primært er fokusert på å optimalisere verdiene for et gitt sett med parametere. (For å lære mer om disse programbaserte strategiene, se Kraften til programhandler .)

Viktige optimaliseringstips og triks
Kurvmontering (overmontering), utforming av et handelssystem rundt historiske data i stedet enn å identifisere repeterbar oppførsel, representerer en potensiell risiko for handelsfolk som bruker genetiske algoritmer. Et hvilket som helst handelssystem som bruker GA, bør testes på papir før bruk.

Valg av parametere er en viktig del av prosessen, og handelsmenn bør søke parametere som korrelerer med endringer i prisen på en gitt sikkerhet. For eksempel, prøv ut forskjellige indikatorer og se om det ser ut til å korrelere med store markedssvingninger.

Bunnlinjen
Genetiske algoritmer er unike måter å løse komplekse problemer ved å utnytte naturens kraft. Ved å bruke disse metodene for å forutsi verdipapirpriser kan handelsmenn optimalisere handelsregler ved å identifisere de beste verdiene som skal brukes for hver parameter for en gitt sikkerhet. Imidlertid er disse algoritmene ikke den hellige gral, og handelsmenn bør være forsiktige med å velge de riktige parametrene og ikke kurveformet (overpasset). (For å lese mer om markedet, sjekk ut Lytt til markedet, ikke sine pundits .)