fredag den 28. marts 2014

Building Trading Systems Brug Automatic Code Generation


 Efterhånden som flere og flere erhvervsdrivende er flyttet til automatiseret handel , har interessen for systematisk handel strategier steget. Mens nogle forhandlere udvikle deres egne handelsstrategier , den stejle indlæringskurve kræves for at udvikle og implementere et system for handel er en hindring for mange handlende . En nyligt udviklet løsning på dette problem er brugen af ​​computer algoritmer til automatisk at generere handelssystem kode. Målet med denne fremgangsmåde er at automatisere mange af trinene i den traditionelle proces med at udvikle handelssystemer.

Automatisk kodegenerering software til opbygning af handelssystemer er ofte baseret på genetiske programmering (GP ), der tilhører en klasse af teknikker kaldes evolutionære algoritmer. Evolutionære algoritmer og GP især er udviklet af forskere i kunstig intelligens baseret på biologiske begreber reproduktion og evolution. En GP algoritme udvikler en befolkning på handel strategier fra en oprindelig befolkning på tilfældigt genererede medlemmer. Medlemmer af befolkningen konkurrere mod hinanden på grundlag af deres kondition . Montøren medlemmer er valgt som forældre til at producere et nyt medlem af befolkningen , som erstatter en svagere (mindre fit ) medlem .

To forældre kombineres ved hjælp af en teknik kaldet crossover , som efterligner den genetiske crossover i biologisk reproduktion. I crossover , er en del af den ene forælder genom kombineret med en del af den anden forælder genom at producere barnet genom. For handelssystem generation , kan genomer repræsenterer forskellige elementer i handelsstrategi , herunder forskellige tekniske indikatorer , såsom glidende gennemsnit , stokastik , og så videre; forskellige typer af ind-og udrejse ordrer; og logiske betingelser for indgåelse og udtrædelse af markedet.

Andre medlemmer af befolkningen er produceret via mutation , er der et medlem af befolkningen er udvalgt til at blive ændret ved tilfældigt skiftende dele af sit genom. Typisk et flertal ( f.eks 90%) af de nye medlemmer af befolkningen produceret via crossover , med de resterende medlemmer er produceret via mutation.

Over successive generationer af reproduktion, samlede fitness af befolkningen har en tendens til at stige. Fitness er baseret på et sæt bygge mål , der rangerer eller score hver strategi . Eksempler på build mål omfatter forskellige resultatmål , såsom nettooverskuddet, tab , procentdel af vindere , profit faktor , og så videre . Disse kan angives som minimumskrav , såsom en fortjeneste faktor på mindst 2,0 , eller som mål at maksimere , såsom maksimering nettoresultatet . Hvis der er flere build mål, kan et vægtet gennemsnit anvendes til dannelse fitness metriske. Processen standses efter nogle antal generationer , eller når fitness stopper stigende. Opløsningen er generelt taget som den stærkeste medlem af den resulterende population eller hele befolkningen kunne sorteres efter egnethed og gemt til yderligere gennemgang .

Fordi genetiske programmering er en form for optimering, over- montering er en bekymring . Dette er typisk løses ved hjælp af out-of -sample test , hvor data ikke er vant til at evaluere strategier i build fase bruges til at teste dem bagefter . Væsentlige, hver kandidat strategi bygget under byggeprocessen er en hypotese , som enten støttede eller tilbagevist af evalueringen og yderligere understøttet eller tilbagevist af out-of -sample resultater.

Der er flere fordele ved at bygge handelssystemer via automatisk kodegenerering . GP -processen gør det muligt syntese af strategier gives kun et højt niveau sæt resultatmål . Algoritmen gør resten . Det mindsker behovet for detaljeret kendskab til tekniske indikatorer og strategi design principper . Også GP -processen er saglig . Mens de fleste forhandlere har udviklet bias for eller imod specifikke indikatorer og / eller handel logik er GP styret kun af , hvad der virker . Desuden ved at indarbejde ordentlig handel regel semantik , GP proces kan være designet til at producere logisk korrekte handelsregler og fejlfri kode. I mange tilfælde GP proces producerer resultater, der ikke blot enestående , men ikke indlysende . Disse skjulte perler ville være næsten umuligt at finde nogen anden måde. Endelig ved at automatisere byggeprocessen , den nødvendige tid til at udvikle en bæredygtig strategi kan reduceres fra uger eller måneder til et spørgsmål om få minutter i nogle tilfælde , afhængigt af længden af input pris datafil og andre bygge -indstillinger.