Skip to main content

Trading Strategi Optimalisering Matlab


De fleste handelssystemer har en rekke parametere innebygd, parametere som tilbakekallingsperioden, inntaks - og utgangsterskelene, og så videre. Lesere av bloggen min (for eksempel her og her) og boken min vil vite min mening om parameteroptimalisering: Jeg er ikke en stor fan av det. Dette er fordi jeg tror at finansielle tidsserier er for ikke-stasjonære, slik at man kan si hva som var optimalt i backtestet, nødvendigvis er optimalt i fremtiden. De fleste handelsmenn jeg kjenner ville heller handle en strategi som er ufølsom for små endringer i parametre, eller alternativt en parameterløs strategi som effektivt er et gjennomsnitt av modeller med forskjellige parametere. Når det er sagt, hvis du bare kan handle en modell med et bestemt sett med parametere, er det rasjonelt å spørre hvordan man kan velge det beste (optimale) settet av parametere. Mange handelsmodeller har et stort antall parametere, og det er ganske tungt å finne de optimale verdiene for alle disse parametrene samtidig. Nylig publiserte Ron Schoenberg en artikkel i Futures Magazine som beskriver en måte å oppnå dette med bare en liten mengde datakraft. Den viktigste teknikken som Ron bruker, er kubisk polynomisk passform av PampL-overflaten som en funksjon av parametrene. Ron bruker VIX RSI-strategien i Larry Connors bok Kortsiktige handelsstrategier som fungerer som et eksempel. Denne strategien har 5 parametere som skal optimaliseres, men Ron må bare beregne PampL for 62 forskjellige sett med parametere, og hele prosessen tar bare 58 sekunder. Selv om Ron har bekreftet at de fleste parametrene Connors plukket er nær optimal, fant han noen få overraskelser: nemlig at RSI i periode 3 eller 4 er betydelig mer lønnsomt enn de 2 som Connors brukte, i hvert fall i backtestperioden . Nå, for en sann test av denne optimaliseringen, ville det være nyttig hvis Ron utførte denne optimaliseringen, og holdt tilbake med noen data utenfor dataene, og se om disse parameterne fortsatt er optimale i det tilbakeholdte datasettet. Siden han ikke gjorde det, må vi vente på et år til å finne ut oss selv 11 kommentarer: Vi snakker om utgående data, har en sterk mening om Walk-forward testing. Jeg vet at Robert Pardo er en stor forutsetning for det som et verktøy for å tilpasse seg endrede (dvs. ikke-stasjonære) markeder. På den annen side har du Dunn som driver samme system med samme parametere. Jeg har også nylig kommet over Ralph Vince Leverage Space Portfolio-modellen som høres ut som et lovende alternativ til optimaliseringsprosessen - med en overflate av ytelse og drawdown - men ser bare på pengestyringssiden av ting (dvs. posisjonstørrelse i stedet for parametervalg) . Det store er at det skal tillate flere systemoptimalisering. Har du noen tanker på denne Takk for de nyttige linkene uansett. Unnlatelsen av å generalisere ut av prøven er vanligvis et problem med modeller som pleier å være overmonterte, som nevrale nett. Modeller jeg har sett på, variasjoner på modeller foreslått av Connors og Alvarez i sine bøker, er veldig enkle modeller, og jeg forventer ikke at de har noen problemer utenom prøven. Jeg gjorde fremover teste modellen i Futures Magazine. Modellen ble optimalisert på data fra 1993 til 2003, og da kjørte jeg modellen på data fra 2003 til 2009. Resultatene var like. Dette ble rapportert i Futures Magazine-artikkelen. Ville ikke dette kvalifisere som en test utenom prøven av modellen Ron, Mine unnskyldninger - jeg overser avsnittet som nevnte fremoverprøving. Tabellene dine viste at de optimale parametrene som ble beregnet i backtest, gir gode resultater i prøven utenfor prøven. Har du imidlertid optimalisert hele settet av parametre på dataene utenfor data, og se om det du valgte i prøveperioden, forblir optimal i fremoverprøven For eksempel vi ser at Factor53 er optimal i backtestet. Men Factor54 er optimal utenom prøven i stedet. Og hvem er å si det gitt en annen utelukkende periode i 2010, har Factor52 vært optimal. Derfor, hvis jeg handlet denne strategien, bør jeg ikke handle 3 modeller med Factor52, 3 og 4 samtidig bare til gjennomsnitt over hele fremtiden mulige optimale parametere Jez, Takk for at du nevner Leverage Space Portfolio. Jeg har kommet over det før, og vil studere det før jeg kommenterer. Ernie Du gjør et godt poeng at det optimale punktet i en tidsperiode ikke er det optimale punktet i en annen tidsperiode. Det er klart en av svakhetene til ethvert forsøk med historiske økonomiske data. Men hvis målet er å få de beste tallene som fortiden har å tilby på kortest tid, kan du ikke slå et statistisk designet eksperiment. Hvis vi snakker om en kvantifisert handelstilgang, snakker vi om å få og bruke de beste tallene, det vil si tallene som viste seg å være mest nyttige i fortiden. Men som jeg er sikker på at du er klar over, er et designet eksperiment mer enn det optimale resultatet. Hvert eksperiment inneholder hundre spørsmål og svar, og hvert eksperiment gir opphav til spørsmål som kun kan besvares med videre eksperimentering. Du kan miste deg selv i et år og ta en titt på alle aspekter av et enkelt 200 forsøk eksperiment. Når du analyserer sprekker (beregning av kointegrasjonskoeffisienten, aplying testen for gjennomsnittlig reversering og estimering av spredt halveringstid) bruker du loggpriser eller dollarpriser Beklager at du legger inn en kommentar som snakker om annet emne. Hei Anon, jeg bruker dollarpriser, men jeg tror ikke det betyr mye. Ernie Bare lurer på hvilket testsystem du bruker og for å tilpasse de kubiske polynomene data, bruker du Matlab cs96ai, jeg bruker Matlab til min backtesting. Når det gjelder kubikkpasset, kan du spørre forfatterne til det originale papiret som jeg sitert. (Du kan selvfølgelig også gjøre det i Matlab, men jeg har ikke selv utført denne undersøkelsen.) Ernie Kjære Ernie, takk for boka. Det er veldig bra. Jeg prøver å implementere noen av programmene og gjøre noen tilbakemeldinger. Jeg har ikke matlab da jeg fant ut at det var veldig dyrt for min oppstartshandel. Er det en annen som du vil anbefale. Jeg prøver å programmere i R, men det er veldig sakte akkurat nå. Har du alle dine eksempler i Excel, uansett. Igjen, takk for boka, og jeg har hatt glede av å lese det og prøver å implementere noe av det. Vina, Takk for dine komplimenter. Du kan kanskje finne noen Excel-erstatninger (for eksempel en leser sa på denne bloggen at det er en Excel-adf-test for stasjonæritet et sted). Imidlertid er mange av strategiene vanskelige å implementere i Excel. Det er derfor mange quants bruker Matlab for backtesting i stedet. Sikkert R er også et godt alternativ. (Gjesteblogger Paul Teetor som du kan søke etter på denne bloggen har noen eksempler på R-programmer som er lagt inn.) Lykke til, ErnieImproving tekniske handelssystemer ved å bruke en ny MATLAB-basert genetisk algoritmprosedyre. Nye studier på finansmarkedene tyder på at teknisk analyse kan være et veldig nyttig verktøy for å forutse trenden. Handelssystemer er mye brukt til markedsvurdering, men parameteroptimalisering av disse systemene har tiltrukket liten interesse. I dette papiret, for å utforske den potensielle kraften i digital handel, presenterer vi et nytt MATLAB verktøy basert på genetiske algoritmer verktøyet spesialiserer seg på parameter optimalisering av tekniske regler. Den bruker kraften til genetiske algoritmer for å generere raske og effektive løsninger i reelle handelsvilkår. Vårt verktøy ble testet grundig på historiske data fra et UBS-fond som investerer i nye aksjemarkeder gjennom vårt spesifikke tekniske system. Resultatene viser at vår foreslåtte GATradeTool overgår vanlige, ikke-adaptive, programvareverktøy med hensyn til stabilitet av retur og tidsbesparelse over hele prøveperioden. Imidlertid ga vi bevis på en mulig befolkningsstørrelseeffekt i kvaliteten på løsningene. Finansielle markeder Prediksjon Genetiske algoritmer Investering Tekniske regler 1. Innledning Todayrsquos forhandlere og investeringsanalytikere krever raske og effektive verktøy i et hensynsløst finansmarked. Kampene i handel er nå hovedsakelig utført ved datahastighet. Utviklingen av ny programvareteknologi og utseendet til nye programvaremiljøer (for eksempel MATLAB) gir grunnlag for å løse vanskelige økonomiske problemer i sanntid. MATLABrsquos store innebygde matematiske og finansielle funksjonalitet, det faktum at det både er et tolket og kompilert programmeringsspråk og dets uavhengighet i plattform, gjør det godt egnet for økonomisk applikasjonsutvikling. Bevis på avkastning opptjent av tekniske regler, inkludert momentumstrategier (for eksempel 14. 15. 16. 16. 25 xA0andxA020), bevegelige gjennomsnittsregler og andre handelssystemer 6. 2. 9 xA0andxA024 kan støtte betydningen av teknisk analyse. Imidlertid har flertallet av disse studiene ignorert spørsmålet om parameteroptimalisering, slik at de er åpne for kritikk av data snooping og muligheten for overlevelsesforstyrrelser 7. 17 xA0andxA08. Tradisjonelt brukte forskere ad hoc-spesifikasjon av handelsregler. De bruker en standard populær konfigurasjon eller tilfeldig prøve ut noen få forskjellige parametere og velg det beste med kriterier basert på retur hovedsakelig. Papadamou og Stephanides 23. Implementert en ny MATLAB-basert verktøykasse for datamaskinstøttet teknisk handel som har inneholdt en prosedyre for parameteroptimaliseringsproblemer. Det svake punktet i optimaliseringsprosedyren er imidlertid tid: objektivfunksjonen (for eksempel fortjeneste) er ikke en enkel kvadratfeilfunksjon, men en komplisert (hver optimaliserings iterasjon går gjennom dataene, genererer handelssignaler, beregner fortjeneste, etc.). Når datasettene er store og du ofte vil gjenoptimere systemet ditt, og du trenger en løsning så snart som mulig, kan du prøve alle mulige løsninger for å få det beste. Det vil være en veldig kjedelig oppgave. Genetiske algoritmer (GAs) er bedre egnet ettersom de utfører tilfeldige søk på en strukturert måte og konvergerer veldig fort på populasjoner av næroptimale løsninger. GA vil gi deg et sett (populasjon) ldquogoodrdquo løsninger. Analytikere er interessert i å få noen gode løsninger så fort som mulig, i stedet for den globalt beste løsningen. Den globalt beste løsningen finnes, men det er svært lite sannsynlig at det vil fortsette å være det beste. Målet med denne studien er å vise hvordan genetiske algoritmer, en klasse av algoritmer i evolusjonær beregning, kan benyttes for å forbedre ytelsen og effektiviteten til datastyrte handelssystemer. Det er ikke hensikten her å gi teoretisk eller empirisk begrunnelse for den tekniske analysen. Vi demonstrerer vår tilnærming i en bestemt prognostiseringsoppgave basert på nye aksjemarkeder. Dette papiret er organisert som følger. Tidligere arbeid presenteres i del 2. Datasettet og metodikken er beskrevet i avsnitt 3. De empiriske resultatene er omtalt i avsnitt 4. Konklusjonene følger avsnitt 5. 2. Tidligere arbeid Det er en stor del av GA-arbeid innen datavitenskap og ingeniørfag, men lite arbeid har blitt gjort om forretningsområder. Senere har det vært en økende interesse for GA-bruk i finansøkonomi, men så langt har det vært lite forskning om automatisert handel. Etter vår kunnskap var den første publiserte papirbindende genetiske algoritmen til investeringer fra Bauer og Liepins 4. Bauer 5 i sin bok ldquoGenetic Algorithms and Investment strategiesrdquo ga praktisk veiledning om hvordan GAs kan brukes til å utvikle attraktive handelsstrategier basert på grunnleggende informasjon. Disse teknikkene kan enkelt utvides til å inkludere andre typer informasjon, for eksempel tekniske og makroøkonomiske data samt tidligere priser. Ifølge Allen og Karjalainen er 1. genetisk algoritme en hensiktsmessig metode for å oppdage tekniske handelsregler. Fernaacutendez-Rodriacuteguez et al. 11 ved å vedta genetiske algoritmer optimalisering i en enkel handelsregel gi bevis for vellykket bruk av GA fra Madrid Børs. Noen andre interesserte studier er de av Mahfoud og Mani 18 som presenterte et nytt genetisk algoritmbasert system og brukte det til å forutsi fremtidige forestillinger av individuelle aksjer av Neely et al. 21 og av Oussaidene et al. 22 som brukte genetisk programmering til prognoser for utenlandsk valuta og rapporterte noe suksess. En av komplikasjonene i GA-optimalisering er at brukeren må definere et sett med parametere som kryssfrekvens, populasjonsstørrelse og mutasjonsrate. Ifølge De Jong 10 som studerte genetiske algoritmer i funksjonsoptimalisering, krever god GA-ytelse høy crossover-sannsynlighet (omvendt proporsjonal med befolkningsstørrelse) og en moderat befolkningsstørrelse. Goldberg 12 og Markellos 19 antyder at et sett med parametere som fungerer godt over mange problemer er en crossover-parameter 0,6, populasjonsstørrelse 30 og mutasjonsparameter 0,0333. Bauer 4 utførte en serie simuleringer på økonomiske optimaliseringsproblemer og bekreftet gyldigheten av Goldbergrsquos forslag. I den nåværende studien vil vi utføre en begrenset simuleringsstudie ved å teste ulike parameterkonfigurasjoner for det valgte handelssystemet. Vi vil også gi bevis for at GA foreslått ved å sammenligne verktøyet vårt med andre programvareverktøy. Strategioptimalisering Det er to, blant mange, problemer med å kjøre dette skriptet i MatlabR. Den første er koding. Min personlige mening er at det krever Herculean innsats for å simulere ikke-trivielle handelsstrategier (eller noen komplekse systemer) i MatlabR og sørge for at simuleringen er riktig. Det er rett og slett ingen enkel prosess eller verktøy tilgjengelig for systematisk og automatisk å sjekke og teste for riktigheten av skriptene. Verre, de fleste quantstraders kan ikke kode. De vet ingenting om software testing. I praksis tror de fleste quantstraders bare at deres kode er riktig. Faktisk kan mange programmerere i finansbransjen ikke kode heller. (De gode går til GooG, MFT, AAPL8230 eller oppstart.) Enda viktigere er den andre vanskeligheten, som denne diskusjonen fokuserer på, ytelse. Jeg tror at det er mer enn åpenbart at utførelsen av MatlabR-skript generelt er veldig sakte. MatlabR utfører og tolker et skript linje for linje. For vårt algoritmiske handelsstrategioptimaliseringsskript er flaskehalsene: Hver strategisimulering er sakte på grunn av looping over times (eller datoer eller ticks). Vi må simulere strategien mange ganger i hver DE iterasjon. Vi driver mange disse DE iterasjonene som i genetisk algoritme. Med andre ord, hvis du prøver å kode opp ovennevnte pseudokode i MatlabR, kan det ta flere dager å komme opp med resultater. Hvis din handelsstrategi fungerer med tick-by-tick-data, så er det håpløst. For å øke prosessen, kan vi kjøre differensial evolusjonalgoritmen parallelt på et rutenett. MatlabR lar deg parallellisere koden din. Imidlertid har jeg aldri sett noen kvantstrengere som skriver parallell MatlabR-kode. Selv om de ønsket å gjøre det, forstod få, om noen, multi-threaded samtidig programmering for å få koden riktig. I tillegg kan vi bare flytte fra MatlabR til noen virkelige programmeringsspråk, f. eks. CCJava. Overholdt kode kjører alltid raskere enn skript. (Vennligst Ingen VBA. Bare ledere bruker det) Algo Quant adresserer handelsstrategiens optimaliseringsproblem ved å aktivere enkel koding av en kompleks handelsstrategi i Java. For å kode en strategi setter en quanttrader enkelt komponenter sammen, f. eks. signaler, matematikk, hendelseshåndterere, fra biblioteket. Optimaliser en strategi eller portefølje ved å kjøre differensial evolusjonsoptimaliseringsalgoritmen parallelt. Jeg demonstrerer Algo Quantys ytelse ved hjelp av en enkel, glidende gjennomsnittsovergangsstrategi. Denne strategien opprettholder to bevegelige gjennomsnitt, et raskt bevegelige gjennomsnitt og et langsomt gjennomsnittsnivå. Når det raske bevegelige gjennomsnittet krysser det sakte glidende gjennomsnittet underfra, går vi inn i en lang posisjon når det raske bevegelige gjennomsnittet krysser det sakte glidende gjennomsnittet fra oven, vi går inn i en kort posisjon. Det er teoretiske og empiriske bevis som viser at både de raske og sakte bevegelige vindustørrelsene ikke bør være for store. Se Haksuns kursnotatforelesning 6. De fleste handelsfolk velger de raske og sakte flyttbare vindustørrelsene ved 1) gjetting, 2) hearsay, 3) backtesting (med noen flere eller mindre tilfeldig utvalgte parametere) i Bloomberg. Noen forhandlere kalibrerer regelmessig ved å oppdatere parametrene. La oss først prøve hearsay tilnærming. Et populært valg er (50, 200). Jeg simulerer denne strategien som handler om S038P 500 futures, VFINX, fra 200011 til 2011531 med Yahoo-dataene. Kildekoden er her. Her genereres P038L med Algo Quant. Vi har: pnl 50.4 sharpe 0.080829 omega 1.285375 Det er ingen grunn til at (50, 200) er det optimale parametersettet eller at det til og med fungerer i det hele tatt. Intuitivt, hvis vi periodisk oppdaterer paret (mer fleksibilitet), kan vi potensielt generere en bedre P038L. For eksempel handler jeg denne Simple Moving Average Crossover-strategien ved å bruke de optimale parametrene Dynamisk kalibrert hver 3. måned ved å bruke dataene de siste 12 månedene. For objektivfunksjonen for å bestemme optimalitet bruker jeg omega. Kildekoden er her. Som forventet genererer denne dynamisk kalibrerte strategien (mye) bedre P038L enn den statiske strategien ved hjelp av tilfeldig gjette parametere. Vi har: pnl 106.65 sharpe 0.309824 omega 2.816514 Med hensyn til ytelse (databehandlingstid) tok det 32,5 minutter (1954877 ms) for å fullføre simuleringen i 10 og et halvt år på arbeidsstasjonen min (dual E5520 2.27GHz) med 12 GB minne. (Som en side notat, bruk av den andre parallelle Brute Force algoritmen tok bare 6,6 minutter eller 395334 ms.) Vår parallelle differensial evolusjon algoritme opprettholder et basseng på 16 parameter sett. I hver av de 80 iterasjonene kjører jeg 16 simuleringer parallelt, en i hver kjerne. Bildet viser at datamaskinen min jobber hardt, og bruker alle ressursene til å søke etter de historisk optimale parametersettene. Å gjenta denne simuleringsprosedyren i MatlabR kan trolig ta dager, om ikke for alltid. Som ansvarsfraskrivelse hevder jeg ikke at denne dynamisk kalibrerte SMA2Crossover-strategien genererer alfa på S038P500-fremtiden. Faktisk skjedde jeg bare å velge (f 3, L 12) ved en tilfeldighet. Mitt poeng er å sammenligne Algo Quants ytelse av parallell differensial evolusjonen på strategisk optimalisering til MatlabRs. 5 Kommentarer Quant Trader på 2011-05-31 klokka 5:11 pmGap-on-Open Lønnsom Trading Strategy 5 august 2014 av Pawel Etter en lengre tid er QuantAtRisk tilbake til virksomheten. Som en allmennhandler har jeg alltid vært fristet til å teste en åpen tradingstrategi. Det var ulike grunner som sto bak det, men den mest populære ble alltid omtalt: godbad nyheter på lageret. Og hva aksjekursen skyrocketed ned på de følgende dagene. Når vi nærmer oss slike prismønstre, snakker vi om utløsere eller utløste hendelser. Kjernen i algoritm8217s aktivitet er utløseridentifikasjonen og tar riktige handlinger: å gå lang eller kort. Det er det. I begge tilfeller ønsker vi å tjene penger. I dette innlegget vil vi designe de første betingelsene for vår åpen tradingstrategi som fungerer som utløsere, og vi vil finne tilbake til et realistisk scenario for å satse på pengene våre på de aksjene som åpnet høyere på neste handelsdag. Målet vårt er å finne den mest optimale holdingsperioden for slike næringer lukket med fortjeneste. Vår strategi kan backtestes ved hjelp av en N-eiendomsportefølje. Her, for enkelhet, la oss bruke en tilfeldig delmengde på 10 aksjer (portfolio. lst) som en del av en gjeldende Dow Jones-indeks: AXP CSCO DIS IBM JNJ KO NKE PG UTX XOM I Matlab henter vi aksjekursene fra Google Finance data leverandør tilgjengelig via Quandl8217s Matlab API (se dette innlegget for oppsett i Matlab). Vi begynner å skrive vår viktigste backtesting-kode som følger: Gap på Open Trading Strategy Hent aksjekurser via Quandl og Strategy Backtesting (c) 2014 av Pawel Lachowicz, QuantAtRisk fjerne alt nær alle clc fnameportfolio. lst Modeller parameter 1 (år) parm11 ndaysparm1365 ldaydatenum ( 2014-08-05) henter lagerdata Top, Thp, Tlp, Tcp, N, ntdaysFetchQuandl (fname, ndays, lday) hvor vi bruker en forhåndsdesignt funksjon av FetchQuandl for å importere 4 separate prisserier av hver stock8217s åpen (Topp ), høy (Thp), lav (Tlp) og nær (Tcp) daglige priser: funksjon Topp, Thp, Tlp, Tcp, N, ntdaysFetchQuandl (fname, ndays, lday) Les listen over Dow Jones-komponenter fileID fopen ) tmp textscan (fileID, s) fclose (fileID) componentstmp en liste som en celle array Les i listen over tickers og interne koder fra Quandl xlsread (QuandlStockCodeListUS. xlsx) quandlctext (: 1) igjen, som en liste i en celle array quandlcodetext (:, 3) tilsvarende Quandls Price Code hente lagerdata for siste ndays date2datest r (lday, yyyy-mm-dd) fra date1datestr (lday-ndays, yyyy-mm-dd) til Rop Tcp skann alle ticker og hent dataene fra Quandl for i1: lengde (komponenter) for j1: lengde (quandlc) hvis (strcmp (komponenter, quandlc)) fprintf (4.0f sn, i, quandlc) fts0 fts, headersQuandl. get (quandlcode, type, fints. authcode, PutHereYourQuandlCode. startdato, dato1, sluttdato, dato2) cpfts2mat (fts. Close, 1) Tcp cp nær prisserie opfts2mat (fts. Open, 1) Topp på åpne prisserier hpfts2mat (fts. High, 1) Thp hp høy pris lpfts2mat fts. Low, 1) Tlp lp lav pris Rcp cp (2: ende, 2).cp (1: ende-1,2) -1 retur-serie cp ende ende ende Nlength (komponenter) ntday lengde (Tcp) ende Vennligst merk som i linje 12 angav vi antall år, det vil si hvor langt vår backtest skal forlenges bakover i tid (eller antall kalenderdager se linje 13) fra dagen spesifisert i linje 14 (siste dag). La oss først utforme handelsstrategien. Vi skanner samtidig fire prisserier for hver bestand separat. Vi definerer strategi8217s utløser som følger: dersom en aksjekurs åpen pris på dag t var høyere enn nært pris på dagen t-1 og de laveste prisene på dag t var høyere enn den høyeste prisen på dag t-1. Å ha det, gjør vi en KJØP LANG beslutning Vi kjøper den aksjen neste dag til markedsprisen (nær pris). Denne tilnærmingen bør eliminere slippspenningen effektivt (se mer på slippe i børshandel her). Nå kjører vi backtest på hver lager og hver åpen handel. Vi velger den andre parameteren (parm2) for å være et antall dager, det vil si hvor lenge vi holder aksjen. I følgende kodestykke, la oss tillate å selge aksjen etter 1 til 21 kalenderdager (pm helg eller helligdagsperiode): forhåndsdefinert matrise for backtest-endelige resultater resultater for parm20: 20 cR for i1: N bare for Formålet med å plotte prisserier hvis (i1) åpen (blå farge) plot (Topp (: 1), Topp (: 2),) hold nære (rød farge) plot (Tcp (: 1) Tcp (:, 2), r) hold på høy (grønn farge) plot (Thp (: 1), Thp (: 2), g) xlabel (Days) ylabel (AXP-aksjekursene US) ende Tbuy for t2: ntdays definere indikatorer ind1Tcp (t-1,2) cp på (t-1) dag ind2Thp (t-1,2) hp på (t-1) dag ind3Top (t, 2) opp på (t) dag ind4Tlp , 2) lp på (t) dag detektere utløseren hvis (ind1ltind3) ampamp (ind2ltind4) plotting bare for AXP hvis (i1) holder på plott (Top (t, 1), Top (t, 2), o) sluttdato for en utløser tdayTop (t, 1) nextbusdatebusdate (tday, 1) finne neste handelsdato TbuyTbuy nextbusdate endeend Tsellbusdate (Tbuyparm2,1) Her i linjer 57 og 60 konstruerte vi tidsarbeider som lagret fysisk informasjon på disse dagene. Nå vil vi bruke dem til å sjekke prisen på trade8217s åpne og lukke og oppnå fortjeneste og tap for hver bestand: R for k1: lengde (Tbuy) jfind (Tbuy (k) Tcp (: 1)) pbuyTcp (j, 2) ) jevn (Tsell (k) Tcp (: 1)) psellTcp (j, 2) ret (psellpbuy-1) avkastning per handel RR ret-ende kompRprod (R1) -1 sammensatt avkastning per lager cRcR compR sluttresultatresultater cR ende indre løp (linjer 24 til 75, dvs. sporing av et antall aksjer i porteføljeindeksen jeg, her 1 til 10) vi fanger opp alle handler per aksje (linjer 63-70) og beregner en flerårig sammensatt retur (linje 72) som om Vi handlet denne aksjen utelukkende ved hjelp av vår modell. For eksempel, for lager i1 (AXP) fra vår portefølje, viser koden vår 1 års prisserie: hvor dager som møter utløserkriteriene våre, er merket med åpne sirkelmarkører. Hvis du nå kjører backtestet, gjør du en forsiktig utskiftning i linje 24: Vi kan finne det ved å løpe gjennom noen ekstra linjer med kode som definert: figur (2) stem ((0:20), 100resultater) xlabel ( Holdbarhetsdager) ylabel (AXP: Compound Return) vi får et tiltalende resultat: Diagrammet viser at for AXP, i løpet av de siste 251 dagene (siden Aug4 2014 bakover) hadde vi 16 utløsere derfor 16 handler og overraskende, uansett holdingsperiode , den sammensatte avkastningen fra alle lukkede bransjer var svært positiv (lønnsom). Dette er ikke tilfellet hvis vi vurderer for eksempel i4, IBM-lager: Dette resultatet peker på at visse ekstra handelsindikatorer bør brukes for å begrense tapene (for eksempel resultatmål) for ulike holdingsperioder (og forskjellige aksjer selvfølgelig). Hvis vi handlet en hel portefølje ved hjelp av vår gap-on-open-modell, ville vi ende opp med svært oppmuntrende resultat: hvor for hver holdingsperiode viste vi gjennomsnittet over 10 aksjer sammensatt avkastning. Med tanke på den globale oppveksten på de amerikanske aksjemarkedene mellom august 2013 og 2014, er denne strategien verdt å vurdere med eventuelle ytterligere modifikasjoner (for eksempel å vurdere korte eller både lange og korte utløsere, FX-tidsserier, etc.). Noen klok sa en gang: Noen ganger vinner du. Noen ganger lærer du. I algo trading lærer vi alle å vinne. I neste post8230 marginal verdi-til-risiko for porteføljeforvaltere ønsker å lære mer om porteføljer i MATLAB Klikk her Om grunnleggeren Pawel Lachowicz, PhD. Kvantitativ Risiko Analyst av Bank of New York Mellon. Digital Signal Processing Expert. Dataforsker. Blockchain entusiast. Python Advocate. Skribent og fotograf. Reisende og tunnelbanekonkurrent. Basert i Wroclaw, Polen. For profesjonelle henvendelser ikke nøl med å kontakte meg direkte. Følg QaR på nettet

Comments

Popular posts from this blog

Vellykket Forex Tradere In Singapore

Navn bare en vellykket forex handelsmann. Ble med jul 2006 Status: ubrukelig, hjerneløs, stalking troll 816 Innlegg Ditt spørsmål er ikke mulig å svare. Jeg tviler på at det er noen handelsmenn der ute som vi har hørt om. Soros, Rogers etc som har handlet eller for tiden handler valutaer (for det meste ved å kortslutte USD) utelukkende. De handler også futures, aksjer mm. Heck, jeg handler tre markeder og jeg har knapt nok til dag handel aksjer. Jeg kan ikke forestille seg markedene og investeringene disse menneskene spredte seg i. Det er verter av nettsteder der ute som har kvoteforvaltere som sier at de handler forex. Stoler du på dem nok med pengene dine for å finne ut om de er for ekte eller vellykket av dine ord jeg er ikke. Selv om noen fortalte meg at de var gode, eller de var på en hedgefondsliste med en min. Investering på 100.000 med år med historie ville jeg fortsatt ikke stole på dem. Det var en liste med den måten som uttalt at markedene ble omsatt, flere var utenlandsk va...

Online Trading Kotak Verdipapirer Ltd

Kotak Securities Stock Trading, Demat, Brokerage og Anmeldelser 2017 Kotak Securities Ltd, et datterselskap av Kotak Mahindra Bank ble grunnlagt i 1994. De tilbyr aksjemeglingstjenester og distribuerer finansielle produkter i India. De har 1209 grener, franchisetakere og satellittkontorer tilbyr tjenester til 11.95 Lakh kunder. De selskapsledere med Bombay børs og National Stock Exchange. De er også en innskuddspartner med National Securities Depository Limited (NSDL) og Central Depository Services Limited (CDSL). Kotak-verdipapirer tilbyr tre-i-ett-kontoer som gjør det mulig for investor å åpne demat, handel samt en bankkonto sammen med Kotak Mahindra Bank Limited. Man kan åpne kontoen selvstendig eller samtidig under en paraply med et enkelt søknadsskjema. Bruk av 3 i 1 konto klient wonrsquot må manuelt overføre penger til trading konto fra banken f. account. De nødvendige midlene krediteres automatisk. Så det er lett å administrere. Når din konto er åpen, kan du handle i Equity, IPO...