Welkom by deel 3 in hierdie kort inleiding tot outomatiese handel strategie-ontwikkeling met C # en NinjaTrader! In deel 1 bespreek ons outomatiese handel basiese beginsels, hoe om NainjaTrader geïnstalleer te kry, en die motor-generasie van 'n strategie klas. In deel 2. duif ons in strategie-kode deur die implementering van 'n basiese Golden Cross strategie in C # kode, en nou, sal ons wys hoe om die strategie backtest deur historiese voorraad data om te sien hoe dit sou verrig. Voordat ons begin, wil ek graag daarop wys dat baie belangrike deel van back testing, vorentoe toets, of lewendige handel uitvoering is om 'n goeie instrument data te gebruik in jou strategieë. Met die gratis weergawe van NinjaTrader, Kinetick bied 'n gratis data voed met einde van die dag data - wat beteken dat ons daaglikse bars kan backtest gratis. Jy kan bevestig dat jy is verbind tot die Kinetiese einde van die dag voer in die menu NinjaTrader hieronder getoon: Sodra ons het bevestig dat ons verbind is om ons data verskaffer, kom ons begin 'n nuwe strategie toets sessie met die kies van die lêer = & gt; Nuwe = & gt; Strategie Analyzer menu-item: Dit sal 'n nuwe strategie ontleder venster wat sal funksioneer as 'n sandbox vir ons back testing oopmaak. In hierdie oop venster, sal jy sien 'n boom-uitsig in die linker paneel met 'n paar standaard inskrywings. Vir ons eerste back testing endeaver, kom ons probeer back testing ons Crossover strategie met Apple data vir die afgelope 2 jaar. Soos jy dalk weet, is Apple verhandel in die Nasdaq onder simbool AAPL. Brei die NASDAQ 100 node, kies AAPL, regs-kliek en kies "backtest" soos hieronder getoon: As jy veral avontuurlijke voel, kan jy selfs die toets van die strategie teen die hele NASDAQ 100 lys - hoewel die resultate 'n bietjie meer moeilik om te interpreteer. Wanneer jy hierdie kies, sal 'n ingebedde venster verskyn van die regterkant van die skerm. Pen dit na die skerm met behulp van die pen ikoon op die boonste regterkantste, en stel die parameters soos hieronder toon: Hier is 'n paar hoogtepunte van die parameters wat ons hier opstel: MyInput0: Dit is die openbare eiendom ons in Deel 1 van hierdie reeks genoem. Alhoewel hierdie waarde sal geen invloed op ons strategie op alle, moet dit te illustreer hoe dit moontlik is om veranderlikes beskikbaar vir die backtester maak, sodat jy verskeie waardes uit kan probeer. Data Reeks: Hier is waar ons rig ons Bar grootte - en omdat ons met behulp van gratis data einde van die dag, sal ons hierdie stel om Day, 1. Duur: Dit spesifiseer die duur dat ons sal back testing. Ek gaan terug na die begin van 2011 Afrit op noue: Maak seker dat jy hierdie ingestel op "Vals", anders sal die bestellings wat ons in sal nie verantwoordelik gehou word oor 'n nag betree. Sluit kommissie: In ons voorbeeld, ons nie met die kommissie wat sou gehef word om die ambagte te voer. Dit is 'n effens meer gevorderde onderwerp wat gedek sal word in 'n toekomstige artikel. Na hierdie waardes is ingestel, gaan voort en klik "Run backtest" om dinge te skop af. Na 'n kort tyd, moet jy sien resultate vertoon in die blad Opsomming in die paneel sentrum! Soos jy kan sien, ons strategie was algehele winsgewend gedurende hierdie tydperk (sien "totale netto wins"), die uitvoering van 10 ambagte, 5 waarvan winsgewend was! Neem hierdie sukses met 'n korrel sout al, want daar is baie faktore wat oorweeg moet word wanneer die evaluering of 'n strategie suksesvol sal wees wanneer hardloop teen live data (agterna is 20/20, reg?). Vir meer inligting oor die data wat vertoon word in hierdie rooster, kyk hierdie bladsy NinjaTrader vir dokumentasie. Klik op die blad Grafiek, kan ons 'n visuele represnetation van hoe die strategie se ambagte uitgevoer met verloop van tyd te sien: En deur te kliek "Trades" Ons kan die besonderhede van elke handel wat uitgevoer was te sien: Die gebruik van hierdie gereedskap, kan ons redelik deeglik te evalueer hoe goed ons strategie gedoen sou moes dit uitgevoer is tydens 'n vorige tydperk - wonder bo wonder kragtige! Nou, kom ons sê jy wil 'n Tweak om jou strategie te maak en sien die resultate - dit kan gedoen word deur: Spring terug in die NinjaScript Redakteur Maak die gewenste verandering Weer saam te stel met 'n F5 Kom terug na die strategie Analyzer Regs-kliek = & gt; backtest Hopelik sal hierdie reeks bied 'n Jump Start vir diegene C # ontwikkelaars wat belangstel in outomatiese handel is, maar het aanvaar dat die hekkie te hoog is - dit is regtig baie maklik en gratis om te begin! Daar is beslis nog baie meer om te dek, insluitend Visual Studio ontfouting en Strategie Optimization - hopelik sal ek byvoeg diegene onderwerpe in die toekoms poste!
No comments:
Post a Comment