Back testing in Excel vs MQL4 geword Julie 2011 Status: Lid 4 Posts Is daar iemand back testing doen in Excel, of weet lede wat ek sou doen graag metodologie en modelle bespreek met iemand wat uitblink gebruik. Is daar iemand enige eenvoudige (of kompleks) modelle wat hulle bereid is om te deel vir basiese aanwysers of stelsels Of sou wees. moet ek wy 'n geruime tyd om te leer MQL4 Ek het 'n baie ondervinding modellering in Excel, maar ek het geen ondervinding met rekenaarprogrammering. Ek is huiwerig om tyd te leer MQL4 as ek sal begin uit niks te spandeer, maar miskien sal dit makliker wees. Is daar enige ander nie-programmeerders daar buite wat vaardig is in MQL4 geword Aangemeld Oktober 2007 Status: Lid 92 Posts Excel is 'n kragtige instrument. Terwyl dit is ontwerp om te werk as 'n sigblad en modellering, ens, het mense dit gebruik om alle vorme van wonderlike dinge, insluitend AI, databasisse, ens selfs al is daar spesialis gereedskap wat spesifiek ontwerp is vir diegene take te doen. MQL4 is 'n mooi kru taal, maar dit is spesifiek ontwerp vir die handel en so dit het baie dinge wat spesifiek op daardie taak. Terwyl Theres 'n deurlopende debat oor die doeltreffendheid van die strategie tester as 'n back-toetsing instrument, Im seker dat jy sal terug toets tien keer vinniger met MQL4 selfs al het jy die taal van nuuts af leer. Julle waarskynlik reeds vertroud is met 'n groot deel van die fundamentele programmering konsepte soos lusse en voorwaardelike stellings. Vir die roete Excel, wil jy dalk om te kyk vir gereedskap wat reeds beskikbaar is, Id verbaas wees as iemand has not hierdie reeds gedoen. As jy iets om klaar te maak cant vind, sal jy moet in die eerste plek te ontwerp 'n handel simulator, hanteer die verslaggewing, proses jou historiese data, en dan 'n redelike UI. Dit alles kom gratis met MT4. Aangesluit Oktober 2007 Status: Lid 884 Posts Enigiets wat berekeninge ek doen in Excel, gedoen het vir die jaar. Maar Ek is nie seker youd kry niks uit my modelle as hulle is spesifiek vir wat Im doen. Excel is manier om meer buigsaam, en deursigtig, sodat jy kan ondervra en behoorlik gaan die data. Vir die nie-programmeerder sy goue. Net soos 'n voorbeeld, hoe lank sal dit neem jy klop van 'n EA dat die gemiddelde wisselvalligheid van enige gegewe uur vir die afgelope 14 dae toon. Ek is nie te sê sy onmoontlik - ek het geen idee nie - maar in Excel, 'n spilpunt tafel en 5 minute later en julle gedoen. Waar Excel val af in lewende handel - dit nie die geval speel mooi haak in ander handel platforms (FXCM / IB / Currenex), maar vir back testing, dat maak nie saak. Aangesluit Julie 2009 Status. of daar oor 215 poste Toe ek begin om my eie ontleding Ek het begin met Excel as ek het geen programming ervaring en gevind VBA makliker om te leer as MQL4. Gebruik nou ek 'n kombinasie van beide. In my beperkte ervaring, MQL4 is vinniger op berekeninge as Excel, veral as jou Excel vel maak gebruik van baie van die gebruiker gedefinieerde funksies. Een van my deurlopende projekte is om 'n sigblad om 70ish verskillende instrumente op weeklikse en daaglikse tydsraamwerke analiseer bou. Aanvanklik het ek gedink dat ek MQL4 sou gebruik lêers van OHLC inligting CSV te skryf vir elke instrument en tydraamwerk, dan crunch die getalle in Excel. Nadeel - die neem van 'n paar minute om te herbereken, nou ek voer al die calcs in MT4 en skryf dan net twee lêers. Excel is dan die UI en daar is geen wag op calcs. Ek veronderstel wat ek kry op, is dat as jy albei kan gebruik, dan moet jy gee jouself die vermoë om te gebruik wat ook al die beste geskik is vir die taak wat jy self gestel het is. Net my 2 pennies. Aangesluit Mei 2006 Status: Slegs een gebruikersnaam. 1367 Posts Ive probeer hierdie metodes oor die jare: MT4 Strategie Tester Custom Python programme OpenOffice Calc (Excel verenigbaar) Elke EA het sy eie kenmerke, maar oor die algemeen Ive het die beste resultate met MT4 Aanwysers / skrifte. As jy 'n aanduiding dat die optrede van 'n gegewe EA sy moontlike duplikate daardie aanwyser draai in 'n analise hulpmiddel kan skep. Alle EAS nie hulself leen tot hierdie benadering, maar as jy een wat nie het nie, sal dit byna onmiddellik resultate (nie akkuraat om die pit, maar naby genoeg) te verskaf en te red wat te geknoei met CSV lêers of ander meer komplekse tussenvoering tegnieke. IMHO, laat die aard van die EA jy toets skryf die beste metode van toetsing. Ou Benjamin was rightFirst, you8217ll behoefte to8230 1) Skep 'n kopie van jou produk lêer deur eenvoudig die uitvoering van 'n 8220Save-As8221. Noem die kopie 8220Backtest8221, dan hou die 8216original8217 vir live handel. Druk die volgende velle handig te hê, terwyl die uitvoering van jou rug toets: Vir alle genoteerde stappe (onder), jou rug-toets kan slegs betroubaar geag indien dit gedoen word (volgens jou plan). Jou handel plan moet spesifiek wees en jou vertel wanneer om in te skryf die handel en teen watter punte jy sal óf Verlaat die handel vir 'n verlies, of uitgang gebaseer op 'n voorafbepaalde winsneming metode. 3) TradeSheet (gevind in elke produk lêer). Gebruik dit om neer te skryf jou notas van elke Handel gebeurtenis. Jy sal hierdie aantekeninge direk oor te dra na die handel-log wanneer jy klaar is. Alternatiewelik, kan jy jou backtest handel inskrywings direk in die Trading-log betree. Wanneer jy sien 8220Trade Occurrence8221 (stap 4, in beeld hieronder) you8217ll skryf die 8220codes8221 in die TradeSheet vir elke individu 8220Performance-tracking8221 kategorie wat jy wil dop, terwyl die gebruik van die dop blad vir-kode verwysings. 7-stap back testing procedure06 / 17/2013 Laaste weergawe van TraderCode (v5.6) sluit nuwe Tegniese Analise aanwysers, Punt-en-figuur kartering en Strategie back testing. 2013/06/17 nuutste weergawe van NeuralCode (v1.3) vir neurale netwerke Trading. 2013/06/17 ConnectCode Barcode Font Pack - in staat stel om barcodes in die kantoor programme en sluit 'n add-in vir Excel wat massa geslag barcodes ondersteun. 2013/06/17 InvestmentCode, 'n omvattende reeks van Finansiële sakrekenaars en modelle vir Excel is nou beskikbaar. 2009/09/01 Begin van Free Investment en Finansiële Sakrekenaar vir Excel. 2008/02/01 Vrystelling van SparkCode Professionele - add-in vir die skep van Dashboards in Excel met Sparklines 2007/12/15 aankondiging ConnectCode Dubbele Remover - 'n kragtige add-in vir die vind van en die verwydering van duplikate inskrywings in Excel 09/08/2007 Begin van TinyGraphs - open source add-in vir die skep van Sparklines en klein kaarte in Excel. Strategie back testing in Excel strategie back testing Expert Oorsig Die back testing Expert is 'n spreadsheet model wat jou toelaat om handel strategieë met behulp van die tegniese aanwysers en die bestuur van die strategieë deur historiese data te skep. Die prestasie van die strategieë kan dan gemeet en vinnig en maklik ontleed word. Gedurende die back testing proses, die back testing Expert loop deur die historiese data in 'n ry deur ry wyse van bo tot onder. Elke strategie gespesifiseerde sal geëvalueer word om vas te stel of die inskrywing voorwaardes voldoen word. As die voorwaardes voldoen, sal 'n handel daaroor gevoer word nie. Aan die ander kant, as die uitgang voorwaardes voldoen word, 'n posisie wat voorheen ingevoer sal word opgewonde. Verskillende variasies van tegniese aanwysers gegenereer kan word en gekombineer word om 'n handel strategie te vorm. Dit maak die back testing Expert 'n uiters kragtige en buigsame instrument. Back testing Expert Die back testing Expert is 'n spreadsheet model wat jou toelaat om handel strategieë met behulp van die tegniese aanwysers en die bestuur van die strategieë deur historiese data te skep. Die prestasie van die strategieë kan dan gemeet en vinnig en maklik ontleed word. Die model kan opstel in lang of kort posisies aan te gaan wanneer sekere voorwaardes voorkom en die posisies verlaat toe 'n ander stel van voorwaardes voldoen word. Deur outomaties die handel op historiese data, kan die model van die winsgewendheid van 'n handel strategie te bepaal. Back testing Expert stap vir stap handleiding 1. Begin die back testing Expert Die back testing Expert kan begin vanaf die Windows Start Menu-'s - TraderCode - back testing Expert. Dit sit 'n spreadsheet model met veelvuldige werkblaaie vir jou om ontleding aanwysers tegniese genereer en hardloop terug toetse op die verskillende strategieë. Jy sal sien die back testing Expert sluit baie bekende werkkaarte soos DownloadedData, AnalysisInput, AnalysisOutput, ChartInput en ChartOutput van die tegniese ontleding Expert model. Dit laat jou toe om al jou rug toetse vinnig en maklik uit te voer van 'n bekende spreadsheet omgewing. 2. Kies eers die DownloadedData werkblad. Jy kan data van enige spread of kommas geskei waardes (CSV) lêers om hierdie werkvel vir tegniese ontleding kopieer. Die formaat van die data word soos getoon in die diagram. Alternatiewelik kan jy verwys na die aflaai Stock Trading Data dokument data van bekende data bronne soos Yahoo Finansies, Google Finansies of Forex vir gebruik in die back testing Expert af te laai. 3. Sodra jy die data gekopieer, gaan na die AnalysisInput werkblad en klik op die knoppie te analiseer en backtest. Dit sal die verskillende tegniese aanwysers in die AnalysisOutput werkblad te genereer en voer back testing op die voorwaardes in die StrategyBackTestingInput werkblad strategieë. 4. Klik op die StrategyBackTestingInput werkblad. In hierdie handleiding sal jy net nodig het om te weet dat ons albei 'n lang en kort strategieë gebruik van bewegende gemiddelde CROSSOVER het gespesifiseer. Ons sal gaan na die besonderhede van die spesifiseer van strategieë in die volgende afdeling van hierdie dokument. Die diagram hieronder toon die twee strategieë. 5. Sodra die rug toetse voltooi is, sal die uitset in die AnalysisOutput, TradeLogOutput en TradeSummaryOutput werkkaarte geplaas. Die AnalysisOutput werkblad bevat die volle historiese pryse en die tegniese aanwysers van die voorraad. Gedurende die agterste toetse, indien die voorwaardes vir 'n strategie is tevrede, inligting, soos die koopprys, verkoopprys, kommissie en wins / verlies sal aangeteken word in hierdie werkblad vir maklike verwysing. Hierdie inligting is nuttig as jy wil om op te spoor deur middel van die strategieë om te sien hoe die voorraad posisies ingeskryf en afgesluit. Die TradeLogOutput werkblad bevat 'n opsomming van die wat deur die back testing Expert uitgevoer ambagte. Die data kan maklik gefiltreer om net show data vir 'n spesifieke strategie. Hierdie werkvel is nuttig vir die bepaling van die algehele wins of verlies van 'n strategie op verskillende tydskale. Die belangrikste uitset van die rug toetse word in die TradeSummaryOutput werkblad. Hierdie werkblad bevat die totale wins van die uitgevoer strategieë. Soos getoon in die diagram hieronder, die strategieë gegenereer 'n totale wins van 2,548.20 deur 'n totaal van 10 ambagte. Van hierdie ambagte, 5 is lang posisies en 5 is kort posisies. Die verhouding wen / verlies van meer as 1 dui op 'n winsgewende strategie. Verduideliking van die verskillende werkblaaie Hierdie afdeling bevat die gedetailleerde verduideliking van die verskillende werkblaaie in die back testing Expert model. Die DownloadedData, AnalysisInput, AnalysOutput, ChartInput en ChartOutput werkkaarte is dieselfde as in die tegniese ontleding Expert model. So sal hulle nie beskryf in hierdie afdeling. Vir 'n volledige beskrywing van die werkvelle, verwys asseblief na die artikel Tegniese Analise Expert. StrategyBackTestingInput werkblad Al die insette vir back testing insluitend die strategieë ingeskryf gebruik van hierdie werkkaart. 'N Strategie is basies 'n stel van voorwaardes of reëls wat jy sal koop 'n voorraad of verkoop 'n voorraad. Byvoorbeeld, kan jy 'n strategie uit te voer om te gaan Lang (aankoop aandele) indien die 12 dae bewegende gemiddelde van die prys kruise bo die 24 dae bewegende gemiddelde. Hierdie werkblad werk saam met die tegniese aanwysers en prys data in die AnalysisOutput werkblad. Vandaar die bewegende gemiddelde tegniese aanwysers moet gegenereer word ten einde 'n handel strategie wat gebaseer is op bewegende gemiddelde het. Die eerste insette vereis in hierdie werkblad (soos getoon in die diagram hieronder) is om te spesifiseer of tot by die afrit Alle Trades aan die einde van die Terug toets sessie. Stel jou voor die scenario waar toestande vir die aankoop van 'n voorraad het plaasgevind en die back testing Expert ingegaan n Lang (of kort) handel. Maar die tyd is te kort en het geëindig voordat die handel kan ontmoet die uitgang toestande, wat lei tot 'n paar ambagte nie opgewonde wanneer die back testing sessie eindig. Jy kan dit stel om Y te alle ambagte te opgewonde aan die einde van die back testing sessie dwing. Anders, die ambagte sal gelaat word oopgemaak wanneer back testing sessie eindig. Strategieë 'n Maksimum van 10 strategieë kan ondersteun in 'n enkele terug toets. Die diagram hieronder toon die vereiste vir die spesifiseer van 'n strategie insette. Strategie Voorletters - Hierdie insette aanvaar 'n maksimum van twee alfabette of nommers. Die strategie Voorletters word gebruik in die AnalysisOutput en TradeLog werkkaarte vir die identifisering van die strategieë. Lang (L) / Kort (S) - Dit word gebruik om aan te dui of 'n lang of kort posisie betree wanneer die inskrywing voorwaardes van die strategie voldoen. Toegang Voorwaardes n lang of kort handel sal daaroor gevoer word nie wanneer die inskrywing voorwaardes nagekom word. Die voorwaardes om uitgedruk kan word as 'n formule uitdrukking. Die formule uitdrukking is kassensitief en dit kan gebruik van funksies, operateurs en kolomme te maak soos hieronder beskryf. crossabove (X, Y) - Returns Waar indien kolom X kruis bo kolom Y. Hierdie funksie gaan die vorige periodes om te verseker dat 'n crossover eintlik plaasgevind het. crossbelow (X, Y) - Returns Waar indien kolom X kruis hieronder kolom Y. Hierdie funksie gaan die vorige periodes om te verseker dat 'n crossover eintlik plaasgevind het. en (logicalexpr,) - Boole En. Wys waar as al die logiese uitdrukkings is waar. of (logicalexpr,) - Boole Or. Terugkeer Waar indien enige van die logiese uitdrukkings is waar. daysago (X, 10) - Wys die waarde (in kolom X) van 10 dae gelede. previoushigh (X, 10) - Gee die hoogste waarde (in kolom X) van die afgelope 10 dae, insluitend vandag. previouslow (X, 10) - Gee die laagste waarde (in die kolom X) van die afgelope 10 dae, insluitend vandag. Operateurs Groter as gelyke nie gelyk Groter as of gelyk Optel - Aftrekking Vermenigvuldiging / Afdeling kolomme (vanaf AnalysisOutput) A - kolom AB - Kolom vC .. .. JJ - Kolom JJ ZZ - Kolom ZZ Dit is die mees interessante en buigsame deel van die Toegang Voorwaardes. Dit laat kolomme van die AnalysisOutput werkblad word vermeld. Wanneer die agterste toetse uitgevoer word, sal elke ry van die kolom word gebruik vir evaluation. For byvoorbeeld 'n 50 beteken elk van die rye in kolom A van die AnalysisOutput werkblad sal bepaal of dit is groter as 50. AB In hierdie voorbeeld as die waarde in kolom A in AnalysisOutput werkblad groter as of gelyk is die waarde van kolom B, sal die inskrywing toestand tevrede wees. en (A B, CD) In hierdie voorbeeld, indien die waarde in kolom A in AnalysisOutput werkblad is groter as die waarde van kolom B en die waarde van kolom C is groter as kolom D, die inskrywing toestand sal tevrede wees. crossabove (A, B) In hierdie voorbeeld, indien die waarde van kolom A in AnalysisOutput werkblad kruis bo die waarde van B, die inskrywing toestand sal tevrede wees. crossabove beteken dat A het oorspronklik 'n waarde wat minder as of gelyk aan B en die waarde van 'n gevolglik word groter as B. afrit Voorwaardes die uitgang voorwaardes gebruik van funksies, operateurs en kolomme kan maak soos omskryf in die inskrywing voorwaardes. Op die top van dat dit ook gebruik van veranderlikes kan maak soos below. Variables vir Exit voorwaardes wins Dit word gedefinieer as die verkoopprys minus die koopprys. Die verkoopprys moet groter wees as die koopprys vir 'n wins te maak nie. Anders sal die wins nul wees. verlies Dit word gedefinieer as die verkoopprys minus die koopprys wanneer die verkoopprys minder as die koopprys is. profitpct (verkoopprys - koopprys) / koopprys Nota. verkoopprys moet groter as of gelyk aan koopprys wees. Andersins sal profitpct nul wees. losspct (verkoopprys - koopprys) / koopprys Nota. verkoopprys moet minder as koopprys wees. Andersins sal losspct nul wees. Voorbeelde profitpct 0.2 In hierdie voorbeeld, indien die wins in terme van persentasie is groter as 20, sal die uitgang toestande tevrede wees. Kommissie - Kommissie ingevolge 'n persentasie van die verhandelingsprys. As die verhandelingsprys is 10 en Kommissie is 0.1 dan kommissie sal wees 1. Die persentasie kommissie en kommissie in dollars sal opgesom om die totale kommissie bereken. Kommissie - Kommissie in dollar terme. Die persentasie kommissie en kommissie in dollars sal opgesom die totale kommissie bereken. Aantal Aandele - Aantal aandele te koop of te verkoop wanneer die inskrywing / afrit voorwaardes van die strategie voldoen. TradeSummaryOutput werkblad Dit is 'n werkvel wat 'n opsomming van al die tydens die terug toetse uitgevoer ambagte bevat. Die resultate word verdeel in lang en kort ambagte. 'N beskrywing van al die velde kan hier gevind word. Totaal wins / verlies - totale wins of verlies ná kommissie. Hierdie waarde word bereken deur die som al die winste en verliese van al die ambagte nageboots in die rug toets. Totaal wins / verlies voor Kommissie - totale wins of verlies voor kommissie. As kommissie is ingestel op nul, sal hierdie gebied dieselfde waarde as Totaal wins / verlies te hê. Totaal Kommissie - totale kommissie wat nodig is vir al die ambagte nageboots tydens die terug toets. Totale aantal ambagte - Die totale aantal ambagte tydens die gesimuleerde terug toets uitgevoer. Aantal wen ambagte - Aantal ambagte wat 'n wins te maak. Aantal verloor Trades - Aantal ambagte wat 'n verlies te maak. Persent wen ambagte - nommer te wen ambagte gedeel deur die totale aantal ambagte. Persent verloor Trades - Nommer van die verlies van ambagte gedeel deur die totale aantal ambagte. Gemiddeld wen Handel - Die gemiddelde waarde van die wins van die wen ambagte. Gemiddeld verloor Handel - Die gemiddelde waarde van die verliese van die verlies van ambagte. Gemiddeld Handel - Die gemiddelde waarde (wins of verlies) van 'n enkele handel van die gesimuleerde terug toets. Grootste wen Handel - Die wins van die grootste wen handel. Grootste verloor Handel - Die verlies van die grootste verloor handel. Verhouding gemiddelde wen / gemiddelde verlies - Gemiddelde wen Handel gedeel deur die gemiddelde verlies van Handel. Verhouding wen / verloor - som van al die winste in die wen ambagte gedeel deur die som van al die verliese in die verlies van ambagte. 'N verhouding van meer as 1 dui op 'n winsgewende strategie. TradeLogOutput werkblad Hierdie werkblad bevat al die ambagte nageboots deur die back testing Expert gesorteer volgens die datum. Dit laat jou toe om in te zoem na 'n spesifieke handel of tyd raam om die winsgewendheid van 'n strategie vinnig en maklik te bepaal. - Die datum waar 'n lang of kort posisie ingeskryf of opgewonde. Strategie - Die strategie wat gebruik word vir die uitvoering van hierdie handel. Posisie - Die posisie van die handel, hetsy Lang of Kort. Handel - Dui aan of hierdie handel is die koop of verkoop van aandele. Aandele - Aantal aandele verhandel. Prys - Die prys waarop die aandele gekoop of verkoop. Komm. - Totaal kommissie vir die handel. PL (B4 Comm.) - Wins of verlies voor kommissie. PL (Aft Comm.) - Wins of verlies ná kommissie. Cum. PL (Aft Comm.) - Kumulatiewe wins of verlies na kommissies. Dit word bereken as die kumulatiewe totale wins / verlies van die eerste dag van 'n handelsmerk. PL (In die sluiting posisie) - Wins of verlies wanneer die posisie is gesluit (opgewonde). Beide die inskrywing kommissie en uitgang kommissie sal in berekening gebring word in hierdie PL. Byvoorbeeld, as ons 'n Lang posisie waar die PL (B4 Comm.) Is 100. Die veronderstelling wanneer die posisie ingeskryf word 'n 10-kommissie aangekla en wanneer die posisie is opgewonde, is 'n ander kommissie van 10 aangekla. Die PL (In die sluiting posisie) is 100 10-10 80. Beide die kommissie op die invoer van die posisie en die verlaat van die posisie is verantwoordelik vir op posisie naby. Terug na TraderCode Tegniese analise sagteware en Tegniese IndicatorsWIN 1000 na 'n MultiCharts Lifetime Lisensie Sommige makelaars bied 'n beter pryse, en 'n paar data voed verskaf meer historiese data. Kies dié wat jou behoeftes te pas. Selfs met 'n wen-strategie, kan net 'n kort vertraging in die uitvoering orde al die verskil maak. Outomatiese handel is 'n baie vinniger as 'n mens. Bekend as 'n quotscreenerquot, of ldquoquote boardrdquo, kan hierdie instrument wat jy monitor duisende mark simbole in 'n venster om winsgewende geleenthede te vind. EasyLanguage is 'n industrie standaard taal vir ontwikkeling strategieë en aanwysers. Dit is spesifiek gemaak vir handelaars grootste voordeel is jy kan begin in minute. Back testing is die toepassing van 'n strategie om historiese data te sien ldquohow jy donerdquo sou hê. Portefeulje back testing kan jy ontwerp en toets strategieë op verskeie simbole. 2012 t2w Members39 Choice Award Beste sagteware vir Meganiese stelsel Handelaars Beste Tegniese analise sagteware 2011 t2w Members39 Choice Award Beste Professionele Trading Platform Beste sagteware vir Intra-Dag Handelaars 2013 tegniese ontleding van aandele en kommoditeite Readers39 Choice Award semifinalis Standalone Analitiese sagteware 1000 en Bo 2012 BMT Beste van die saak toekenning Trading platform van die Jaar Futures Trading platform die YearQSForex is 'n oop-bron gebeurtenis gedrewe back testing en live verhandelingsplatform vir gebruik in die buitelandse valuta (Forex) markte, wat tans in 'n alfa staat. Dit is geskep as deel van die Forex Trading Dagboek reeks oor QuantStart om die sistematiese handel gemeenskap te voorsien met 'n robuuste handel enjin wat eenvoudig forex strategie implementering en toetsing laat. Die sagteware word onder 'n permissiewe MIT lisensie (sien onder). Open-source - QSForex is vrygestel onder 'n uiters permissiewe open-source MIT lisensie, wat vol gebruik in beide navorsing en kommersiële toepassings toelaat, sonder beperking, maar met geen waarborg van enige aard hoegenaamd nie. Gratis - QSForex is heeltemal gratis en kos niks om af te laai of te gebruik. Samewerking - As QSForex is open-source baie ontwikkelaars saam om die sagteware te verbeter. Nuwe funksies word dikwels bygevoeg. Enige foute is vinnig bepaal en vasgestel. Software Development - QSForex is geskryf in die Python-programmeertaal vir eenvoudige kruis-platform ondersteuning. QSForex bevat 'n suite van eenheid toetse vir die meerderheid van die berekening kode en nuwe toetse word voortdurend bygevoeg vir nuwe funksies. Gebeurtenis gedrewe Architecture - QSForex is heeltemal gebeurtenis gedrewe beide vir back testing en live handel, wat lei tot eenvoudige oordrag van strategieë van 'n navorsingsprojek / toetsfase om 'n lewendige handel implementering. Transaksiekoste - Smeer kostes word ingesluit by verstek vir alle backtested strategieë. Back testing - QSForex funksies intraday bosluis-resolusie multi-dag multi-geldeenheid paar back testing. Trading - QSForex ondersteun tans live intraday handel met behulp van die site OANDA makelaarsloon API oor 'n portefeulje van pare. Prestasie statistieke - QSForex ondersteun tans basiese prestasiemeting en gelykheid visualisering via die Matplotlib en Seaborn visualisering biblioteke. Installasie en Gebruik 1) Besoek www. oanda / en die opstel van 'n rekening om die API verifikasie geloofsbriewe, wat jy nodig het om uit te voer lewende handel te verkry. Ek verduidelik hoe om dit te uit te voer in hierdie artikel: www. quantstart / artikels / Forex-Trading-Dagboek-1-outomatiese-Forex-Trading-met-die-site OANDA-API. 2) Kloon hierdie git bewaarplek in 'n geskikte plek op jou rekenaar met behulp van die volgende opdrag in jou terminale: git kloon GitHub / mhallsmoore / qsforex. git. Alternatiewe kan jy die zip-lêer van die huidige meester tak op GitHub / mhallsmoore / qsforex / argief / master. zip aflaai. 3) Maak 'n stel van die omgewing veranderlikes vir al die instellings wat in die settings. py lêer in die aansoek hoofdmap. (.) Alternatiewelik kan jy hard jou spesifieke instellings soos deur die vervang van die os. environ. get oproepe vir elke instelling: 4) Skep 'n virtuele omgewing (virtualenv) vir die QSForex kode en gebruik neut om die vereistes te installeer. Byvoorbeeld in 'n Unix-gebaseerde stelsel (Mac of Linux) wat jy dalk so 'n gids skep soos volg deur die invoer van die volgende opdragte in die terminale: sal dit 'n nuwe virtuele omgewing by die pakkette in installeer skep. Veronderstel jy die QSForex git repository afgelaai in 'n voorbeeld gids soos / projekte / qsforex / (verander hierdie gids onder om waar jy QSForex geïnstalleer), dan ten einde die pakkette wat jy sal nodig hê om die volgende opdragte uit te voer installeer: Dit sal 'n paar te neem tyd en wyl Numpy, Scipy, Pandas, Scikit-Leer en Matplotlib moet opgestel. Daar is baie pakkette wat nodig is vir hierdie om te werk, so moet asseblief 'n blik op hierdie twee artikels vir meer inligting: Jy moet ook 'n simboliese skakel vanaf jou webwerf-pakkette gids te skep om jou QSForex installasie gids in staat te wees om 'n beroep invoer qsforex binne die kode. Om dit te doen wat jy sal 'n bevel soortgelyk aan die volgende nodig: Maak seker dat / projekte / qsforex verander om jou installasie gids en /venv/qsforex/lib/python2.7/site-packages/ om jou virtualenv webwerf pakkette gids. Jy sal nou in staat wees om die daaropvolgende opdragte korrek uit te voer. 5) Op hierdie stadium, as jy net wil praktiseer of lewende handel uit te voer, dan kan jy luislang handel / trading. py hardloop. wat sal die verstek TestStrategy handel strategie te gebruik. Dit net koop of verkoop 'n geldeenheid paar elke 5 bosluis. Dit is suiwer vir die toets - gebruik dit nie in 'n lewendige handelsomgewing As jy wil 'n meer bruikbare strategie te skep, dan net 'n nuwe klas met 'n beskrywende naam, byvoorbeeld MeanReversionMultiPairStrategy en verseker dat dit 'n calculatesignals metode. Jy sal nodig hê om hierdie klas die pare lys asook die gebeure tou slaag, soos in die handel / trading. py. Kyk asb na strategie / strategy. py vir meer inligting. 6) Ten einde enige back testing dit nodig is om gesimuleerde forex data te genereer of laai historiese blok data uit te voer. As jy wil net probeer om die sagteware uit, die vinnigste manier om te genereer 'n voorbeeld backtest is om 'n paar gesimuleerde data te genereer. Die huidige data formaat wat gebruik word deur QSForex is dieselfde as dié wat deur die DukasCopy Historiese data voed op www. dukascopy / Switserse / Engels / MarketWatch / historiese /. In 'n sekere historiese data te genereer, maak seker dat die CSVDATADIR instelling in settings. py is om 'n gids waar jy wil die historiese data te leef. Jy moet dan generatesimulatedpair. py hardloop. wat onder die skrifte / gids. Hy verwag 'n enkele command line argument, wat in hierdie geval is die geldeenheid paar in BBBQQQ formaat. Byvoorbeeld: In hierdie stadium die script is gekodeer om 'n enkele maande data te skep vir Januarie 2014. Dit is, sal jy individuele lêers te sien, van die formaat BBBQQQYYYYMMDD. csv (bv GBPUSD20140112.csv) vertoon in jou CSVDATADIR vir alle werksdae in daardie maand. Indien u verkies om die maand / jaar van die data uitset verander, net die lêer en re-run verander. 7) Nou dat die historiese data gegenereer is dit moontlik 'n backtest uit te voer. Die backtest lêer self is gestoor in backtest / backtest. py. maar dit bevat slegs die backtest klas. Om 'n backtest eintlik voer wat jy nodig het om hierdie klas instansieer en verskaf dit met die nodige modules. Die beste manier om te sien hoe dit gedoen is om te kyk na die voorbeeld Gemiddeld Crossover implementering beweeg in die voorbeelde / mac. py lêer en gebruik dit as 'n sjabloon. Dit maak gebruik van die MovingAverageCrossStrategy wat gevind word in strategie / strategy. py. Hierdie verstek na handel beide GBP / USD en EUR / USD verskeie geldeenheid paar gebruik demonstreer. Dit maak gebruik van data wat gevind is in CSVDATADIR. Om die voorbeeld backtest voer, net hardloop die volgende: Dit sal 'n tyd neem. Op my Ubuntu lessenaar stelsel by die huis, met die historiese data wat gegenereer word deur generatesimulatedpair. py. dit neem om 5-10 minute om te loop. 'N Groot deel van hierdie berekening plaasvind aan die einde van die werklike backtest, wanneer die onttrekking word bereken, so moet asseblief onthou dat die kode nie hang Laat dit tot voltooiing. 8) As jy wil om die prestasie van die backtest kan jy net gebruik output. py om 'n aandele kurwe, tyd opbrengste skerm (dit wil sê merk-tot-blok opbrengste) en 'n onttrekking kurwe: En dis dit in hierdie stadium is jy gereed is om te begin maak van jou eie backtests deur die wysiging of die aanbring van strategieë in strategie / strategy. py en die gebruik van werklike data afgelaai word vanaf DukasCopy (www. dukascopy / Switserse / Engels / MarketWatch / historiese /). Indien u enige vrae oor die installasie het moet asseblief nie huiwer om my te e-pos by mikequantstart. Indien u enige foute of ander kwessies wat jy dink dalk te danke aan die kodebasis wees spesifiek, voel vry om 'n GitHub kwessie hier oop te maak: GitHub / mhallsmoore / qsforex / kwessies Kopiereg (c) 2015 Michael Saal-Moore Toestemming word hiermee verleen, gratis lading, aan enige persoon 'n kopie van hierdie sagteware en daarvan dokumentasie (die sagteware), om te gaan in die sagteware sonder beperking, insluitend sonder beperking die reg om te gebruik, kopieer, aanpas, kombinering, publiseer, versprei, sublisensieer, en / of te verkoop kopieë van die sagteware, en om persone aan wie die Software is lewer om dit te doen, onderhewig aan die volgende voorwaardes toegelaat: die bogenoemde kopieregkennisgewing en hierdie kennisgewing toestemming sal in alle kopieë of aansienlike gedeeltes van die sagteware word ingesluit. DIE SAGTEWARE WORD AS verskaf word, SONDER WAARBORG VAN ENIGE AARD, uitdruklik of geïmpliseer, INSLUITEND MAAR NIE BEPERK TOT DIE WAARBORGE VAN VERHANDELBAARHEID, GESKIKTHEID VIR 'N SPESIFIEKE DOEL en sekuriteit. In geen geval sal die skrywers OR KOPIEREGHOUERS aanspreeklik wees vir enige eis, skade of ander aanspreeklikheid, hetsy in 'Aksie VAN KONTRAK, DELIK OF ANDERS, VOORTSPRUITEND UIT, VAN OF IN VERBAND MET DIE SAGTEWARE OF DIE GEBRUIK VAN OF ANDER HANDELINGEN IN DIE SAGTEWARE. Forex Trading Disclaimer Trading buitelandse valuta op marge dra 'n hoë vlak van risiko, en mag nie geskik vir alle beleggers nie. Vorige prestasie is nie 'n aanduiding van toekomstige resultate. Die hoë mate van die hefboom kan werk teen jou sowel as vir jou. Voordat jy besluit om te belê in buitelandse valuta moet jy noukeurig oorweeg jou beleggingsdoelwitte, vlak van ervaring, en risiko-aptyt. Die moontlikheid bestaan dat jy 'n verlies van sommige of al jou aanvanklike belegging kan volhou en daarom moet jy nie geld wat jy nie kan bekostig om te verloor belê. Jy moet bewus wees van al die risiko's wat verband hou met die buitelandse valuta handel, en soek advies van 'n onafhanklike finansiële adviseur indien u enige twyfel het.
No comments:
Post a Comment