Manuell backtestning Practicing the Art of Trading Manuell Backtestning Att öva konsten att handla av James Stanley Trading kan, liksom många andra saker i livet, förbättras med erfarenhet. Det här är ofta där nya handlare misslyckas. När de förstår detta faktum ser de på en mycket enkel förhandling. ldquoIs lär mig att handla lönsamt värt min timerdquo Själv och många andra handlare skulle (eller kanske mer exakt lsquohaversquo) svara på en emphatic lsquoYesrsquo på den frågan och började en inlärningsprocess för att få våra resultat till den punkt som vi vill ha. Men inte alla skulle vara i den båten. Det svåra med erfarenhet när handel är det faktum att samma erfarenhet kan kosta oss pengar. Under åren hörde Irsquove många flippantly hävdar lsquoah, thatrsquos din undervisning till markets. rsquo Och det kan vara fallet. Men det finns andra sätt att tjäna erfarenhet i spekulationens ålder. Korn - och rishandlare, de ursprungliga skaparna av teknisk analys, skulle anställa ett element av lsquopaperhandel, rsquo för att spåra hypotetiska vinster eller förluster för de strategier som de handlar om. Detta är i likhet med demohandel idag ett sätt att vi kan testa våra teorier och strategier på marknaden utan ekonomisk risk. Är detta exakt detsamma som att handla live, nej, för det finns inte en likviditetsleverantör i den andra änden av din handel som utför ACTUAL-utförande men det kan ge mig möjlighet att testa mina strategier i en dynamisk miljö. Nackdelen med demohandel eller demotestning av en strategi är det faktum att det kan ta lång tid att få tillräckligt med resultat för att bestämma mina strategier konsistens. Om jag vill testa en strategi på ett dagligt diagram kan det ta mig ett helt år bara för att placera några affärer. Och efter dessa få branscher, Irsquom, är det inte säkert Irsquod är tillräckligt bekväm med strategin att använda den live (trots allt, bara ett fåtal handlar placerade, hur vet jag om detta var en anomali eller ej). Det är här manuell backtestning kan komma i spel. Detta är ett sätt att simulera en levande marknadsmiljö med dynamiska priser. Itrsquos viktigt att notera alla backtester som vi utför, manuellt eller automatiserat, lider av en enstaka dragning och det är det faktum att tidigare prestanda inte nödvändigtvis kommer att replikera sig på det sättet framåt. Men det är inte meningen med det manuella backtestet. Anledningen till att jag gör testet är att träna mig själv med hjälp av verktygen i den strategi som testas, så att jag kanske vet hur man effektivt använder anslaget. Jag kan göra detta på vilken tid som helst, med valfritt valutapar och nästan vilken strategi jag handlar. Steg 1: Klä på diagrammet Det första steget när manuell backtest är att klä våra diagram över de indikatorer som vi ska använda i den strategi som vi testar. För denna illustration kommer Irsquom att använda en 89-årig EMA och en 13-årig CCI. Efter att ha klättat på klädet är vi redo att fortsätta. Skapat av James Stanley Steg 2: Ta ett steg tillbaka i tiden När vi har klädt på vårt diagram måste vi gå till en tidigare period på diagrammet. Här är att jag vill vara obekant av prisåtgärder för den testade perioden. Jag vill att priserna ska vara så nära dynamiken på en verklig marknad som möjligt. Jag vill att detta ska vara oförutsägbart. För att göra detta kan jag helt enkelt klicka och dra tillbaka i tid för att komma till ett tidigare datum på diagrammet. Skapad av James Stanley Steg 3: Gå framåt i tid Denna funktion är mycket fördelaktig för handlare som gör en hel del manuella backtest, men ofta okända för många. Detta har att göra med lsquoforward, rsquo och lsquobackwards, rsquo pilar på ditt tangentbord. Om jag ville gå tillbaka 1 timme, kan jag helt enkelt trycka på lsquobackwards-pilen, rsquo en gång. Om Irsquom testar på ett 4-timmarsdiagram, kan dock 1 tryck på piltangenterna framåt eller bakåt motsvara framåt eller bakåt 4 timmar i taget. Det här är en extremt bekväm funktion som gör att jag kan korsa ett stort avstånd på diagrammet på kort tid. Vid denna tidpunkt vill jag gå framåt på diagrammet tills jag hittar en handel som uppfyller mina kriterier. När jag gör det, ska jag pausa och jag är redo att fortsätta till steg 5. Steg 4: Spela in resultaten Detta steg kan avvika mellan näringsidkare till näringsidkare baserat på stil och sätt att hålla in. Jag uppmanar alla nya handlare eller de som är nya för manuell backtest att skriva ned varje av dessa handlar om det är en journal, ett kalkylblad eller en handelslogg. Några viktiga uppgifter finns här: Var skulle du placera ditt stopp Var skulle du vilja ta vinst? Du kan spela in all denna information, liksom eventuella andra observationer du har gjort. Efter några affärer kommer du att ha några bitar av information du kan använda för att sedan göra strategin effektivare för dina mål. Steg 5: Skölj och upprepa När vi har hittat en hypotetisk handel, kan vi på den tiden gå vidare framåt för att få en uppfattning om hur det kan ha fungerat. Återigen kan vi spela in dessa resultat i våra tidskrifter. Då kan vi gå vidare till nästa handel. Vi kan fortsätta att göra detta tills vi känner komforten och erfarenheten av strategin att gå vidare till nästa teststeg. För vissa handlare som testar med mindre saldon, tar andra språnget direkt i levande marknader, medan andra, som jag själv, kommer att testa strategin på ett demokonto med levande dynamisk prissättning. --- Skrivet av James B. Stanley För att kontakta James Stanley, kan du följa James på Twitter JStanleyFX. DailyFX ger forex nyheter och teknisk analys om de trender som påverkar de globala valutamarknaden. Hur kan jag backtest strategier Kan du berätta för mig hur kan jag backtest mina strategier Jag vet inte hur man kodar Experter i MT. Finns det något annat sätt som tillåter mig att se backtesting resultat PL. Tack för hjälpen killar, cheers backtest. backtest. och backtest. alltid gör vi backtest. men priset bryr sig inte med denna backtest. för när du gör tillbaka med stapeln och hittar lite av poängen av dina indikatorer ändrar du dem snart för att få priset inskränkt. Det kommer att vara i det förflutna området. och du säger nu det är bra jag kommer att fortsätta det är ok. men när du börjar hittar du en annan punkt som orsakar förluster. och du kommer att ändra igen. priset bekräftar inte med packningstest. det bekänner sig själv. det finns inget som kommer att regera priset. annars är din tikanalysanalys. men du kan vara beroende av indikatorerna för att se var du är. få läget av priset av dem. analysera. men din TRGT. och få dina pips. Låt oss föreställa oss att vi fick en expertindikator och gjorde en backtest. och vi fann det bra. och alla handlare har börjat använda den. och öppnade samma slags position. tror du att priset kommer att gå såväl som näringsidkarens önskemål. Strategi Backtesting-plattformar Till den tiden testar jag för närvarande flera mjukvarupaket för backtesting strategier för att välja det bästa som ska användas för ett stort projekt. Jag måste säga att jag har varit borta från sådana detaljer under de senaste 2-3 åren och jag är säker på att min information är föråldrad och jag behöver en uppdatering från experterna här som använder de nuvarande mjukvarupaketen och deras erfarenheter. Jag testar genom att följa följande paket just nu (Så snälla om du har några synpunkter på någon av dem, skulle det vara mycket uppskattat att skicka ett detaljerat svar): 1- Matlab 2- Trading Blox 3- MultiCharts 4- Trade Station 5- AmiBroker 6- NinjaTrader Nu vet jag att de flesta av de nämnda paketen och plattformarna är främst detaljhandel och de kommer att vara lika bra som detaljhandeln för alla nivåer, men jag är också öppen för institutionella paket om någon medlem här har en tidigare erfarenhet av en (bara för att klargöra, institutionella paket betyder plattformar som används av hedgefonder eller stötfack i stora banker). Inget tal om MT (Metatrader) eller Metastock snälla, eftersom jag inte kommer att använda någon av dem. MT använder viss variation av C och jag är inte villig att lära C eftersom jag inte har tid. Metastock, jag har redan försökt och jag måste säga sin skräp, väldigt grundläggande, begränsad och mycket begränsad, så det passar inte ens en detaljhandeln. Jag har använt Matlab tillbaka i mina gamla tekniska dagar och jag måste säga att det är ett mycket användbart verktyg, men det kommer att kräva mycket kodhantering och jag försöker minimera kodningen så mycket som möjligt. Här är vad jag letar efter i backtesting-plattformen, så om du redan har upplevt detta i någon av ovanstående eller i en annan plattform som inte nämns, är din feedback mycket uppskattad: 1- Plattformen måste vara exakt, exakt och realistisk som möjligt i backtesting, dvs backtesting strategier så nära som möjligt för verkligheten 2- Systemdesign och konstruktion måste vara så flexibla som möjligt, så att alla komponenter och villkor kan skapas och med möjlighet att länka dessa komponenter tillsammans, dvs paketet måste erbjuda möjlighet till komponentberoende. När man exempelvis simulerar inmatningar måste man kunna bygga reglerna för posterna baserat på eventuella villkor eller uppsättningar av villkor, beroende eller oberoende, utan att ta bort möjligheten att integrera inmatningskomponenten från andra systemkomponenter. För att klargöra detta kan vi säga att en strategi har en enkel inmatningsregel, som går lång när priset korsar över 20-EMA med 1 på en intradag, men om de tre senaste på varandra följande affärerna förlorat pengar, bör ingångsregeln korsa över 20-EMA med 1,35 i stället och om de senaste 2 på varandra följande traderna var vinnare med i genomsnitt 15 vinst eller mer, bör ingångsregeln passera över 20-EMA med endast 0,5. Jag hoppas att du fick min poäng. Detsamma gäller inte bara ingångsregler, utan också att stoppa förlustutgångar och vinstutgångar. 3- Positionskonfigurationskomponenter kan konstrueras med några olika villkor eller regler. Till exempel, om jag behöver positionsstorleksanpassningen för att vara dynamisk baserat på procentuell skillnad mellan priset och en 250-EMA, måste jag kunna göra detta, var 100 av den position som ska tas när priset är överbeloppet 250 - EMA med 1 och positionsstorlek minskar stegvis med 10 för varje 1 steg bort från 250-EMA i båda riktningarna. Nålar för att säga att positionering av anpassad formelberäkning måste stödjas och jag måste ha möjlighet att använda data från kapitalkurvan seriellt för att dynamiskt ändra positionens storlek på nästa affär. En annan mycket viktig sak i att stödja positionsstorleksberäkningar är att kunna använda de beräknade sannolikheterna från resultaten vid en viss punkt för att justera positionsstorleksanpassningen enligt en formel. Som ett exempel kan vi säga att jag kommer att använda en viss positioneringsformel för de första 100 branscherna och sedan baseras på kontovärdet efter de 100 branscherna och fördelningen av de 100 branscherna, kommer jag att använda olika positioneringsformler efteråt. För att utarbeta: Om efter de första 100 branscherna växte kontorsvärdet med 30 eller mer och de första 100 branscherna var 60 vinnare och 40 förlorare, winloss-förhållandet på 2,51, jag måste ha möjlighet att använda en annan positioneringsformel i detta fall för de närmaste 100 affärer och så vidare. Huvudidén bakom detta är att när du går förändras systemförväntningen över tiden då du tar på sig fler och fler affärer, och det grundläggande begreppet är att om din förväntad system blir bättre, vill du lyfta upp din positionsstorlek och göra Det mesta av den förbättrade förväntan och om din förväntade system försvagas, måste du sänka din positionsstorlek och handla mindre eftersom när förväntan på systemet blir bättre blir du praktiskt taget mer belöningar för varje dollar du riskerar och vice versa . 4- Utförandebeskrivningsvillkor måste vara så flexibla som möjligt och mycket nära situationer i verkligheten som möjliggör en variabel eller formelbaserad glidning. Utförandet måste också stödja formler för att exakt bestämma var och hur man ska ange med hänsyn till volym och likviditet (Definieras av formler och filter). 5- Multipla systemtestning på samma gång på flera instrument måste stödjas, det vill säga om jag har 3 olika handelssystem och 100 handelsinstrument baserade på systemförhållandena, måste paketet möjliggöra backtestning av alla 3 handelssystem bland de 100 instrumenten samtidigt och handla i den ordning de kommer utifrån reglerna för de 3 systemen och kombinera sedan resultaten i en enda portfölj, som om paketet simulerar en skanning dagligen för de 100 instrumenten för att se vilket system som genererar signaler och utföra signalerna baserat på systemprogrammerade förhållanden och så vidare hantera flera positioner samtidigt tid 6- Rapportering och testning av resultat måste vara omfattande och exportabel för att kunna excel. Grundläggande statistiska mätvärden måste inkluderas förutom lönsamheten för systemet eller kombinationen av system som testas. Aktiekurvdata måste exporteras till excel också. Den grundläggande kapitalkurvan mäter som max. drawdown och genomsnittliga månatliga drawdowns, variabilitet av avkastning och standardavvikelse för aktiekurva data etc. föredras att vara närvarande i paketet 7- Optimering för 1 eller flera variabler ska vara en del av paketet och paketet ska kunna optimera för icke-standardiserade variabler, som optimera för att uppnå min. drawdown etc. 8- Paketet måste ha möjlighet att få data antingen från realtid eller automatisk källa eller manuellt genom csv eller excel-filer. Det måste stödja fortlöpande terminskontraktdata samt optionsdata 9- Finansiella instrument som ska stödjas är aktier, optioner, terminer och OTC FX-data och fält som ska stödjas i paketdatabasen är Timestamp, open, high, low, close, volym, bud, budvolym, fråga, fråga volym, avvecklingspris och öppen ränta Slutligen, förlåt för det långa inlägget och ledsen att jag höll dig läsa allt detta. Din feedback är verkligen uppskattad. Anställd Jan 2005 Status: Glad Forum Medlem 1 152 Inlägg Tack så mycket för ditt svar och för ditt erbjudande också, mycket generös från dig. Tiden är lite begränsad här, därför lämnar jag programmeringsalternativet som den sista om jag inte hittade ett färdigt paket som är bra för det jag letar efter. Hittills, från alla de paket som jag nämnde, ser Trading Blox bra ut för det jag letar efter, inte exakt matchen, men det verkar bra, men jag kommer inte att kompromissa med kvalitet och funktioner i alla fall, men behöver fortfarande mer djupgående testning. Tack igen och kommer att hålla kontakten. Jag förstår helt vart du kommer från din första inlägg. Men jag tror verkligen att för de krav som du anger måste du ta en annan väg. Jag tror inte att det kommer att finnas något paket ut ur lådan (annat än de du nämnde) som kommer att kunna uppfylla sådana krav. Jag gör en hel del testning själv och hade behov av att backtesting många saker. Till sist skrev jag min egen backtestingprogram i c. Jag förstår att du uppgav att du inte är angelägen om att gå denna väg, men. Jag är verkligen rädd.
No comments:
Post a Comment