Tuesday 10 October 2017

Forex Prognoser Genetisk Algoritme


SnowCron Genetic Algorithm i Forex Trading Systems ved hjelp av genetisk algoritme for å skape lønnsom Forex Trading Strategy. Genetisk algoritme i Cortex Neural Networks Software Feedforward Backpropagation Neural Network Application for genetisk beregninger basert Forex trading. Dette eksemplet bruker konsepter og ideer fra den forrige artikkelen, så vær så snill å lese Neural Network Genetic Algorithm i Forex Trading Systems først, selv om det ikke er obligatorisk. Om denne teksten Først og fremst, vennligst les ansvarsfraskrivelsen. Dette er et eksempel på bruk av Cortex Neural Networks Software-genetisk algoritmefunksjonalitet, ikke et eksempel på hvordan man kan gjøre lønnsom handel. Jeg er ikke din guru, heller ikke skal jeg være ansvarlig for tapene dine. Cortex Neural Networks Software har nevrale nettverk i det, og FFBP vi diskuterte før er bare en måte å velge en forex trading strategier. Det er en god teknikk, kraftig og når det brukes riktig, veldig lovende. Det har imidlertid et problem - å undervise i Neural Network. Vi trenger å vite ønsket utgang. Det er ganske enkelt å gjøre når vi fungerer tilnærming, vi tar bare den virkelige verdien av en funksjon, fordi vi vet hva det skal være. Når vi foretar neurale nettverksprognoser. Vi bruker teknikken (beskrevet i tidligere artikler) til å undervise det neurale nettverket i historien, igjen, hvis vi forutsier, sier en valutakurs, vet vi (under treningen) hva riktig prediksjon er. Men når vi bygger et handelssystem, har vi ingen anelse om hva den riktige handelsbeslutningen er, selv om vi vet valutakursen. Faktisk har vi mange Forex trading strategier vi kan bruke når som helst, og vi må finne en god en - hvordan skal vi mate som ønsket utgang fra vårt nevrale nettverk Hvis du fulgte vår tidligere artikkel, vet du at vi har lurt å håndtere dette problemet. Vi lærte det neurale nettverket å gjøre valutakurs (eller valutakursbasert indikator) prediksjon, og brukte deretter denne forutsigelsen til å gjøre handel. Da, utenfor Neural Network delen av programmet, tok vi en beslutning om hvilket Neural Network er den beste. Genetiske algoritmer kan håndtere dette problemet direkte, de kan løse problemet som er oppgitt som å finne de beste handelssignalene. I denne artikkelen skal vi bruke Cortex Neural Networks Software til å lage et slikt program. Bruk av genetisk algoritme Genetiske algoritmer er veldig godt utviklet og svært variert. Hvis du vil lære alt om dem, foreslår jeg at du bruker Wikipedia, da denne artikkelen bare handler om hva Cortex Neural Networks Software kan gjøre. Å ha Cortex Neural Networks Software. vi kan opprette et neuralt nettverk som tar litt innspill, si, verdier av en indikator, og produserer noe output, sier handelssignaler (kjøp, selg, hold.) og stopper tap ta fortjeneste for stillinger som skal åpnes. Selvfølgelig, hvis vi frøker dette nettverket til nettverket, vil handelsresultater bli forferdelige. La oss imidlertid si at vi opprettet et dusin slike NN. Så kan vi teste ytelsen til hver av dem, og velge den beste, vinneren. Dette var den første generasjonen av NN. For å fortsette til andre generasjon, må vi tillate vår vinner å vokse, men for å unngå å få identiske kopier, kan vi legge til noen tilfeldig noice til dens nedstigningsvekter. I andre generasjon har vi vår første generasjons vinner og dens ufullkomne (muterte) kopier. Lar oss prøve igjen. Vi vil ha en annen vinner, som er bedre enn noen andre neurale nettverk i generasjonen. Og så videre. Vi tillater bare vinnerne å avle, og eliminere tapere, akkurat som i virkelighetsevolusjonen, og vi vil få vårt best-trading Neural Network. uten tidligere kunnskap om hva handelssystemet (genetisk algoritme) skal være. Neural Network Genetic Algorithm: Eksempel 0 Dette er det første genetiske algoritmen eksempel. og en veldig enkel en. Vi skal gå gjennom det trinn for trinn for å lære alle triksene som følgende eksempler vil bruke. Koden har inline kommentarer, så vi kan bare fokusere på viktige øyeblikk. Først har vi opprettet et neuralt nettverk. Det bruker tilfeldige vekter, og ble ennå ikke lært. Deretter, i syklus, lagrer vi 14 kopier av det ved bruk av MUTATIONNN-fumning. Denne funksjonen gjør en kopi av et kilde Neural Network. legger tilfeldige verdier fra 0 til (i vårt tilfelle) 0,1 til alle vekter. Vi holder håndtak til resulterende 15 NN i en matrise, vi kan gjøre det, da håndtaket er bare et heltall. Grunnen til at vi bruker 15 NN har ingenting å gjøre med handel: Cortex Neural Networks Software kan plotte opptil 15 linjer på et diagram samtidig. Vi kan bruke forskjellige tilnærminger til testingen. Først kan vi bruke læringssettet, alt sammen på en gang. For det andre kan vi teste på, si 12000 registre (ut av 100000), og gå gjennom læringssettet, fra begynnelse til slutt. Det vil gjøre learningigs annerledes, da vi vil se etter Neural Network s som er lønnsomme på en gitt del av data, ikke bare på hele settet. Den andre tilnærmingen kan gi oss problemer, hvis data endres, fra begynnelse til slutt. Da vil nettverket utvikle seg, skaffe seg mulighet til å handle i slutten av datasettet, og miste evnen til å handle i begynnelsen. For å løse dette problemet, skal vi ta tilfeldige 12000 arkivfragmenter fra data, og mate den til Neural Network. er rett og slett en endeløs syklus, da 100000 sykluser aldri blir nådd på vår fart. Nedenfor legger vi til ett barn for hvert nettverk, med litt forskjellige vekter. Merk at 0,1 for mutasjonstang ikke er det eneste valget, faktisk, selv denne parameteren kan optimaliseres ved hjelp av genetisk algoritme. Nyopprettede NNs legges til etter 15 eksisterende. På denne måten har vi 30 NN i en gruppe, 15 gamle og 15 nye. Så skal vi gjøre neste testsyklus, og drepe losere, fra begge generasjoner. For å gjøre testing, bruker vi Neural Network til våre data, for å produsere utdata, og deretter ringe Test-funksjon, som bruker disse utgangene for å simulere handel. Resultater av handel brukes til å deside, hvilke NN er best. Vi bruker et intervall av nLearn-poster, fra nStart til nStart nLearn, hvor nStart er et tilfeldig punkt i læringssettet. Koden under er et triks. Grunnen til at vi bruker det er å illustrere faktum at den genetiske algoritmen kan skape genetisk algoritme. men det vil ikke nødvendigvis være det beste, og også for å foreslå at vi kan forbedre resultatet, hvis vi innebærer noen begrensninger for læringsprosessen. Det er mulig at vårt handelssystem fungerer veldig bra på lange handler, og svært dårlig på kort, eller omvendt. Hvis du sier at lange handler er veldig gode, kan denne genetiske algoritmen vinne, selv med store tap på korte handler. For å unngå det, tilordner vi mer vekt til lange handler i merkelige og korte handler i jevne sykluser. Dette er bare et eksempel, det er ingen garanti for at det vil forbedre noe. Mer om det nedenfor, i diskusjon om korrigeringer. Teknisk sett trenger du ikke å gjøre det, eller kan gjøre det annerledes. Legg til overskudd til en sortert matrise. Den returnerer en innføringsposisjon, og vi bruker denne posisjonen til å legge til Neural Network håndtak, lære og teste profitt til ikke-sorterte arrays. Nå har vi data for nåværende Neural Network på samme array indeks som sin fortjeneste. Tanken er å komme til utvalg av NN, sortert etter lønnsomhet. Som array er sorterer etter fortjeneste, for å fjerne 12 nettverk, som er mindre lønnsomme, trenger vi bare å fjerne NNs 0 til 14 Handelsbeslutninger er basert på verdien av Neural Network-signalet. Fra dette synspunktet er programmet identisk med eksempler fra forrige artikkel. Forex Trading Strategy: Diskutere eksempel 0 Først av alt, kan vi se på diagrammer. Det første diagrammet for fortjeneste under den første iterasjonen er ikke bra i det hele tatt, som det forventes, vil det neurale nettverket miste penger (bilde evolution00gen0.png kopiert etter første iterasjon fra bildemappe): Bildet for fortjeneste på syklus 15 er bedre, noen ganger , genetisk algoritme kan lære seg veldig fort: Merk imidlertid metningen på en profittkurve. Det er også interessant å se på hvordan individuelle fortjeneste endrer seg, og husk at kurvenummeret sier 3, ikke alltid for det samme nevrale nettverket. som de blir født og avsluttet hele tiden: Vær også oppmerksom på at lite forex-automatisert handelssystem utfører dårlig på korte handler, og mye bedre i lang tid, noe som kanskje eller ikke er relatert til det faktum at dollaren falt sammenliknet med euro i den perioden. Det kan også ha noe å gjøre med parametere av indikatoren vår (kanskje vi trenger annen periode for shorts) eller valg av indikatorer. Her er historien etter 92 og 248 sykluser: Til vår overraskelse mislyktes den genetiske algoritmen helt. Lar prøve å finne ut hvorfor, og hvordan å hjelpe situasjonen. Først av alt, er ikke hver generasjon ment å være bedre enn den tidligere. Svaret er nei, i hvert fall ikke innenfor modellen vi brukte. Hvis vi tok ALLTRE læring sett på en gang, og brukte det gjentatte ganger for å lære våre NNs, så ja, de vil forbedre seg på hver generasjon. Men i stedet tok vi tilfeldige fragmenter (12000 poster i tid), og brukte dem. To spørsmål: hvorfor systemet mislyktes på tilfeldige fragmenter av læringssett, og hvorfor har vi ikke brukt hele læringssettet Vel. For å svare på det andre spørsmålet, gjorde jeg det. NNs utførte seg sterkt - på læringssett. Og de mislyktes på å teste sett, av samme grunn det mislykkes når vi brukte FFPB læring. For å si det annerledes, ble våre NNs overspecialized, de lærte å overleve i miljøet de er vant til, men ikke utenfor det. Dette skjer mye i naturen. Tilnærmingen vi tok i stedet var ment å kompensere for det ved å tvinge NNs til å utføre seg godt på et tilfeldig fragment av datasettet, slik at de forhåpentligvis også kunne utføre på et ukjent testsett. I stedet mislyktes de både på testing og på læringssett. Tenk deg dyr, som bor i en ørken. Mye sol, ingen snø i det hele tatt. Dette er en metafor for rising markedet, som for våre NNs data spiller rollen som miljø. Dyr lærte å leve i en ørken. Forestill deg dyr som lever i et kaldt klima. Snø og ingen sol i det hele tatt. Vel, de justerte. Men i vårt eksperiment plasserte vi tilfeldigvis våre NN i en ørken, i snø, i vannet, på trærne. ved å presentere dem med forskjellige fragmenter av data (tilfeldig stigende, fallende, flatt.). Dyr døde. Eller, for å si det annerledes, valgte vi det beste Neural Network for tilfeldig datasett 1, som for eksempel var for stigende marked. Deretter presenterte vi vinnerne og deres barn en fallende markedsdata. NNs utførte dårlig, vi tok best av fattige artister, kanskje en av de mutante barna, som mistet evnen til å handle på stigende marked, men fikk litt evne til å håndtere fallende. Da snudde vi bordet igjen, og igjen fikk vi best utøver - men best blant fattige artister. Vi ga rett og slett ikke våre NNs muligheter til å bli universelle. Det finnes teknikker som tillater genetisk algoritme å lære ny informasjon uten å miste resultatene på gammel informasjon (dyr kan i hvert fall leve om sommeren og om vinteren, slik at evolusjonen er i stand til å håndtere gjentatte endringer). Vi kan diskutere disse teknikkene senere, selv om denne artikkelen handler om å bruke Cortex Neural Networks Software. enn om å bygge et vellykket forex-automatisert handelssystem. Neural Network Genetic Algorithm: Eksempel 1 Nå er det på tide å snakke om korreksjoner. En enkel genetisk algoritme som vi opprettet i løpet av forrige trinn, har to store feil. For det første klarte det ikke å handle med fortjeneste. Det er ok, vi kan prøve å bruke delvis opplært system (det var lønnsomt i begynnelsen). Den andre feilen er mer alvorlig: Vi har ingen kontroll over ting, som dette systemet gjør. For eksempel kan det lære å være lønnsomt, men med store drawdowns. Det er et velkjent faktum at evolusjonen i virkeligheten kan optimalisere mer enn én parameter samtidig. For eksempel kan vi få et dyr som kan løpe fort og være motstandsdyktig mot kulde. Hvorfor ikke prøve å gjøre det samme i vårt forex-automatiserte handelssystem. Det er da vi bruker rettelser, noe som er noe annet enn settet av ytterligere straffer. Si, vårt system handler med drawdown 0.5, mens vi vil bekrefte det til 0 - 0.3 intervall. For å fortelle systemet at det gjorde en feil, reduserer vi fortjenesten (en brukt til å bestemme hvilken genetisk algoritme vant) i den grad som er proporsjonal med størrelsen på DD. Deretter tar evolusjonsalgoritmen seg av resten. Det er få flere faktorer som vi ønsker å ta i betraktning: Vi vil kanskje ha mer eller mindre like mange kjøp og salg, vi vil ha mer lønnsom drift, da av feil, vil vi kanskje ha fortjenestediagrammet til være lineær og så videre. I evolution01.tsc implementerer vi et enkelt sett med korrigeringer. Først av alt bruker vi et stort antall for en første korreksjonsverdi. Vi multipliserer den til en liten (vanligvis mellom 0 og 1) verdier, avhengig av straffen vi vil bruke. Da vi multipliserer vår fortjeneste til denne korreksjonen. Resultatet blir derfor korrigert for å reflektere hvor mye den genetiske algoritmen tilsvarer våre andre kriterier. Deretter bruker vi resultatet til å finne en vinner Neural Network. Forex Trading Strategy: Diskusjon av eksempel 1 Eksempel 1 fungerer mye bedre enn eksempel 0. I løpet av de første 100 syklusene lærte det mye, og fortjenestediagrammer ser beroligende ut. Men som i eksempel 0 er lange handler mye mer lønnsomme, noe som sannsynligvis betyr at det er et problem i vår tilnærming. Likevel fant systemet en balanse mellom to motstridende innledende forhold: Det er en viss positiv dynamikk både i læringssett og, viktigere, i testsett. Når det gjelder videre læring, i syklus 278 kan vi se at systemet vårt har blitt overtrained. Det betyr at vi fortsatt har fremskritt på læringssett: Men testing av sett viser svakhet: Dette er et vanlig problem med NN: når vi lærer det på læringssett, lærer det å håndtere det, og noen ganger lærer det seg så godt - til grad, når det mister ytelsen på testsettet. For å håndtere dette problemet, brukes en tradisjonell løsning: vi fortsetter å lete etter Neural Network. som fungerer best på testsett, og lagre det, overskrive tidligere beste, hver gang ny topp nås. Dette er den samme tilnærmingen, vi brukte i FFBP-trening, bortsett fra, denne gangen må vi gjøre det selv (legge til kode, som ser etter et best Neural Network på et testsett, og ringer SAVENN, eller eksporterer vekter av Neural Network til en fil). På denne måten, når du stopper treningen, har du den beste utøveren ON TESTING SET lagret og venter på deg. Merk også at det ikke er maks. fortjeneste du er ute etter, men optimal ytelse, så vurder å bruke rettelser når du ser etter en best utøver på et testsett. Genetisk algoritme for FOREX Teknisk analyse: Hvor nå Etter at du fikk vinneren din Neural Network. Du kan følge trinnene som er beskrevet i forrige artikkel, for å eksportere vekter av det nevrale nettverket. og deretter å bruke dem i din realtid trading plattform, som Meta Trader, Trade Station og så videre. Alternativt kan du fokusere på andre måter å optimalisere det neurale nettverket på. i motsetning til FFBP-algoritmen, kan du få avay fra å bruke lærings - og testsett, og flytte sekvensiell læring. Last ned Cortex Order Cortex Se prisliste Siktbarhet er svært viktig for dette nettstedet. Hvis du liker det, vennligst lenk til denne nettadressen. Bruke genetiske algoritmer til prognose finansielle markeder Burton foreslo i sin bok, En tilfeldig Walk Down Wall Street (1973) at En blindfoldet ape kaste dart på en avisers finansielle sider kunne velge en portefølje som ville gjøre bare så vel som en nøye utvalgt av eksperter. Mens evolusjonen kanskje har gjort mannen ikke mer intelligent når han plukker aksjer, har Charles Darwins teori ganske effektive når de brukes mer direkte. (For å hjelpe deg med å velge aksjer, sjekk ut hvordan du velger en aksje.) 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å finansmarkedene. genetiske algoritmer er oftest brukt til å finne de beste kombinasjonsverdiene av 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 i 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 Arbeid Genetiske algoritmer er opprettet 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 flytende gjennomsnitt (EMA) og stokastikk. 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 er tre typer genetiske operasjoner som kan utføres: Crossovers representerer reproduksjon og biologisk crossover 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: Initialiser en tilfeldig befolkning, hvor hvert kromosom er n-lengde, med n er antall parametere. Det vil si at et tilfeldig antall parametere er etablert med n elementer hver. Velg kromosomer, eller parametere, som øker ønskelige resultater (antagelig nettoresultat). Bruk mutasjoner eller crossover operatører til de valgte foreldrene og generer et avkom. Rekombinere avkom og gjeldende befolkning for å danne en ny befolkning hos seleksjonsoperatøren. 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 The MACD Divergence.) Bruke Genetiske Algoritmer i Trading Mens genetiske algoritmer brukes primært av institusjonelle kvantitative handelsmenn. individuelle handelsmenn kan 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 i programhandler.) Viktige optimaliseringstips og triks Kurvemontering (overpassing), utforming av et handelssystem rundt historiske data i stedet for å identifisere repeterbar oppførsel, representerer en potensiell risiko for handelsmenn ved å bruke genetiske algoritmer. Et hvilket som helst handelssystem som bruker GA, bør testes på papir før bruk. Å velge 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. 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.) Beta er et mål for volatiliteten eller systematisk risiko for en sikkerhet eller en portefølje i forhold til markedet som helhet. En type skatt belastet kapitalgevinster pådratt av enkeltpersoner og selskaper. Kapitalgevinst er fortjenesten som en investor. En ordre om å kjøpe en sikkerhet til eller under en spesifisert pris. En kjøpsgrenseordre tillater handelsmenn og investorer å spesifisere. En IRS-regelen (Internal Revenue Service) som tillater straffefri uttak fra en IRA-konto. Regelen krever det. Det første salg av aksjer av et privat selskap til publikum. IPO er ofte utstedt av mindre, yngre selskaper som søker. Gjeldsgrad er gjeldsraten som brukes til å måle selskapets økonomiske innflytelse eller en gjeldsgrad som brukes til å måle en person. Det er en stor litteratur om suksessen med anvendelsen av evolusjonære algoritmer generelt, og den genetiske algoritmen spesielt til finansmarkedene. Imidlertid føler jeg meg ubehagelig når jeg leser denne litteraturen. Genetiske algoritmer kan overpasse eksisterende data. Med så mange kombinasjoner er det lett å komme opp med noen få regler som fungerer. Det kan ikke være robust, og det har ikke en konsekvent forklaring på hvorfor denne regelen fungerer, og de reglene ikke går utover det bare (sirkulære) argumentet at det fungerer fordi testen viser at den fungerer. Hva er den nåværende konsensus om anvendelse av den genetiske algoritmen i økonomi spurte 18 februar 11 klokken 9:00 Ive jobbet i et hedgefond som tillot GA-avledede strategier. For sikkerheten kreves det at alle modellene ble levert langt før produksjonen for å sikre at de fortsatt jobbet i backtestene. Så det kan være en forsinkelse på opptil flere måneder før en modell vil få lov til å løpe. Det er også nyttig å skille prøve universet bruke en tilfeldig halvdel av mulige aksjer for GA analyse og den andre halvdelen for bekreftelse backtests. Er det en annen prosess enn du ville bruke før du stoler på noen annen handelsstrategi (Hvis det er det, er det ikke klart for meg hva du får fra å lage en GA-modell ved å bruke data til tid t, og deretter teste til tN før du stoler på det, i motsetning til bruk av data til tiden tN, testing fra tN til t, og bruk den umiddelbart.) ndash Darren Cook 23. november kl 02:08 DarrenKok ett problem jeg ser er at hvis du tester fra tN til t og finner det, fungerer det ikke bra, så går du å skape en annen modell som blir testet på samme tidsperiode tN til t (ad infinitum). Det introduserer sannsynligheten for kvoteovervurdering under modellopprettingsprosessen. ndash Chan-Ho Suh Jul 22 15 på 5:24 Når det gjelder data-snooping, hvis en GA er implementert på riktig måte, bør det ikke være et problem. Mutingsfunksjoner er spesifikt inkludert for å tilfeldig søke gjennom problemrommet, og unngå datasnøring. Når det er sagt, kan det være noe av en kunst å finne de riktige mutasjonsnivåene, og hvis mutasjonsnivåene er for lave, er det som om funksjonen ikke ble implementert i utgangspunktet. ndash BioinformaticsGal Apr 6 11 at 16:28 BoinformaticsGal Jeg forstår ikke hvordan innlemmelsen av mutasjonsfunksjoner tillater oss å unngå data snooping. Etter søket er det en treningsfunksjon som gjør hver generasjon 39fit39 dataene enda mer. Eller forstår jeg ikke deg riktig? Vishal Belsare Sep 15 11 at 18:05 Det er mange her som snakker om hvordan GA er empiriske, har ikke teoretiske grunnlag, er svart bokser og lignende. Jeg ber for å være forskjellig Theres en hel gren av økonomi viet til å se på markeder i form av evolusjonære metaforer: Evolusjonær økonomi Jeg anbefaler sterkt Dopfer boken, Evolutionary Foundations of Economics, som et intro. cambridge. orggbknowledgeisbnitem1158033sitelocaleenGB Hvis din filosofiske oppfatning er at markedet er i utgangspunktet et gigantisk kasino eller spill, så er en GA bare en svart boks og har ingen teoretisk grunnlag. Men hvis filosofien din er at markedet er en overlevelse-of-the-fittest økologi, så har GAs mange teoretiske grunnlag, og det er helt rimelig å diskutere ting som corporate speciation, markedsøkologier, porteføljegener, handelsklima og som. besvart apr 5 11 kl 15:42 På kort tid er det mer et kasino. Som natur, faktisk. ndash quantdev Apr 5 11 at 20:46 quantdev, problemet med dette er at GA - som alle andre kvantitative metoder - fungerer bare med kort tidsskala, hvis jeg ikke tar feil. Så hvis aksjemarkedet er mer som et aksjemarked, ville GA være helt ubrukelig. ndash Graviton Apr 6 11 at 8:56 Graviton. Det er ingen grunn til at man ikke kan programmere en GA for å gjøre analyse på lengre tidsrom. Tidsdomenet til en GA måles i generasjoner, ikke år eller dager. Så, man ville bare trenger å definere en befolkning som inneholder individer hvis generasjoner er år eller tiår lang (dvs. selskaper). Det har definitivt vært noe arbeid som nærmer seg å definere bedriftens 39genomes39 ved deres produksjonsprosesser. I en slik modell vil man optimalisere for en effektiv bedrifts forretningsmodell, gitt et bestemt markedsklimat. Det er imidlertid ikke en aksjekursportefølje modell, men. ndash BioinformaticsGal Apr 6 11 at 15:12 Forutsatt at du unngår data-snooping bias og alle de potensielle fallgruvene med å bruke fortiden for å forutsi fremtiden, stoler de genetiske algoritmer for å finne den rette løsningen ganske mye ned til det samme spillet du lager når du aktivt forvalte en portefølje, enten kvantitativt eller diskretionær. Hvis du tror på markedseffektivitet, øker transaksjonskostnadene fra aktiv ledelse ulogisk. Hvis du imidlertid tror at det er strukturelle forsterkers psykologiske mønstre eller mangler som skal utnyttes, og utbetalingen er verdt tiden og pengene for å forske og implementere en strategi, er det logiske valget aktivt ledelse. Å kjøre en GA-avledet strategi er en implisitt innsats mot markedseffektivitet. Du sier i utgangspunktet at det er feilverdier som forekommer av en eller annen grunn (masser av irrasjonelle personer, verdipapirfond herding på grunn av feiljusterte insentiver osv.) Og kjører denne GA kan sortere denne massen av data ut raskere enn jeg kan . besvart 18 feb 11 kl 15:49 Manuell håndtering av en aktiv portefølje innebærer å bruke all informasjon vi har og utlede en logisk konklusjon om markedet og deretter utføre strategier på det, dette er en rasjonell aktivitet. OTOH, ved hjelp av GA, bruker vi et svartboksverktøy som vi ikke kan forklare resultatet avledet av det fra alle aksepterte prinsipper. Jeg er ikke så sikker på om disse to er de samme. ndash Graviton Feb 18 11 at 15:57 Graviton Ja, men vurder likhetene mellom GA39s og hvordan vi mennesker lærer om markeder, utvikle strategier, lære av feil og tilpasse seg endrede markedsforhold. Når du undersøker hvilke vinnende og tapende aksjer har felles, eller hvilke volum og prismønstre som skaper gode handler, eller hvilken modell som er mest nøyaktig for verdsettelse av derivater, hva du gjør, er datautvinning fortiden på en måte. Når markedsforholdene endrer seg, handler du enten om nye strategier eller til slutt går ut av virksomheten. Hvis det er utnyttbare kanter i markedet, er den eneste forskjellen mellom deg og en GA ndash Joshua Chance 18 feb 11 kl 16:46 Graviton (i en meget bred forstand) er at du har en fortelling, en historie å gå med strategien din . Vi mennesker risikerer å finne et tilsynelatende tilbakevendende mønster og deretter rationalisere det og skape en fortelling. GA39s risikerer det samme, bare deres potensielt falske modell bruker ikke ord, de bruker matte og logikk. ndash Joshua Chance Feb 18 11 at 16:54 Den late Thomas Cover. (sannsynligvis den ledende informasjonsteoretiker i sin generasjon), betraktet universelle tilnærminger til ting som datakomprimering og porteføljeallokeringer som sanne genetiske algoritmer. Evolusjonen har ingen parametre for å passe eller trene. Hvorfor bør ekte genetiske algoritmer Universelle tilnærminger ikke gi noen antagelser om den underliggende fordelingen av data. De gjør ingen forsøk på å forutsi fremtiden fra mønstre eller noe annet. Den teoretiske effektiviteten til universelle tilnærminger (de presenterer betydelige implementeringsutfordringer, se mitt siste spørsmål: Geometri for universelle porteføljer) følger av dem som gjør hva evolusjonen krever. Den raskeste, smarteste eller sterkeste trenger ikke nødvendigvis å overleve i neste generasjon. Evolusjonen favoriserer det genet, organismen, meme, porteføljen eller datakomprimeringsalgoritmen som er posisjonert for å lett tilpasse seg det som skjer neste gang. Dessuten, fordi disse tilnærmingene gjør det ikke gjør noen antagelser og opererer ikke-parametrisk, kan man vurdere alle tester, selv på alle historiske data, som ute av prøven. Absolutt de har begrensninger, sikkert de kan ikke jobbe for hvert slag et problem vi står overfor i vårt domene, men gi, hvilken interessant måte å tenke på tingene. svarte 14. juli 13 kl 15:42 Vel, målet med et genetisk algo er å finne den beste løsningen uten å gå gjennom alle mulige scenarier fordi det ville være for langt. Så selvfølgelig er det kurvmontering, det er målet. Besvart 6. mar kl. 20:40 Men det er en betydelig forskjell mellom overfitting av prøven (dårlig) og tilpasning av befolkningen (god). Derfor foreslår mange at du kryssvaliderer algoritmen din med ikke-prøvetesting. ndash Joshua Jul 17 13 på 2:34 Ditt svar 2017 Stack Exchange, IncA styrkeforebygget prediksjonsmodell for å prognostisere valutakurser ved hjelp av støttevektormaskiner og genetiske algoritmer. Sitér denne artikkelen som: zorhan, M. O. Toroslu,.H. ehitolu, O. T. Soft Comput (2016). doi: 10.1007s00500-016-2216-9 Dette papiret omhandler problem med å forutse retning og størrelsesorden for bevegelse av valutapar i valutamarkedet. Studien bruker Support Vector Machine med en ny tilnærming til inngangsdata og handelsstrategi. Inndataene inneholder tekniske indikatorer generert fra valutaprisdata (dvs. åpne, høye, lave og lukkede priser) og representasjon av disse tekniske indikatorene som trenddeterministiske signaler. Inndataene er også dynamisk tilpasset hver handelsdag med genetisk algoritme. Studien inkorporerer en valutainstramt handelsstrategi som velger det beste paret til å handle fra det tilgjengelige settet av valutaer og er en forbedring i forhold til det foregående arbeidet. Nøyaktigheten av prediksjonsmodellene er testet på tvers av flere forskjellige sett med tekniske indikatorer og valutapar, som spenner over 5 års historiske data fra 2010 til 2015. De eksperimentelle resultatene antyder at bruk av trend deterministiske tekniske indikatorsignaler blandet med rå data forbedrer ytelsen og dynamisk tilpasning av inngangsdata til hver handelsperiode resulterer i økt fortjeneste. Results also show that using a strength-biased trading strategy among a set of currency pair increases the overall prediction accuracy and profits of the models. Forex Forecasting Support Vector Machines Genetic Algorithms Trend Deterministic Communicated by V. Loia. References Anasataskis L, Mort N (2009) Exchange rate forecasting using a combined parametric and nonparametric self-organising modelling approach. Expert Syst Appl 1:1200112011 CrossRef Google Scholar Bahrepour M, Akbarzadeh M, Yaghoobi M, Naghibi S (2011) An adaptive ordered fuzzy time series with application to FOREX. Expert Syst Appl 1:475485 CrossRef Google Scholar Box GEP, Jenkins GM (1976) Time series analysis: forecasting and control. Holden-Day, San Francisco MATH Google Scholar Brown DP, Robert HJ (1989) On technical analysis. Rev Financ Stud 2:527551 CrossRef Google Scholar Chen MY, Chen K, Chiang H, Huang H, Huang M (2007) Comparing extended classifier system and genetic programming for financial forecasting: an empirical study. Soft Comput 1:11731183 CrossRef MATH Google Scholar Cheung Y, Chinn MD, Pascual AG (2005) Empirical exchange rate models of the nineties: are they fit to survive J Int Money Finance 24:11501175 CrossRef Google Scholar Cortes C, Vapnik V (1995) Support-vector networks. Mach Learn 1:20 MATH Google Scholar Davis L (1991) Handbook of genetic algorithms. Van Nostrand Reinhold, New York Google Scholar Gupta AR, Ingle VR, Gaikwad MA (2012) LS-SVM parameter optimization using genetic algorithm to improve fault classification of power transformer. Int J Eng Res Appl 1:18061809 Google Scholar Ijegwa D, Rebecca O, Olusegun F, Isaac O (2014) A predictive stock market technical analysis using fuzzy logic. Comput Inf Sci 7(3):117 Jung HG, Yoon JP, Kim J (2007) Genetic algorithm based optimization of SVM based pedestrian classifier. ITC-CSCC 1:833834 Google Scholar Kampouridis M, Otero FEB (2015) Heuristic procedures for improving the predictability of a genetic programming financial forecasting algorithm. Soft Comput 1:116 Google Scholar Kamruzzaman J, Sarker R (2003) Forecasting of currency exchange rates using ANN: a case study. IEEE Int Conf Neural Netw Signal Process 1:793797 Google Scholar Khemchandani R, Jayadeva Chandra S (2009) Regularized least squares fuzzy support vector regression for financial time series forecasting. Expert Syst Appl 1:132138 CrossRef Google Scholar Korol T (2014) A fuzzy logic model for forecasting exchange rates. Knowl Based Syst 1:4960 CrossRef Google Scholar Leitch G, Tanner JE (1991) Economic forecast evaluation: profits versus the conventional error measures. Am Econ Rev 1:580590 Google Scholar Lu C, Lee T, Chiu C (2009) Financial time series forecasting using independent component analysis and support vector regression. Decis Support Syst 1:115125 CrossRef Google Scholar Meffert K (2014) JGAPJava Genetic Algorithms and Genetic Programming Package. jgap. sf Moosa I, Burns K (2014) The unbeatable random walk in exchange rate forecasting reality or myth J Macroecon 1:6981 CrossRef Google Scholar Nesreen A, Atiya A, Gayar N, Shishiny H (2010) An empirical comparison of machine learning models for time series forecasting. Econ Rev 1:594621 MathSciNet Google Scholar Pang S, Song L, Kasabov N (2011) Correlation-aided support vector regression for forex time series prediction. Neural Comput Appl 1:11931203 CrossRef Google Scholar Patel J, Shah S, Thakkar P, Kotecha K (2015) Predicting stock and stock price index movement using trend deterministic data preparation and machine learning techniques. Expert Syst Appl 1:259268 CrossRef Google Scholar Shahjalal M, Sultana A, Mitra KN, Khan K (2012) Implementation of fuzzy rule based technical indicator in share market. Int J Appl Econ Finance 6:5363 CrossRef Google Scholar Shen F, Chao J, Zhao J (2015) Forecasting exchange rate using deep belief networks and conjugate gradient method. Neurocomputing 1:243253 CrossRef Google Scholar Tick-by-Tick Real-Time and Historical Market Rates (2016) truefx. Accessed on 14 Jan 2016 Villa S, Stella F (2012) A continuous time bayesian network classifier for intraday FX Prediction. Quantitative Finance, pp 1-20 Wang S, Yu L, Lai K, Huang W (2007) Developing and assessing an intelligent forex rolling forecasting and trading decision support system for online e-service. Int J Intell Syst 1:475499 Google Scholar Yao J, Tan C (2000) A case study on using neural networks to perform technical forecasting of forex. Neurocomputing 1:7998 Zhang P (2003) Time series forecasting using a hybrid ARIMA and neural network model. Neurocomputing 1:159175 CrossRef MATH Google Scholar Zhiqiang G, Huaiqing W, Quan L (2013) Financial time series forecasting using LPP and SVM optimized by PSO. Soft Comput 1:805818 CrossRef Google Scholar Copyright information Springer-Verlag Berlin Heidelberg 2016 Authors and Affiliations Mustafa Onur zorhan 1 Email author smail Hakk Toroslu 1 Onur Tolga ehitolu 1 1. Computer Engineering Department Middle East Technical University Ankara Turkey About this article

No comments:

Post a Comment