Thursday 19 October 2017

Genetisk Algoritme Trading System


Opprette et handelssystem innen Trading System Lab Trading System Lab vil automatisk generere Trading Systems på et hvilket som helst marked i noen få minutter ved å bruke et svært avansert dataprogram kjent som AIMGP (automatisk induksjon av maskinkode med genetisk programmering). Opprettelse av et handelssystem innen Trading System Lab oppnås i tre enkle trinn. For det første kjøres en enkel forprosessor som automatisk trekker ut og preprocesses de nødvendige dataene fra markedet du ønsker å jobbe med. TSL aksepterer CSI, MetaStock, AIQ, TradeStation, Free Internet data, ASCII, TXT, CSV, CompuTrac, DowJones, FutureSource, TeleChart2000v3, TechTools, XML, Binær og Internet Streaming data. For det andre drives Trading System Generator (GP) i flere minutter eller mer for å utvikle et nytt Trading System. Du kan bruke dine egne data, mønstre, indikatorer, intermarketforhold eller grunnleggende data innenfor TSL. For det tredje er det utviklede handelssystemet formatert for å produsere nye handelssystemssignaler fra TradeStation eller mange andre handelsplattformer. TSL vil automatisk skrive Easy Language, Java, Assembler, C kode, C code og WealthLab Script Language. Handelssystemet kan da handles manuelt, handles gjennom en megler eller automatisk handles. Du kan opprette Trading Systemet selv, eller vi kan gjøre det for deg. Deretter kan du eller din megler handle enten manuelt eller automatisk. Trading System Labs Genetic Program inneholder flere funksjoner som reduserer muligheten for kurve montering, eller produserer et handelssystem som ikke fortsetter å utføre i fremtiden. For det første har de utviklede Trading Systems sin størrelse beskåret ned til lavest mulig størrelse gjennom det som kalles Parsimony Pressure, tegning fra begrepet minimal beskrivelse lengde. Dermed er det resulterende handelssystemet så enkelt som mulig, og det er generelt antatt at jo enklere handelssystemet er, desto bedre vil det utføre i fremtiden. For det andre innføres tilfeldighet i den evolusjonære prosessen, noe som reduserer muligheten for å finne løsninger som er lokalt, men ikke globalt optimale. Tilfeldighet er introdusert over ikke bare kombinasjonene av det genetiske materialet som brukes i de utviklede Trading Systems, men i Parsimony Pressure, Mutation, Crossover og andre høyere nivå GP parametere. Uten prøvetesting utføres mens opplæring pågår med statistisk informasjon som presenteres både på prøveprøve og uten prøveeksempel. Kjør logger presenteres for brukeren for opplæring, validering og ut av prøvedata. Godt opptatt Ut av prøveprestasjon kan være et tegn på at handelssystemet utvikler seg med robuste egenskaper. Vesentlig forringelse av den automatiske prøveutprøvingen i forhold til prøven i prøven kan innebære at etableringen av et robust handelssystem er i tvil, eller at terminalen eller inngangssettet kanskje må endres. Endelig er Terminal Set nøye valgt slik at det ikke er altfor forvirrende valg av det opprinnelige genetiske materialet mot et bestemt markedsperspektiv eller følelse. TSL starter ikke kjøringen med et Trading System forhåndsdefinert. Faktisk er det kun inngangssettet og et utvalg av markedsinngangsmodus eller moduser, for automatisk oppføringssøk og oppgave, først laget. Et mønster eller indikator atferd som kan betraktes som en hausse situasjon kan brukes, kasseres eller reverseres i legen. Ingen mønster eller indikator er forordnet til noen bestemt markedsbevegelsesforspenning. Dette er en radikal avgang fra manuelt generert Trading System-utvikling. Et handelssystem er et logisk sett med instruksjoner som forteller forhandleren når man skal kjøpe eller selge et bestemt marked. Disse instruksjonene krever sjelden inngrep av en næringsdrivende. Handelssystemer kan handles manuelt, ved å observere handelsinstruksjoner på en dataskjerm, eller kan handles ved å la datamaskinen automatisk gå inn i handler på markedet. Begge metodene er i utbredt bruk i dag. Det er flere profesjonelle pengeforvaltere som anser seg selv Systematisk eller Mekanisk forhandlere enn de som anser seg selv Diskretionære, og utførelsen av systematiske pengeforvaltere er generelt overlegne enn for diskretionære pengeforvaltere. Studier har vist at handelsregnskap generelt mister penger oftere hvis kunden ikke bruker et handelssystem. Den betydelige økningen i handelssystemer de siste 10 årene er tydelig spesielt i råvareforetaksselskapene, men aksje - og obligasjonsmarkedsmeglerfirmaer blir stadig mer oppmerksomme på fordelene ved bruk av handelssystemer, og noen har begynt å tilby Trading Systems til deres detaljhandelskunder. De fleste fondsbestyrere bruker allerede sofistikerte dataloggoritmer til å veilede sine beslutninger om hva varmt lager skal velge eller hvilken sektorrotasjon som er til fordel. Datamaskiner og algoritmer er blitt vanlige i å investere, og vi regner med at denne trenden fortsetter som yngre. Flere datamaskiner kunnskapsrike investorer fortsetter å tillate at deler av pengene styres av Trading Systems for å redusere risiko og øke avkastningen. De store tapene som investorene deltar i å kjøpe og holde aksjer og fond som aksjemarkedet smeltet ned de siste årene, fremmer denne bevegelsen mot en mer disiplinert og logisk tilnærming til aksjemarkedet. Den gjennomsnittlige investor innser at han eller hun for øyeblikket tillater at mange aspekter av deres liv og livene til deres kjære blir vedlikeholdt eller kontrollert av datamaskiner som biler og fly som vi bruker til transport, det medisinske diagnostiske utstyret vi bruker til vedlikehold av helse, varme - og kjølekontrollene vi bruker til temperaturkontroll, nettverkene vi bruker til internettbasert informasjon, selv spillene vi spiller for underholdning. Hvorfor tror enkelte investorer at de kan skyte fra hoften i sine beslutninger om hvilken aksje eller fond for å kjøpe eller selge og forvente å tjene penger. Endelig har den gjennomsnittlige investor blitt forsiktig med råd og informasjon videresendt av skruppelløse meglere , regnskapsførere, bedriftsledere og finansielle rådgivere. I de siste 20 årene har matematikere og programvareutviklere søkt indikatorer og mønstre på lager og råvaremarkeder på jakt etter informasjon som kan peke på retningen til markedet. Denne informasjonen kan brukes til å forbedre ytelsen til handelssystemer. Vanligvis oppnås denne oppdagingsprosessen gjennom en kombinasjon av prøve og feil og mer sofistikert Data Mining. Vanligvis utvikler vil ta uker eller måneder med nummer crunching for å produsere et potensielt Trading System. Mange ganger vil dette Trading Systemet ikke fungere bra når det brukes i fremtiden på grunn av det som kalles kurvemontering. Gjennom årene har det vært mange Trading Systems (og Trading System Development Companies) som har kommet og gått da deres systemer har mislyktes i live trading. Utvikling av handelssystemer som fortsetter å utføre i fremtiden er vanskelig, men ikke umulig å oppnå, selv om ingen etisk utvikler eller pengeforvalter vil gi en ubetinget garanti for at ethvert handelssystem, eller for den saks skyld enhver aksje, obligasjon eller fond, vil fortsette å produsere fortjeneste i fremtiden for alltid. Det som tok uker eller måneder for Handelssystemutvikleren å produsere tidligere, kan nå bli produsert i minutter ved bruk av Trading System Lab. Trading System Lab er en plattform for automatisk generering av handelssystemer og handelsindikatorer. TSL benytter seg av en høyhastighets genetisk programmeringsmotor og vil produsere handelssystemer med en hastighet på over 16 millioner systemstenger per sekund basert på 56 innganger. Merk at bare noen få innganger faktisk vil bli brukt eller nødvendig, noe som resulterer i generelt enkle utviklede strategistrukturer. Med omtrent 40 000 til 200 000 systemer som trengs for konvergens, kan tiden til konvergens for ethvert datasett tilnærmet. Legg merke til at vi ikke bare driver en brute force optimalisering av eksisterende indikatorer på jakt etter optimale parametere som skal brukes i et allerede strukturert Trading System. Handelssystemgeneratoren begynner på nullpunktsopprinnelse og gir ingen antagelser om markedets bevegelse i fremtiden og utvikler deretter Trading Systems i en meget høy grad kombinere informasjon tilstede i markedet og formulere nye filtre, funksjoner, forhold og forhold som det går frem mot et genetisk utviklet handelssystem. Resultatet er at et utmerket Trading System kan genereres om noen få minutter på 20-30 år med daglige markedsdata på stort sett hvilket som helst marked. I løpet av de siste årene har det vært flere tilnærminger til Trading System optimering som benytter den mindre kraftige genetiske algoritmen. Genetiske programmer (GP) er overlegen Genetic Algorithms (GAs) av flere grunner. Først sammenlikner apotekene seg med en løsning med eksponentiell hastighet (veldig rask og raskere), mens genetiske algoritmer konvergerer lineært (mye langsommere og ikke blir noe raskere). For det andre genererer huslegerne faktisk Trading System-maskinvare som kombinerer det genetiske materialet (indikatorer, mønstre, intermarkedsdata) på unike måter. Disse unike kombinasjonene kan ikke være intuitivt åpenbare og krever ingen grunnleggende definisjoner av systemutvikleren. De unike matematiske forholdene som er opprettet, kan bli nye indikatorer, eller varianter i teknisk analyse, som ennå ikke er utviklet eller oppdaget. GA, derimot, søker rett og slett etter optimale løsninger når de går over parameterområdet de ikke oppdager nye matematiske relasjoner og skriver ikke sin egen Trading System-kode. Leger oppretter handelssystemkoden av ulike lengder, ved bruk av variabel lengdegener, vil endre lengden på handelssystemet gjennom det som kalles ikke-homologe crossover og vil helt kaste bort en indikator eller et mønster som ikke bidrar til effektiviteten til handelssystemet. GAs bruker kun faste størrelsesinstruksblokker, og bruker kun homolog crossover og produserer ikke handelssystemkoden for variabel lengde, og de vil heller ikke kaste bort en ineffektiv indikator eller et mønster så enkelt som en lege. Endelig er genetiske programmer en nylig fremgang innen domenet til maskinlæring, mens genetiske algoritmer ble oppdaget for 30 år siden. Genetiske programmer inkluderer alle de viktigste funksjonalitetene for genetisk algoritmer crossover, reproduksjon, mutasjon og fitness, men praktiserende legemidler inneholder mye raskere og robuste funksjoner, noe som gjør at legener er det beste valget for å produsere Trading Systems. GP som er ansatt i TSLs Trading System Generator, er den raskeste GP som for tiden er tilgjengelig, og er ikke tilgjengelig i noen annen finansmarkeds programvare i verden. Den genetiske programmeringsalgoritmen, handelssimulatoren og treningsmotorer som brukes i TSL, tok over 8 år å produsere. Trading System Lab er et resultat av mange års hardt arbeid fra et team av ingeniører, forskere, programmerere og forhandlere. Vi tror at den representerer den mest avanserte teknologien som er tilgjengelig i dag for handel med markedene. Naturlig utvalg: Genetisk algoritme for systemoptimalisering Genetisk programmering Evo 2 er vårt avanserte genetiske algoritmbibliotek som inkorporerer det nyeste innen genetisk algoritme-design, for eksempel biologisk identiske prosesser, epigenetiske brytere, simulert annealing, Westermarck infeksjonsforebygging, aldersbegrenset rekombinasjon og mer. Evo 2-algoritmen er ikke basert på standard single-kromosom GA-design. Evo 2 løser multivariate optimaliseringsproblemer raskt og skalerer med kompleksitet. Evo 2-algoritmen ble utviklet for genetisk programmering (autonom opprettelse av handelssystemer), optimalisering av handelssystem og porteføljeoptimalisering. Evo 2 lar utviklere enkelt utvikle multivariate handelssystemoptimaliseringer. Bio-identisk genom og algoritme Evo 2 er ikke bare bio-inspirert, men det er bio-identisk i mange aspekter. Evo 2 simulerer hver naturlig prosess fra kompisvalg til DNA-emballasje og fullført meiosis. De fleste standard genetiske algoritmer forsømmer å utføre de mange trinnene av meiosis som er av vital betydning for genetisk variasjon, en avgjørende viktig variabel for å unngå lokale optima. Under profase utveksles kromosomer synaps og en liten mengde DNA mellom homologe kromosomer gjennom en prosess kjent som kryssing over. Den kritiske delen av profasen er foringen av tetrads i homologe par. Evo 2-algoritmen sikrer at homologer kun opprettes fra ikke-relaterte, motsatte kjønnskromosomer. Metafase og anafase Metafase og anafase er fasene hvor mye variasjon inkorporeres i genomet, men de fleste genetiske algoritmer utelater fullstendig disse trinnene. Evo 2 simulerer begge faser helt og nøyaktig. Ingen innfødt tillatelse De fleste standard genetiske algoritmer er innavlet suppe, teknisk sett. Inbreeding reduserer genetisk variasjon, som er nok å si, hindrer systemene i å utvikle seg og tilpasse seg miljøet. I standard GAs betyr dette at et system kan være mer sannsynlig å bli sittende fast i lokale optima. Mens naturen har minst tre mekanismer for å hindre innavl, unnlater de fleste genetiske algoritmer å løse dette problemet. Den første metoden: Forhindre avkom fra å reprodusere. Innavl resulterer i økt homozygositet, noe som kan øke sjansene for at avkom blir påvirket av recessive eller skadelige egenskaper. Den andre mekanismen: Kjør vekk unge menn for å forhindre incest parring mellom søsken. Den tredje mekanismen: Westermarck-effekten. Dette er en psykologisk effekt der personer som er oppvokst i nærhet i barndommen blir desensibilisert til senere seksuell tiltrekning. Den endelige konsekvensen av innavl er arten utryddelse på grunn av mangel på genetisk mangfold. Gripen, en av de mest innavlede artene på jorden, er et godt eksempel. Og det skjer også å bli utryddet. For tjue tusen år siden ropte cheetahs over hele Afrika, Asia, Europa og Nord-Amerika. For rundt 10.000 år siden, på grunn av klimaendringer, ble alle utelukkende en art utdød. Med den drastiske reduksjonen i tallene deres, var nære slektninger tvunget til å avle, og valpene ble genetisk innfødt, noe som betyr at alle cheetahs er svært nært beslektet. Selv om naturen forbyder innavl, ser nesten alle datasimulerte genetiske algoritmer bort dette problemet. Evo 2 forhindrer inbreeding via Westermarck-effekten og andre simulerte effekter. Epigenetiske brytere Epigenetiske teorier beskriver hvordan endringer i genuttrykk kan skyldes andre mekanismer enn endringer i den underliggende dna-sekvensen, midlertidig eller gjennom flere generasjoner, ved å påvirke et nettverk av kjemiske brytere i celler samlet kjent som epigenomet. Evo 2 kan simulere epigenetiske brytere for å tillate at systemet midlertidig straffes for handlinger som for å være for grådige eller risikofylte. Simulert Annealing Simulert annealing er en probabilistisk metaheuristisk for det globale optimaliseringsproblemet med å finne en god tilnærming til den globale optimaliteten av en gitt funksjon i et stort søkerom. Det brukes ofte når søkeområdet er diskret. For visse problemer kan simulert glødemiddel være mer effektiv enn uttømmende opptelling. Family Tree Evo 2 kan lagre genealogisk informasjon for hvert genom, slik at brukerne kan se gjennom utviklingen av den genetiske algoritmen for å se hvordan visse gener har utviklet seg over tid. Karyogram Viewer Evo 2 har et innebygd karyogram, som gjør det mulig å visualisere genene mens genetiske algoritmer utvikler seg. Karyogrammet kan tilpasses for å vise slektsinformasjon for bestemte genomer via en kontekstmeny. Evo 2-applikasjoner Evo 2 kan brukes på klient - eller serversiden for genetisk programmering (autonom opprettelse av handelssystemer), optimalisering av handelssystem, porteføljeoptimalisering, ressursfordeling og ikke-finansieringsrelaterte applikasjoner, inkludert men ikke begrenset til kunstig kreativitet, automatisert design, bioinformatikk, kjemisk kinetikk, kodebrytende, kontrollteknikk, Feynman-Kac-modeller, filtrering og signalbehandling, planlegging, maskinteknikk, stokastisk optimalisering og timetablering. Genetiske programmeringseksempler TradeScript programmeringseksempler viser utviklere hvordan man lager genetiske programmeringsmodeller som kan teste test og optimalisere strategier. Programmeringsdokumentasjon kan lastes ned her. 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 akkurat 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.)

No comments:

Post a Comment