Friday, October 14, 2016

Hoe kan jy jou handel stelsel backtest

Back testing Wat is back testing back testing is die proses van toetsing van 'n handel strategie op relevante historiese data om sy lewensvatbaarheid te verseker voordat die handelaar's geen werklike kapitaal. 'N handelaar kan die verhandeling van 'n strategie na te boots oor 'n gepaste tydperk en die resultate vir die vlakke van winsgewendheid en risiko te ontleed. Afbreek van back testing As die resultate aan die nodige kriteria wat aan die handelaar aanvaarbaar is, kan die strategie dan geïmplementeer word met 'n mate van vertroue dat dit sal lei tot winste. As die resultate is minder gunstig is, kan die strategie verander, aangepas en geoptimaliseer om die gewenste resultate te bereik, of dit kan heeltemal geskrap word. 'N Beduidende bedrag van die volume verhandel in vandag se finansiële markte word gedoen deur handelaars wat 'n soort van rekenaar outomatisering gebruik. Dit is veral waar vir handel strategieë gebaseer op tegniese ontleding. Back testing is 'n integrale deel van die ontwikkeling van 'n outomatiese handel stelsel. Betekenisvolle back testing Wanneer jy klaar is korrek, kan back testing 'n waardevolle hulpmiddel vir die neem van besluite oor die vraag of 'n handel strategie te benut nie. Die monster tydperk waarop 'n backtest is uitgevoer op is van kritieke belang. Die duur van die monster tydperk moet lank genoeg om tydperke van wisselende marktoestande insluitend Uptrends, downtrends en-reeks gebind handel te sluit. Die uitvoer van 'n toets op slegs een tipe mark toestand kan uniek resultate wat nie goed in ander marktoestande, wat kan lei tot valse gevolgtrekkings kan funksioneer oplewer. Die steekproefgrootte in die aantal ambagte in die toetsuitslae is ook noodsaaklik. As die monster aantal ambagte te klein is, kan die toets nie statisties beduidend wees. 'N Monster met te veel ambagte oor te lank 'n tydperk kan produseer new resultate waarin 'n oorweldigende aantal wen ambagte hom verenig rondom 'n spesifieke toestand mark of tendens wat gunstig is vir die strategie. Dit kan ook veroorsaak dat 'n handelaar om misleidende gevolgtrekkings. Hou dit real A backtest moet die werklikheid om die beste moontlike mate weerspieël. Trading koste wat anders kan oorweeg weglaatbaar deur handelaars te wees wanneer individueel ontleed kan 'n beduidende impak hê wanneer die totale koste word bereken oor die hele back testing tydperk. Hierdie koste sluit in kommissies, versprei en glip, en hulle kon die verskil tussen of 'n handel strategie is winsgewend of nie bepaal. Die meeste back testing sagteware pakkette sluit metodes om verantwoording te doen hierdie koste. Miskien is die belangrikste maatstaf wat verband hou met back testing is die strategys vlak van robuustheid. Dit word gedoen deur die resultate van 'n optimale terug toets te vergelyk in 'n spesifieke voorbeeld tydperk (verwys na as in-monster) met die resultate van 'n backtest met dieselfde strategie en instellings in 'n ander monster tydperk (verwys na as buite van-monster). As die resultate is soortgelyk winsgewende, dan is die strategie kan geag geldig en robuuste te wees, en dit is gereed om in real-time markte uit te voer. As die strategie misluk in buite-monster vergelykings, dan is die strategie moet verdere ontwikkeling, of dit moet laat vaar altogether. Back-toets jou handel idees Een van die mees nuttige dinge wat jy kan doen in die ontleding venster is om rugsteunkapasiteit toets jou handel strategie op historiese data. Dit kan jy waardevolle insig in sterk - en swakpunte van jou stelsel te gee voordat 'n belegging regte geld. Hierdie enkele AmiBroker funksie is kan baie geld te spaar vir jou. Skryf jou handel reëls Eerstens moet jy objektiewe (of meganiese) reëls om te betree en die uitgang van die mark. Hierdie stap is die basis van jou strategie en wat jy nodig het om jouself te dink oor dit, aangesien die stelsel moet ooreenstem met jou risikotoleransie, portefeulje grootte, geld bestuur tegnieke, en baie ander individuele faktore. Sodra jy jou eie reëls vir die handel moet jy hulle skryf as koop en verkoop reëls in AmiBroker Formule Lanugage (plus kort en dek as jy wil ook toets kort handel). In hierdie hoofstuk gaan ons kyk na baie basiese bewegende gemiddelde kruis oor stelsel. Die stelsel sal aandele / kontrakte te koop wanneer naby prys bo 45 dae styg eksponensiële bewegende gemiddelde en sal aandele / kontrakte verkoop wanneer naby prys hieronder val 45-dag eksponensiële bewegende gemiddelde. Die eksponensiële bewegende gemiddelde kan bereken word in AFL met behulp van sy ingeboude funksie EMO. Al wat jy hoef te doen is om die insette verskeidenheid en gemiddeld tydperk spesifiseer, sodat die 45-dag eksponensiële bewegende gemiddelde van die sluiting van pryse kan verkry word deur die volgende stelling: Die noue identifikasie verwys na ingeboude verskeidenheid hou sluitingstyd pryse van die oomblik ontleed simbool . Om te toets of die beslote prys kruise bo eksponensiële bewegende gemiddelde sal ons gebruik ingeboude kruis funksie: koop kruis (naby, ema (naby, 45)) Die bogenoemde stelling definieer 'n koop handel reël. Dit gee quot1quot of quottruequot wanneer naby prys kruise bo ema (naby, 45). Dan kan ons die verkoop reël wat quot1quot sal gee wanneer teenoorgestelde situasie gebeur skryf - naby prys kruise hieronder ema (naby, 45): verkoop kruis (ema (naby, 45), naby) Let asseblief daarop dat ons met behulp van dieselfde kruis funksie, maar die teenoorgestelde volgorde van argumente. So volledige formule vir 'n lang ambagte sal lyk: koop kruis (naby, ema (naby, 45)) verkoop kruis (ema (naby, 45), naby) NOTA: Om nuwe formule skep asseblief oop Formule Editor gebruik van analise-gtFormula Redakteur menu, tik die formule en kies Tools-gtSend om kieslys in formule redakteur back-toets jou stelsel kliek net op die Terug toets knoppie in die outomatiese analise venster. Maak seker dat jy in die formule wat bevat ten minste te koop en te verkoop handel reëls (soos hierbo aangedui) getik. Wanneer die formule korrek is AmiBroker begin die ontleding van jou simbole volgens jou handel reëls en stel 'n lys van gesimuleerde ambagte. Die hele proses is baie vinnig - jy kan back-toets duisende simbole in 'n kwessie van minute. Die venster vordering sal jou wys verwagte voltooiingsdatum tyd. As jy wil hê dat die proses te stop wat jy kan net kliek op die knoppie Kanselleer in die vooruitgang venster. Wanneer die proses afgehandel is die lys van gesimuleerde ambagte word in die onderste deel van outomatiese analise venster. (Die paneel Resultate). Jy kan kyk wanneer die koop en verkoop seine net plaasgevind deur dubbel te kliek op die handel in ruit Resultate. Dit sal jou rou of ongefiltreerde seine te gee vir elke maat toe te koop en te verkoop voorwaardes voldoen word. As jy wil net enkele handel pyle (die opening en sluiting huidiglik gekose handel) sien moet jy dubbel kliek op die lyn, terwyl die hou SHIFT-sleutel ingedruk. Alternatiewelik kan jy die tipe vertoning te kies deur toepaslike item te kies uit die konteks kieslys wat verskyn wanneer jy op die paneel resultate met 'n regter muis knoppie. Benewens die lys resultate wat jy kan baie gedetailleerde statistieke oor die prestasie van jou stelsel te kry deur te kliek op die verslag knoppie. Om uit te vind meer oor verslag statistieke gaan jy na die verslag venster beskrywing. Die verandering van jou rug toetsing instellings Terug toets enjin in AmiBroker gebruik sommige gedefinieerde waardes vir die uitvoering van sy taak insluitend die portefeulje grootte, periodisiteit (daagliks / weekliks / maandeliks), bedrag van die kommissie, rentekoers, maksimum verlies en wins teiken stop, tipe ambagte, prys velde en so aan. Al hierdie instellings kan verander word deur die gebruiker met behulp venster instellings. Na die verandering van die instellings Onthou asseblief om u terug toets weer loop as jy wil die resultate te wees in harmonie met die instellings. Byvoorbeeld, om toets terug op weeklikse bars in plaas van die daaglikse kliek net op die knoppie Stellings kies Weekliks van Periodisiteit combo box en kliek OK. dan is jou ontleding wat deur Terug kliek toets. Voorbehou veranderlike name Die volgende tabel toon die name van gereserveerde veranderlikes wat gebruik word deur outomatiese Analyser. Die betekenis en voorbeelde op die gebruik van hulle is later in hierdie hoofstuk gegee. Laat beheer dollar bedrag of persentasie van portefeulje wat belê in die handel (sien onder verduidelikings) Outomatiese Ontleding (nuut in 3.9) Tot nou toe het ons redelik eenvoudig gebruik van die rug tester bespreek. AmiBroker, ondersteun egter veel meer gesofistikeerde metodes en konsepte wat later bespreek sal word in hierdie hoofstuk. Neem asseblief kennis dat die beginner gebruiker eers 'n bietjie moet speel met die makliker onderwerpe hierbo beskryf voordat u verder gaan. So, wanneer jy gereed is, kan jy 'n blik op die volgende onlangs bekend gestel is kenmerke van die back-tester: a) AFL script gasheer vir gevorderde formule skrywers b) verbeterde ondersteuning vir 'n kort ambagte c) die manier om orde uitvoering prys van die beheer script d) verskillende soorte stop in terug tester e) posisie sizing f) deur baie grootte en merk grootte g) margerekening h) back testing termynmark AFL script gasheer is 'n gevorderde onderwerp wat gedek word in 'n aparte dokument beskikbaar hier en ek sal nie bespreek dit in hierdie dokument. Oorblywende funksies is baie meer maklik om te verstaan. In die vorige weergawes van AmiBroker, as jy wou back-toets stelsel met behulp van beide lang en kort ambagte, jy kan net simuleer stop-en-omgekeerde strategie. Wanneer lang posisie gesluit is 'n nuwe kort posisie immediatelly geopen. Dit is as gevolg koop en verkoop voorbehou veranderlikes gebruik vir beide tipes ambagte. Nou (met weergawe 3,59 of hoër) is daar aparte voorbehou veranderlikes vir die opening en sluiting lang en kort ambagte: koop - quottruequot of 1 waarde open lang handel verkoop - quottruequot of 1 waarde sluit lang handel kort - quottruequot of 1 waarde open kort handel cover - quottruequot of 1 waarde sluit kort handel Som om back-toets kort ambagte wat jy nodig het om kort en dekking veranderlikes toeken. As jy stop-en-omgekeerde stelsel gebruik (altyd op die mark) net verkoop toewys aan kort en koop te dek kort verkoop dekking te koop Dit simuleer die manier vooraf 3,59 weergawes gewerk. Maar nou AmiBroker in staat stel om afsonderlike handel reëls het om uit te gaan 'n lang en vir 'n kort gaan soos in hierdie eenvoudige voorbeeld: // lang ambagte toegang en uitgang reëls: koop kruis (CCI (), 100) verkoop kruis (100, CCI () ) // kort ambagte toegang en uitgang reëls: kort kruis (-100, CCI ()) dek kruis (CCI (), -100) Let daarop dat in hierdie voorbeeld as CCI is tussen -100 en 100 jy is uit die mark. Die beheer van handel prys AmiBroker bied nou 4 nuwe voorbehou veranderlikes vir die spesifiseer van die prys waarteen koop, verkoop, kort en dekking bestellings uitgevoer word. Hierdie skikkings het die volgende name: buyprice, sellprice, shortprice en coverprice. Die belangrikste aanwending van hierdie veranderlikes is beheer handel prys: BuyPrice IIF (dayofweek () 1, HIGH, BESLOTE) // op Maandag te koop teen 'n hoë, anders koop op noue So jy die volgende werklike stop-bestellings na te boots kan skryf: BuyStop. die formule vir buy stop vlak SellStop. die formule vir verkoop stop vlak // As enige tyd gedurende die dag styg bo buystop vlak (highgtbuystop) // die koop orde plaasvind (op buystop of lae ook al die hoogste is) Koop Kruis (High, BuyStop) // As enige tyd gedurende die dag pryse val onder sellprice vlak (lae LT sellstop) // die verkoop orde plaasvind (op sellstop of hoë ookal laer is) verkoop Kruis (sellPrice, sellStop) BuyPrice Max (BuyStop, laag) // maak seker buy prys nie minder as lae SellPrice min (SellStop, High) // maak seker verkoopprys bereken nie groter as 'n hoë Neem asseblief kennis dat AmiBroker presets buyprice, sellprice, shortprice en coverprice verskeidenheid veranderlikes met die waardes omskryf in venster toets instellings stelsel (sien onder), sodat jy kan maar nie nodig om dit te definieer in jou formule. As jy dit nie hulle definieer AmiBroker werk as in die ou weergawes. Tydens back-toets AmiBroker sal kyk of die waardes wat jy aan buyprice, sellprice, shortprice, coverprice pas in 'n hoë-lae reeks gegee bar. Indien nie, sal AmiBroker dit aan te pas by 'n hoë prys (indien prys verskeidenheid waarde is hoër as hoog) of om die lae prys (indien prys verskeidenheid waarde is laer as laag) Wins teiken stop Soos jy hierbo kan sien in die prentjie, nuwe instellings vir wins teiken punte is beskikbaar in die venster stelsel toets instellings. Wins teiken stop uitgevoer word wanneer die hoë prys vir 'n gegewe dag exceedes die stop vlak wat gegee kan word as 'n persentasie of punt toename van die koopprys. By verstek stop uitgevoer op prys dat jy definieer as die verkoop verskeidenheid (vir 'n lang ambagte) of dekking prys verskeidenheid (vir 'n kort ambagte). Hierdie gedrag kan verander word deur gebruik te maak van quotExit by stopquot funksie. quotExit by stopquot funksie As jy merk quotExit by stopquot boks in die instellings van die stop by presiese stop vlak sal uitgevoer word, dit wil sê as jy wins teiken stop by 10 jou stop en die koop prys is 50 aftrekorder sal uitgevoer word op 55 selfs al definieer jou verkoopprys bereken verskeidenheid bevat verskillende waarde (byvoorbeeld sluitingsprys van 56). Maksimum verlies stop werk in 'n soortgelyke wyse - dit uitgevoer word wanneer die lae prys vir 'n gegewe dag val onder die stop vlak wat gegee kan word as 'n persentasie of punt toename van die koopprys Hierdie soort stop gebruik word om winste te beskerm as dit voorbeeld van jou handel so elke keer as 'n posisie waarde van 'n nuwe hoë bereik, is die volgkeerverlies geplaas op 'n hoër vlak. Wanneer die wins daal onder die sleep stop vlak die posisie is gesluit. Hierdie meganisme is in die onderstaande prent (10 sleep stop getoon): / 'n monster lae-vlak implementering van Wins-teiken stop in AFL: / Koop Kruis (MACD (), Signal ()) vir (i 0 i LT BarCount i) indien (priceatbuy 0 Koop i) priceatbuy BuyPrice ek as (priceatbuy GT 0 SellPrice Ek GT 1.1 priceatbuy) Verkoop i 1 SellPrice i 1.1 priceatbuy priceatbuy 0 anders verkoop i 0 Dit is 'n nuwe funksie in weergawe 3.9. Posisie sizing in backtester geïmplementeer deur middel van nuwe voorbehou veranderlike PositionSize ltsize arraygt Nou kan jy dollar bedrag of persentasie van portefeulje wat belê in die handel positiewe getal definieer (dollar) bedrag wat in die handel belê byvoorbeeld beheer: PositionSize 1000 / / belê 1000 in elke handel negatiewe getalle -100 ..- 1 definieer persentasie: -100 gee 100 van die huidige portefeulje grootte, -33 gee 33 van die beskikbare aandele byvoorbeeld: PositionSize -50 / altyd net die helfte te belê van die huidige aandele / dinamiese sizing voorbeeld: PositionSize - 100 RSI () as RSI wissel van 0..100 dit sal lei tot posisie afhangende van RSI waardes - gt lae waardes van RSI sal lei tot hoër persentasie belê Indien minder as 100 beskikbare kontant dan belê die oorblywende bedrag verdien rentekoers soos omskryf in die instellings. Daar is ook 'n nuwe boks in die venster AA instellings: quotAllow posisie grootte shrinkingquot - dit beheer hoe backtester hanteer die situasie wanneer dit versoek posisie grootte (via PositionSize veranderlike) beskikbare kontant oorskry: wanneer hierdie vlag is nagegaan die posisie is aangegaan met grootte shinked om beskikbare kontant as dit is verwyder van die posisie nie ingeskryf. Om werklike posisie groottes te sien gebruik 'n nuwe verslag af in venster AA instellings: quotTrade lys met pryse en pos. sizequot Vir die ou end, hier is 'n voorbeeld van Tharps ATR-gebaseerde posisie sizing tegniek gekodeer in AFL: Koop ltyour formule te koop heregt Sell 0 // verkoop slegs deur stop TrailStopAmount 2 ATR (20) Capital 100000 / BELANGRIK: Sit dit ook in die instellings: Aanvanklike Equity / risiko 0.01Capital PositionSize (risiko / TrailStopAmount) BuyPrice ApplyStop (2, 2, TrailStopAmount, 1) die tegniek kan soos volg opgesom word: die totale aandele per simbool is 100,000, het ons die risiko vlak 1 van die totale billikheid. Risikovlak word soos volg gedefinieer: indien 'n sleep stop op 'n 50 voorraad is op, sê, 45 (die waarde van twee ATR's teen die posisie), die 5 verlies word verdeel in die 1000 risiko vir 200 aandele te koop gee. So, die verlies risiko is 1000, maar die toekenning risiko is 200 aandele x 50 / share of 10000. So, ons is die toekenning van 10 van die aandele aan die aankoop, maar net waag 1000. (Edited uittreksel uit die AmiBroker poslys) Round baie grootte en interval Verskeie instrumente verhandel met verskeie quottrading unitsquot of quotblocksquot. Byvoorbeeld jy kan fraksionele aantal eenhede van onderlinge fonds te koop, maar jy kan fraksionele aantal aandele koop nie. Soms moet jy koop in 10s of 100'e baie. AmiBroker kan jy nou die blok grootte spesifiseer op globale en per-simbool vlak. Jy kan per simbool ronde baie grootte definieer in die simbool-gtInformation bladsy (pic. 3). Die waarde van nul beteken dat die simbool het geen spesiale ronde baie grootte en sal quotDefault ronde baie sizequot (globale omgewing) gebruik van die bladsy outomatiese analise instellings (pic. 1). As standaard grootte ook is ingestel op nul beteken dit dat fraksionele aantal aandele / kontrakte word toegelaat nie. Jy kan ook ronde baie grootte direk beheer van jou AFL formule gebruik te maak van RoundLotSize voorbehou veranderlike, byvoorbeeld: Hierdie instelling beheer die minimum prys beweging van gegewe simbool. Jy kan dit definieer op globale en per-simbool vlak. Soos met ronde baie grootte, kan jy per simbool interval definieer in die simbool-gtInformation bladsy (pic. 3). Die waarde van nul opdrag AmiBroker om te gebruik quotdefault regmerkie sizequot omskryf in die bladsy-instellings (pic. 1) van outomatiese analise venster. As standaard interval ook is ingestel op nul beteken dit dat daar geen minimum prys beweeg. Jy kan stel en haal die interval ook van AFL formule gebruik te maak van TickSize voorbehou veranderlike, byvoorbeeld: Let daarop dat die interval instelling slegs affekteer bedrywe opgewonde deur ingeboude stop en / of ApplyStop (). Die backtester aanvaar dat die prys data volg interval vereistes en dit nie prys skikkings deur die gebruiker verskaf verander. So spesifiseer interval sinvol net as jy 'n ingeboude stop so uitgang punte gegenereer word quotallowedquot prysvlakke in plaas van bereken kinders. Byvoorbeeld in Japan - kan jy nie breukdele van jen het sodat jy globale ticksize moet definieer om 1, sodat ingeboude stop uitgang ambagte op heelgetal vlakke. Rekening marge instelling word persentasie marge vereiste vir die hele rekening. Die standaard waarde van rekening marge is 100. Dit beteken dat jy moet 100 fondse om die handel te betree verskaf, en dit is die manier hoe backtester gewerk is in die vorige weergawes. Maar nou kan jy 'n marge rekening na te boots. Wanneer jy koop op marge jy net leen geld uit jou makelaar om voorraad te koop. Met die huidige regulasies kan jy sit 50 van die koopprys van die voorraad wat jy wil koop en leen die ander helfte van jou makelaar. Om na te boots dit net te gaan 50 in die veld rekening marge (sien foto. 1). As jou aanvanklike aandele is ingestel op 10000 sal jou koopkrag dan 20000 en jy in staat is om groter posisies betree sal wees. Neem asseblief kennis dat hierdie instellings stel die marge vir die hele rekening en dit is nie verband hou met termynkontrakte handel glad nie. Met ander woorde jy kan aandele verhandel op marge-rekening. quotReverse inskrywing sein magte exitquot boks aan die Backtester instellings. Wanneer dit OP (die verstek) - backtester werk as in die vorige weergawes en sluit reeds oop positon as nuwe inskrywing sein in die teenoorgestelde rigting teëgekom. As hierdie skakelaar af - selfs al omgekeerde sein kom backtester handhaaf tans oop handel en nie naby positon tot gereelde uitgang (verkoop of dekking) sein gegenereer. Met ander woorde wanneer die skakelaar af backtester ignoreer Kort seine tydens lang ambagte en ignoreer Koop seine tydens kort ambagte. quotAllow dieselfde kroeg uitgang (enkele bar handel) quot opsie om die instellings Wanneer dit OP (die standaard instellings) - toegang en uitgang by die einste kroeg toegelaat (soos in vorige weergawes) indien dit 'off - uitgang kan gebeur vanaf volgende bar net (dit geld vir gereelde seine, daar is 'n aparte plek vir ApplyStop-gegenereerde uitgange). Skakel dit om off toelaat om die gedrag van MS backtester wat nie in staat is om dieselfde dag uitgange hanteer voort te plant. quotActivate stop immediatelyquotThis omgewing los die probleem van die toets stelsels wat ambagte te voer op die mark oop. In weergawes aanvaar voor 4,09 backtester dat jy wou ingaan, ambagte op die mark naby so 'n ingeboude stop is geaktiveer van die volgende dag. Die probleem was toe jy in werklikheid omskryf oop prys as die handel inskrywing prys - dan dieselfde dag prysskommelings nie aktiveer die kas. Daar was 'n paar gepubliseer regstellings gebaseer op AFL-kode, maar nou is jy hoef nie om dit te gebruik. Eenvoudig as jy handel dryf op die oop jy moet merk quotActivate stop immediatelyquot (pic. 1). Jy mag vra hoekom nie net check die buyprice of shortprice verskeidenheid as dit gelyk aan die prys oop is. Unfortunatelly hierdie gewoond werk. Hoekom Net omdat daar doji dae toe oop prys gelyk aan mekaar en dan sal backtester nooit weet of handel op die mark is ingevoer oop of naby. So ons regtig nodig het 'n aparte instelling. quotUse QuickAFLquotQuickAFL (TM) is 'n funksie wat vinniger AFL berekening onder sekere omstandighede dit toelaat. Aanvanklik (sedert 2003) was dit beskikbaar vir net aanwysers, soos van weergawe 5.14 is dit beskikbaar in outomatiese analise ook. Aanvanklik was die gedagte te laat vinniger grafiek getekend deur die berekening van AFL formule net vir daardie deel wat sigbaar is op die grafiek. In 'n soortgelyke wyse, kan outomatiese analise venster subset van beskikbare aanhalings gebruik om AFL bereken, indien gekies 8220range8221 parameter minder as 8220All quotationsquot is. Gedetailleerde verduideliking oor hoe QuickAFL werk en hoe om dit te beheer, word in hierdie artikel Knowledge Base: www. amibroker / k / 2008/07/03 / quickafl / Let daarop dat hierdie opsie werk nie net in die backtester, maar ook in optimalisaties, ontdekkingsreise en scans. Backtesting: interpretasie van die verlede back testing is 'n belangrike komponent van doeltreffende handel-stelsel ontwikkeling. Dit word gedoen deur rekonstruksie, met historiese data, ambagte wat sou plaasgevind het in die verlede met behulp van reëls bepaal deur 'n gegewe strategie. Die resultaat bied statistieke wat gebruik kan word om die doeltreffendheid van die strategie te meet. Die gebruik van hierdie data, kan handelaars te optimaliseer en hul strategieë te verbeter, vind 'n tegniese of teoretiese tekortkominge, en vertroue in hul strategie te verkry voordat hulle aansoek doen dit aan die werklike markte. Die onderliggende teorie is dat enige strategie wat goed in die verlede gewerk het, is geneig om goed te werk in die toekoms, en omgekeerd, 'n strategie wat swak presteer in die verlede is geneig om swak presteer in die toekoms. Hierdie artikel neem 'n blik op wat aansoeke word gebruik om backtest, watter soort data is verkry, en hoe om dit om die data en die gereedskap back testing kan baie waardevolle statistiese terugvoer te gee oor 'n gegewe stelsel gebruik. Sommige universele statistieke back testing sluit in: netto wins of verlies - Net persentasie wins of verlies. Tydraamwerk - Past datums waarop toets ing plaasgevind. Heelal - Voorrade wat ingesluit is in die backtest. Wisselvalligheid maatreëls - Maksimum persentasie onderstebo en negatiewe kant. Gemiddeldes - Persentasie gemiddelde wins en gemiddelde verlies, gemiddelde bars gehou. Blootstelling - Persentasie van kapitaal belê (of blootgestel word aan die mark). Verhoudings - Oorwinning-tot-verliese verhouding. Geannualiseerde opbrengs - Persentasie opbrengs oor 'n jaar. Risiko-aangepaste opbrengs - Persentasie opbrengs as 'n funksie van risiko. Tipies, sal back testing sagteware twee skerms wat belangrik is nie. Die eerste kan die handelaar om die instellings aan te pas vir back testing. Hierdie veranderinge sluit alles van tyd tot kommissie koste. Hier is 'n voorbeeld van so 'n skerm in AmiBroker: Die tweede skerm is die werklike back testing resultate verslag. Dit is hier waar jy al die bogenoemde statistieke kan kry. Weereens, hier is 'n voorbeeld van hierdie skerm in AmiBroker: In die algemeen, die meeste handel sagteware bevat soortgelyke elemente. Sommige hoë-end sagteware programme sluit ook bykomende funksies outomatiese posisie sizing, optimalisering en ander meer gevorderde funksies uit te voer. Die 10 Gebooie Daar is baie faktore handelaars aandag gee aan wanneer hulle back testing handel strategieë. Hier is 'n lys van die 10 mees belangrike dinge om te onthou, terwyl back testing: Neem in ag die breë mark tendense in die tyd waarin 'n gegewe strategie is getoets. Byvoorbeeld, as 'n strategie was net backtested vanaf 1999-2000, is dit dalk nie goed vaar in 'n beermark. Dit is dikwels 'n goeie idee om backtest oor 'n lang tyd dat 'n hele paar verskillende tipes marktoestande sluit. Neem in ag die heelal waarin back testing plaasgevind. Byvoorbeeld, as 'n breë mark stelsel is getoets met 'n heelal wat bestaan ​​uit tegnologie-aandele, kan dit nie goed doen in verskillende sektore. As 'n algemene reël, indien 'n strategie is gerig op 'n spesifieke genre van voorraad, beperk die heelal aan dié genre, maar in alle ander gevalle, in stand te hou 'n groot heelal vir toetsdoeleindes. Wisselvalligheid maatreëls is uiters belangrik om te oorweeg in die ontwikkeling van 'n handel stelsel. Dit is veral waar vir aged rekeninge, wat is onderhewig aan marge oproepe as hul aandele daal onder 'n sekere punt. Handelaars moet poog om wisselvalligheid lae om risiko te verminder en in staat stel om makliker oorgang in en uit 'n gegewe voorraad hou. Die gemiddelde aantal bars gehou is ook baie belangrik om te kyk by die ontwikkeling van 'n handel stelsel. Hoewel die meeste back testing sagteware sluit kommissie koste in die finale berekeninge, dit beteken nie dat jy moet hierdie statistiek te ignoreer. As dit moontlik is, die verhoging van jou gemiddelde aantal bars gehou kan kommissie koste te verminder, en die verbetering van jou algemene terugkeer. Blootstelling is 'n tweesnydende swaard. Verhoogde blootstelling kan lei tot hoër winste of hoër verliese, terwyl afgeneem blootstelling beteken laer winste of laer verliese. Maar in die algemeen, is dit 'n goeie idee om blootstelling onder 70 om risiko te verminder en in staat stel om makliker oorgang in en uit 'n gegewe voorraad hou. Die gemiddelde-wins / verlies statistiek, gekombineer met die oorwinnings-tot-verliese verhouding, kan nuttig wees vir die bepaling van optimale posisie sizing en geldbestuur met behulp van tegnieke soos die Kelly Criterion wees. (Sien Geldbestuur Die gebruik van die Kelly Criterion.) Handelaars kan groter posisies te neem en kommissie koste te verminder deur die verhoging van hul gemiddelde winste en die verhoging van hul oorwinnings tot verliese verhouding. Geannualiseerde opbrengs is belangrik omdat dit gebruik word as 'n instrument om 'n benchmark n stelsels terug teen ander belegging plekke. Dit is belangrik om nie net te kyk na die algehele geannualiseerde opbrengs nie, maar ook om in ag te neem die verhoog of verlaag risiko. Dit kan gedoen word deur te kyk na die risiko-aangepaste opbrengs, wat verantwoordelik is vir verskeie risikofaktore. Voordat 'n handel stelsel is aangeneem, moet dit alle ander belegging plekke klop op gelyke of minder risiko. Back testing aanpassing is uiters belangrik. Baie back testing aansoeke insette vir kommissie bedrae, ronde (of fraksionele) baie groottes, merk groottes, vereistes marge, rentekoerse, glip aannames,-posisie sizing reëls, dieselfde-bar uitgang reëls, (sleep) stop instellings en nog baie meer. T o kry die mees akkurate back testing resultate, ek t is belangrik om te stem hierdie instellings aan die makelaar wat gebruik sal word naboots wanneer die stelsel gaan woon. Back testing kan soms lei tot iets wat bekend staan ​​as oor-optimalisering. Dit is 'n toestand waar prestasie resultate so hoog is ingeskakel om die verlede dat hulle nie meer so akkuraat in die toekoms. Dit is oor die algemeen 'n goeie idee om reëls wat van toepassing is op alle aandele, of 'n uitgesoekte versameling van geteikende aandele, en is nie gemaak om die mate waarin die reëls is nie meer verstaanbaar deur die skepper implementeer. Back testing is nie altyd die mees akkurate manier om die doeltreffendheid van 'n gegewe handel stelsel te meet. Soms strategieë wat goed presteer in die verlede versuim om goed te doen in die hede. Vorige prestasie is nie 'n aanduiding van toekomstige resultate. Maak seker dat jy papier handel 'n stelsel wat suksesvol backtested voor live gaan om seker te wees dat die strategie steeds van toepassing in die praktyk is. Gevolgtrekking back testing is een van die belangrikste aspekte van die ontwikkeling van 'n handel stelsel. As geskep en behoorlik geïnterpreteer is, kan dit help om handelaars te optimaliseer en hul strategieë te verbeter, vind 'n tegniese of teoretiese tekortkominge, asook vertroue in hul strategie te verkry voordat hulle aansoek doen dit aan die werklike wêreld markte. Hulpbronne Tradecision (www. tradecision) - High-end Trading System Development AmiBroker (www. amibroker) - Begroting Trading System Development. 'N Persoon wat handel dryf afgeleides, kommoditeite, effekte, aandele of geldeenhede met 'n hoër-as-gemiddelde risiko in ruil vir. quotHINTquot is 'n akroniem wat staan ​​vir vir quothigh inkomste nie taxes. quot Dit is van toepassing op 'n hoë-verdieners wat verhoed dat die betaling federale inkomste. 'N Mark outeur wat koop en verkoop baie kort termyn korporatiewe effekte genoem kommersiële papier. 'N papier handelaar is tipies. 'N bestelling geplaas met 'n makelaar om 'n sekere aantal aandele te koop of te verkoop teen 'n bepaalde prys of beter. Die onbeperkte koop en verkoop van goedere en dienste tussen lande sonder die oplegging van beperkings soos. In die sakewêreld, 'n buffel is 'n maatskappy, gewoonlik 'n aanloop wat nie 'n gevestigde prestasie record. Strategy back testing Strategie back testing is 'n noodsaaklike instrument om te sien of jou strategie werk of nie. Back testing sagteware simuleer jou strategie op historiese data en bied 'n back testing verslag, wat jou toelaat om behoorlike handel stelsel analise uit te voer. Die 64-bis weergawe kan jy soveel data te laai as wat jy nodig het vir selfs die mees veeleisende back testing. Vir tegniese inligting oor hierdie funksie blik op die verwante Wiki bladsy. Akkuraatheid is die sleutel MultiCharts is 'n oplossing wat spesifiek vir strategie-ontwikkeling en back testing. Ons filosofie is dat die strategie back testing so realisties moet wees as die moderne tegnologie maak dit moontlik - dis hoekom gebruik ons ​​multi-threading en 64-bit-tegnologie. Minimale aannames te skep meer realistiese toets Selfs al geen benadering 100 perfekte kan wees, het ons alles gedoen om akkuraat te herskep verlede marktoestande en orde uitvoering vir strategie handel. Tipiese back testing enjins het 'n baie aannames en kortpaaie, wat lei tot onrealistiese toetsing en onbetroubare resultate. MultiCharts is 'n institusionele-vlak verhandelingsplatform wat aannames verminder en is van mening baie faktore. Moderne tegnologie vir 'n kragtige rekenaars Strategie back testing moet dikwels 'n baie data en sagteware wat in staat is van die verwerking van dit. Byna al die rekenaars nou funksie multi-core setups met baie van die geheue, sodat jy nodig het om voordeel te trek uit dit. Multi-threading beteken dat MultiCharts versprei baie take in verskillende cores, sodat hulle baie vinniger af te handel. 64-bis weergawe van MultiCharts kan jy soveel data te laai as pas in jou geheue vir analise - selfs jare en jare van bosluis data vir 'n gedetailleerde prysbewegings. Maak 'n regmerkie-vir-blok simulasie Ons noem hierdie funksie die Bar vergrootglas. Dit is noodsaaklik vir die verhoging van presisie tydens back testing. MultiCharts kan groter bars bou uit kleiner bars componentssecond en minuut uit bosluise, uur en dag bars uit minute. Jy kan presies prysbewegings in elke bar te herskep deur die gebruik van die Bar vergrootglas, wat groter bars sal bou uit kleiner komponente. Byvoorbeeld, een-uur bars het vier visuele pointsopen, hoog, laag, en naby. Die Bar vergrootglas kan onsigbaar laai minute wat die uur, en strategie sal backtested wees op 'n minuut-vir-minuut basis. Vra, uitnooi en handel pryse back testing in ag neem dat die werklike aankoop gebeur teen pryse, ware verkoop vra bod pryse. Dit maak ons ​​back testing simulasie so realisties as possible.9. Terug toets van die kuns van die handel weer toets As Ive voorheen genoem, een van die dinge wat ek regtig baie lief vir oor die handel is dat, in teenstelling met enige ander besigheid, kan jy ten volle jou besigheid model (handel plan) te toets sonder gevaar enige werklike geld. In die handel, is hierdie assesseringsproses genoem terug testing. Back toets is die gebied nou die meeste verwaarloos word deur handelaars. Ive het gepraat oor die belangrikheid van die sielkunde en geldbestuur in die vorige hoofstukke en so het 'n baie ander handel afrigters. Soveel so, daar is nou 'n skare van inligting en bewusmaking rondom. Jy hoef net te surf die net om te sien hoeveel klem word geplaas op hierdie gebiede as daar be. But al hierdie aandag blyk te wees ten koste van terug toets. As gevolg hiervan in die handel terug toets, dink ek, is nou die nuwe minste verstaan ​​en waardeer gebied van handel geword. Hoekom is terug toets so belangrik Handel terug toets is die belangrikste, want dit direk 'n impak op jou inskrywings en uitgange, geld bestuur en sielkunde op die volgende maniere. Inskrywings en uitgange terug toets jou in staat stel om jou prestasie hele stelsels te toets met behulp van historiese data. Met hierdie inligting, kan jy die nodige aanpassings te maak om te produseer die resultate jy op soek na. Geldbestuur terug toets kan jy verskeie geld bestuur modelle te toets om te sien wat die beste werk met jou stelsel. Sielkunde as vroeër in die boek bespreek word, verstaan ​​jou stelsels sterk - en swakpunte selfs al is hulle net op papier sal jou handel vertroue verbeter. Dit sal ongekende uitwerking op jou prestasie te hê wanneer jy begin om handel te dryf vir die regte. Wat ook al die tegniese ontleding maatstaf wat jy gebruik om handel te dryf met hetsy bewegende gemiddeldes, kandelaars, wisselvalligheid breakouts, Fibonacci retracements of enige ander handel stelsel jy gaan nodig om terug te toets dit deeglik, ten einde enige moontlike twyfel te verwyder oor sy vermoë. Sonder die handel terug toets, 'n gebrek aan vertroue ontstaan ​​en gewoonlik dwing handelaars om hul eie handel stelsels bevraagteken. Hulle gee aan die versoeking om hulle handel plan dikwels met vernietigende gevolge verander. Dit versoeking kom tipies van 'n string van die verlies van ambagte of 'n geleentheid om hul handel stelsel te vervang met 'n nuwe gefluit-bang aanwyser wat die jongste gier gepraat oor in die chat forums. Enigiets wat te goed om waar sal die aandag van 'n handelaar wat nie tevrede is met haar handel stelsel, bloot omdat sy haar stelsel nie behoorlik getoets in die eerste plek te lok wees klink. Sy het nie opgebou die nodige selfvertroue nodig om suksesvol te handel die stelsel hulle self ontwikkel het. Sal my handel strategie winsgewend Dit is die mees gevra vraag in die handel wêreld. Skrywer Mark Jurik het 'n kans om te beantwoord in sy boek Gerekenariseerde Trading, soos in Box 9.1. Bron: Jurik, M 1999, gerekenariseerde Trading: Maximizing Dag Trading en Oornag Winste, New York Instituut van Finansies, New York. Maar wat is die handel terug toets presies Handel back testing is die proses van toetsing van 'n handel strategie met behulp van historiese data, eerder as om dit te toets in reële tyd met die regte geld. Die statistieke verkry vanaf die toets kan gebruik word as 'n aanduiding van hoe goed die strategie sou gedoen het is aansoek gedoen het om die verlede ambagte. Interpretasie van hierdie resultate dan bied die handelaar met voldoende statistieke om die potensiaal van die handel stelsel te evalueer. Logies, ons weet dat die resultate van hierdie tipe toetsing nie in staat sal wees om toekomstige opbrengste met presies wat voorspel egter, kan dit 'n aanduiding gee of jy selfs 'n handel stelsel moet streef of nie. Wat meer is, as jy besluit om voort te gaan en handel die stelsel, dit sal jou lei oor wat om te verwag gee. Maar die vraag bly: hoe kan jy 'n prestasie handel stelsels met verloop van tyd is daar net twee maniere om dit met die hand of met rekenaarsagteware te doen te toets. Om eerlik te wees, rekenaarsagteware is die enigste werklike opsie. Ek het beide toets metodes probeer en handleiding toets is nie net tydrowend, maar baie moeilik om te dupliseer en te toets effektief. Die voordele wat uit handel back testing sagteware kan nie onderskat word nie. Dit sal jou tyd bespaar en bied 'n eindelose geleentheid te verfyn en toets jou stelsel. 'N Klein uitleg in kapitaal te koop goeie terug toets sagteware sal potensieel red jy duisende in die mark is dit 'n baie wyse belegging as jy dit oorweeg die ontwerp van 'n suksesvolle en meganiese handel stelsel. Meganiese terug toets asseblief verstaan, so lank as jou meganiese handel stelsel uitsluitlik werk met prys data (oop, hoog, laag, naby, volume), sal jy in staat wees om terug te gebruik toets sagteware. Byvoorbeeld, sê jy 'n meganiese handel stelsel te skep met die volgende inskrywing reël: Reël: Koop 'n sekuriteit wanneer die 10-dae - bewegende gemiddelde van die sluiting van die prys kruise bo die 30-dae - bewegende gemiddelde van sluitingsprys. Hierdie reël kan maklik getoets word oor historiese data. Reël:: Aan die ander kant, kan jou koopsein reël 'n bietjie meer kompleks soos in Koop 'n sekuriteit wanneer die 10-dae - bewegende gemiddelde van die sluitingsprys kruise bo die 30-dae - bewegende gemiddelde van sluitingsprys en die PE-verhouding was 75 of laer as die waarde daarvan drie maande tevore. Hierdie reël stel data wat nie dikwels verskaf of onderhou in 'n databasis van die prys inligting. Om suksesvol terug te toets dit sou behels die verkryging van historiese data van 'n sekuriteit asook die prys-tot-verdienste-verhouding (PE verhouding).Typically, historiese data op 'n groep van aandele sou net die oop, hoog, laag, naby en volume vir elke periode. As gevolg van hierdie beperking, baie meganiese handel stelsels is ontwerp om suiwer prys tegniese aanwysers. Ongelukkig is die meeste meganiese handel stelsel wat gebaseer is op fundamentele data is buite die bestek van die kleinhandel beleggers as gevolg van die gebrek aan historiese data beskikbaar is om 'n volledige handel terug toets uit te voer. Terug toets sagteware Gelukkig deesdae is daar baie kartering pakkette terug toets sagteware gebou in. As jy die proses vir die kies van 'n kartering pakket in die vorige hoofstuk gevolg word, moet jy óf gevind een met rug toets vermoëns ingesluit of gevind wat versoenbaar is met 'n ander off-the-shelf pakket. Vir dié van julle wat besluit het om Meta koop in hoofstuk 8, TradeSim 8211 www. ultimate-handel-stelsels / tradesim is waarskynlik die mees realistiese, ware handel simulator / ontleder ek gevind het. Dit kan vinnig terug toets en 'n handel stelsel te evalueer, of 'n enkele sekuriteit of 'n veelvuldige-sekuriteit portefeulje. Ek glo Tading terug toets is die enigste manier om self-twyfel te verwyder. Sodra jy het vasgestel dat jy 'n betroubare en robuuste handel stelsel slegs dan sal jy seker in die handel te wees. Net so om jou kartering sagteware, maak seker dat jy terug na die voorkant weet jou pakket. Jy sal nie in staat wees om die beste daaruit te kry, tensy jy ten volle verstaan ​​hoe dit werk en wat jy kan doen met dit. Alternatiewe oplossings Ongelukkig het ek gesien hoe baie kliënte nooit heeltemal kry dit met betrekking tot die toets terug. Vir baie, terug toets sagteware is eenvoudig te technical. If jy val in daardie kategorie, moenie moed opgee nie. Dit is 'n kritieke stap in die stelsel ontwerp proses. Vir die minder tegniese, het ek 'n oplossing genoem die handelsprestasie Analyzer www. ultimate-handel-stelsels / tpa gevind. Sy maklik om te gebruik en perfek vir die ontleding van jou stelsel voordat real time handel dit. Belangrike nota: As jy jouself toets en hertoets in die hoop van struikeling oor wat silwer bullet, onthou, sal julle nooit skep 'n handel stelsel wat 'n 100 suksessyfer het. Baie het probeer (myself ingesluit) en almal het gefaal. Jy moet nog op soek na 'n goeie stelsel handel met 'n minimale drawdown en 'n goeie risiko-tot-beloning ratio. Many handel stelsels het meer verloor ambagte as hulle wen en hulle nog steeds geld maak. Hoe geldbestuur. (Sien hoofstuk 6.) Die finale stuk in die stelsel-ontwerp legkaart is om die handel stelsel wat jy ontwerp in die vorige hoofstukke te neem en te toets it. By toets jou stelsels wat jy so pas jouself sit onder die top 1 van handelaars, om te verseker jou sukses. Baie geluk aksies Koop 'n handel terug toets pakket: TradeSim 8211 www. ultimate-handel-stelsels / tradesim handelsprestasie Analyzer 8211 www. ultimatetradingsystems / tpa Leer jou gekose terug toets sagteware binne en buite. Terug toets jou nuwe ontwerp stelsel insluitend jou inskrywing, uitgange, en reëls geld bestuur. Het jy al bewys nie Portfolio123 Vir 50 dollar per maand wat jy skerm vir fundamentele en tegniese veranderlikes, backtest dit, doen robuustheid tjeks (ewekansige inskrywings honderde kere om te verseker jy is nie kers pluk die resultate), en simulasie toets met aparte koop en te verkoop reëls , glip, persoonlike heelalle, blah, blah, blah. Jy kan dit gebruik vir 45 dae as 'n gratis toets as jy by die ondertekening van die kode HKURTIS gebruik om dit uit te toets. Voordat Portfolio123 Ek het gedink net Zacks Wizard Navorsing was 'n lae koste alternatief 8211, maar honderde dollars vir die afgewaterde weergawe, oorlewing vooroordeel, en ander probleme 8211 nee dankie. IMO sy institusionele graad sagteware vir ongeveer 1/20 van die koste. Jesuraj 7 Maart 2012 by 05:07 Hi Dave, gebeur ek na hierdie uitstekende aritcle lees. In Meta, wil ek wins te bespreek vir net die helfte van my posisie en ek kon 'n manier om dit te doen kry nie. Kan jy asseblief laat my weet of so 'n toets is moontlik in Meta. Dankie en groete Jesuraj


No comments:

Post a Comment