Skip to main content

Sistematiese Investor


Tydreeks ooreenstem met Dynamic tyd-buiging DIT IS NIE beleggingsadvies. Die inligting is bedoel vir inligting doeleindes. In die tyd Reeks Matching pos, gebruik ek 12:59 kartering om die bereken afstand tussen die navraag (huidige patroon) en verwysing (historiese tydreekse). Volgende grafiek visualiseert hierdie konsep. Die afstand is die som van vertikale lyne. 'N Alternatiewe manier om die kaart 'n tydreeks na 'n ander is dinamies tyd-buiging (DTW). DTW algoritme lyk vir 'n minimum afstand kartering tussen navraag en verwysing. Volgende grafiek visualiseert een te veel kartering moontlik met DTW. Om as daar 'n verskil tussen eenvoudige een kyk na een kartering en DTW, sal ek soek vir tydreekse wedstryde wat soortgelyk is aan die mees onlangse 90 dae van SPY in die laaste 10 jaar van die geskiedenis is. Volgende kode laai historiese pryse van Yahoo verloofde, setups die probleem en bere Euklidiese afstand vir die historiese rol venster met behulp van die Sistematiese Beleggers Gereedskap: Volgende, laat ondersoek instel na die top 10 wedstryde met behulp van Dynamic tyd-buiging afstand. Ek sal die Dynamic tyd-buiging implementering van DTW pakket te gebruik. Beide algoritmes baie soortgelyk wedstryde en baie soortgelyk voorspellings geproduseer. Ek sou hierdie voorspellings te gebruik as 'n opgevoede raaiskoot te bemark aksie vorentoe gaan. Tot dusver lyk dit of die mark sal nie opgaan in Full Throttle in die volgende 22 dae. Om die volledige bronkode vir hierdie voorbeeld sien, asseblief 'n blik op die bt. matching. dtw. test () funksie in bt. test. r op GitHub. Multi-Asset backtest. Rotasie handel strategieë Ek wil die implementering van Rotasie handel strategieë te bespreek met behulp van die back testing biblioteek in die Sistematiese Beleggers Gereedskap. Die Rotasie Trading strategie skakel belegging toekennings in die hele tyd, weddenskappe op paar top posisie bates. Byvoorbeeld, kan die posisie gebaseer op relatiewe sterkte of momentum. 'N Paar voorbeelde van die Rotasie handel strategieë (of taktiese Batetoewysing) is: Ek wil die Rotasie Trading illustreer met behulp van die strategie ingestel op ETF skerm in die ETF Sektor Strategie post. Elke maand, hierdie strategie belê in die top twee van die 21 ETF's gesorteer volgens hul 6 maande opbrengste. Om die omset, in die daaropvolgende maande die ETF posisies so lank as wat hierdie ETF is in die top 6 rang gehou verminder. Voordat ons hierdie strategie kan implementeer, moet ons twee helper roetines te skep. In die eerste plek kan skep 'n funksie wat die top N posisies vir elke periode sal kies: Volgende, kan skep 'n funksie wat die top N posisies vir elke periode sal kies en bewaar dit, totdat hulle vervolg hieronder KeepN rang: Nou is ons gereed om hierdie strategie te implementeer met behulp van die back testing biblioteek in die Sistematiese Beleggers Gereedskap: Daar is baie maniere om hierdie strategie te verbeter. Hier is 'n voorbeeld lys van addisionele maniere om te oorweeg: Dink aan 'n verskeidenheid van posisie metodes. Maw 1/2/3/6/12 maand opbrengste en hul kombinasies, risiko-aangepaste posisie. Om onttrekkings beheer en verhoog prestasie oorweeg die tydsberekening meganisme soos aangebied in 'n kwantitatiewe benadering tot taktiese Batetoewysing deur M. Faber (2006). Oorweeg 'n ander bate heelal. Sluit ETF wat minder gekorreleer met die ander bates is, soos kommoditeite, vaste inkomste, en Internasionale aandelemarkte. Byvoorbeeld, 'n blik op die enkele land Internasionale Strategie post. Die enigste grens is jou verbeelding. Ek sou ook aanbeveel om sensitiwiteitsontleding doen tydens jou strategie-ontwikkeling om seker te maak jou nie overfitting die data. Om die volledige bronkode vir hierdie voorbeeld sien, asseblief 'n blik op die bt. rotational. trading. test () funksie in bt. test. r op GitHub. Trading behulp GARCH Volatiliteit Voorspelling Quantum vennootskappe skryf 'n interessante artikel Regime Skakel stelsel met behulp van Volatiliteit skatting. Die artikel bied 'n elegante algoritme om te wissel tussen gemiddelde-terugkeer en-tendens volgende strategieë gebaseer op die markonbestendigheid. Twee model word ondersoek: een met behulp van die historiese wisselvalligheid en 'n ander met behulp van die GARCH (1,1) Volatiliteit skatting. Die gemiddelde-terugkeer strategie is geskoei met RSI (2): Lank wanneer RSI (2), en Kort anders. Die tendens volgende strategie is geskoei met SMA 50/200 crossover Lank wanneer SMA (50) & gt; SMA (200), en Kort anders. Ek wil wys hoe om hierdie idees met behulp van die back testing biblioteek in die Sistematiese Beleggers Gereedskap te implementeer. Volgende kode vragte historiese pryse van Yahoo verloofde en vergelyk prestasie van die koop en hou, Mean-Reversion en-Trend volgende strategieë gebruik te maak van die back testing biblioteek in die Sistematiese Beleggers Gereedskap: Volgende, laat ons 'n strategie wat wissel tussen gemiddelde-terugkeer en-tendens volgende strategieë gebaseer op historiese markonbestendigheid. Volgende, laat ons 'n GARCH (1,1) Volatiliteit skatting. Ek sou lees volgende artikels vir almal wat wil om uit te vind wat GARCH is alles oor of om hul kennis te verfris beveel: GARCH (1,1) deur David Harper 'n baie goeie inleidende artikel met baie visuele diagramme. Praktiese vraagstukke in Eenveranderlike GARCH Modellering deur Y. Chalabi, D. Wurtz stap vir stap voorbeeld van gepaste GARCH (1,1) model met volle R-kode. Basiese Inleiding tot GARCH deur Quantum vennootskappe is 'n reeks van poste wat gaan in die besonderhede en aannames van GARCH en EGARCH. Daar is 'n paar R pakkette om GARCH modelle inpas. Ek sal GARCH funksie van tseries pakket en garchFit funksie van fGarch pakket oorweeg. Die GARCH funksie van tseries pakket is vinnig, maar nie altyd oplossing. Die garchFit funksie van fGarch pakket is stadiger maar meer konsekwent konvergeer. Om die spoed verskil tussen GARCH funksie en garchFit funksie Ek het 'n eenvoudige maatstaf demonstreer: Die garchFit funksie is gemiddeld 6 keer stadiger as GARCH funksie. So om wisselvalligheid Ek sal probeer om GARCH funksie gebruik te voorspel wanneer dit 'n oplossing en garchFit funksie anders kan vind. Nou, laat ons 'n strategie wat wissel tussen gemiddelde-terugkeer en-tendens volgende strategieë gebaseer op GARCH (1,1) wisselvalligheid skatting. Die skakel strategie wat GARCH gebruik (1,1) wisselvalligheid voorspelling uitgevoer effens beter as die een wat historiese wisselvalligheid gebruik. Daar baie verskillende benaderings wat jy kan neem om vooruitskatting te neem in jou modelle en handel strategieë. R het 'n baie ryk versameling van pakkette te modelleer en voorspel tydreekse. Hier is 'n paar voorbeelde wat ek interessant gevind het: Mark voorspellings vir die jaar 2011 en 2012 deur Pat Burns gebruik GARCH (1,1) om die betekenis van die mark voorspellings ander mense se kalibreer. ARMA Models vir Trading deur die gemiddelde belegger is 'n reeks van poste wat wys hoe om volgende dag opbrengste met behulp ARIMA en GARCH modelle voorspel. Wonderlike nuwe blog TimeSeriesIreland by Tydige Portefeulje gebruik EGRACH te handel model te skep. Vooruitskatting in R: Die Grootste kortpad wat versuim het om die Ljung-Box gebruik ARIMA modelle tot die BBP voorspel. Om die volledige bronkode vir hierdie voorbeeld sien, asseblief 'n blik op die funksie bt. volatility. garch () in bt. test. r op GitHub. Kalender Strategie: Maand Einde Kalender Strategie is 'n baie eenvoudige strategie wat koop 'n verkoop by die voorafbepaalde dae vooraf bekend. Vandag wil ek om te wys hoe ons maklik kan ondersoek prestasie op en rondom Maand Einde dae. Eerste laat laai historiese pryse vir SPY van Yahoo verloofde en bereken SPY perfromance op die maand-eindig. Maw strategie sal 'n lang posisie oop aan die einde van die 30ste en verkoop posisie aan die einde van die 31ste. Let asseblief daarop dat bogenoemde, in die bt. run. share oproep, het ek do. lag parameter gelyk aan nul (die standaard waarde vir die parameter do. lag is een). Die rede vir verstek gelyk aan een is te danke aan sein (besluit om handel te dryf) is afgelei met behulp van al die inligting wat vandag beskikbaar is, sodat die posisie kan slegs implementeer volgende dag. Maw Maar in die geval van die kalender strategie is daar geen behoefte om sein lag, want die dag handel vooraf bekend is. Maw Volgende, ek geskep twee funksies om te help met sein skepping en strategie toets: Bo, T0 is 'n kalender strategie wat koop op 30 en verkoop op 31. Maw posisie is net wat op 'n maand einde dag. P1 en P2 is twee strategieë wat 'n dag voor en twee dae voor dienooreenkomstig te koop. N1 en N2 is twee strategieë wat 'n dag te koop nadat twee dae nadat dienooreenkomstig. Die N1 strategie, koop op 31 en verkoop op die 1ste volgende maand lyk om saam te werk die beste vir SPY. Ten slotte, kan kyk na die werklike ambagte: Die V2 strategie gaan posisie aan die einde 3 dae voor die einde van die maand en uitgange posisies aan die einde 2 dae voor die einde van die maand. Maw die prestasie is te danke aan opbrengste net 2 dae voor die einde van die maand. Met hierdie post wou ek om te wys hoe maklik ons ​​kalender strategie prestasie kan studeer met behulp van die Sistematiese Beleggers Gereedskap. Volgende, sal ek kalender strategie aansoeke te demonstreer om verskillende belangrike datums. Om die volledige bronkode vir hierdie voorbeeld sien, asseblief 'n blik op die bt. calendar. strategy. month. end. test () funksie in bt. test. r op GitHub. stogastiese ossillator Ek het afgekom op die skakel na die John Ehlers papier: Predictive Indicators vir Doeltreffende handel strategieë. terwyl die lees van die Dekalog blog. John Ehlers bied 'n ander manier om pryse te stryk en inkorporeer die nuwe filter in die ossillator konstruksie. Gelukkig is die EasyLanguage kode ook verskaf en ek was in staat om dit te vertaal in R. Tydreeks Matching DIT IS NIE beleggingsadvies. Die inligting is bedoel vir inligting doeleindes. Wil jy weet wat SP 500 sal doen in die volgende week, maand, kwartaal? Een manier om 'n opgevoede raaiskoot te maak, is om soortgelyk aan die huidige markomgewing historiese tydperke vind, en kyk wat gebeur. Ek sal hierdie proses tydreekse bypassende bel, maar jy kan 'n verwys as tegniese patrone en fraktale soortgelyke tegnieke vind. In 'n sekere geur oor fraktale kry, volgende is twee artikels wat ek onlangs gelees het fraktale: Ek beveel die lees volgende artikel oor die tydreeks wat ooreenstem met verskillende benaderings verstaan: Ek sal 'n eenvoudige metode in die geskets Hoe om te versnel Model Deployment behulp Rook deur Jean-Robert Avettand-Fenoel artikel om tydreekse wedstryde wat soortgelyk is aan die mees onlangse 90 dae van SPY is te vind gebruik. Volgende kode laai historiese pryse van Yahoo verloofde, setups die probleem en bere Euklidiese afstand vir die historiese rol venster met behulp van die Sistematiese Beleggers Gereedskap: Volgende, kan kies die beste 10 wedstryde om die navraag patroon in die SPY geskiedenis: Volgende, laat trek al wedstryde met die soektog patroon en hul historiese prestasie te ondersoek ná die wedstryd plaasgevind het: Volgende, kan opsom al wedstryde prestasie in 'n tabel: Die Tyd Reeks ooreenstem analise kan gebruik word om 'n opgevoede raaiskoot wat SP 500 sal doen in die volgende week, maand, kwartaal te maak. Dit opgevoede raaiskoot is gebaseer op historiese data en daar is geen waarborg dat die geskiedenis homself sal herhaal. In die volgende pos sal ek ander afstand maatreëls vir tydreekse Matching ondersoek en ek sal 'n voorbeeld van Dynamic tyd-buiging wys. Om die volledige bronkode vir hierdie voorbeeld sien, asseblief 'n blik op die bt. matching. test () funksie in bt. test. r op GitHub.

Comments