Jump to content
Co nového? Mé kurzy
Komunita:
Diskuze Sledované příspěvky Žebříčky

Diskuze k článku: Robustnost obchodního systému: Funkčnost na více trzích


Doporučené příspěvky

Honza K.
Já sice psal, že do portfolia řadím strategie podle aktuální výkonnosti, ale je pravdou, že všechny strategie v databázi jsou vysoce ziskové po celé 10ti leté období a to na více trzích. Nevidím nic špatného na tom zapínat a vypínat v portfoliu pro daný trh pouze to nejvhodnější v dané období, jehož délka a frekvence obměny je statisticky zjištěna WFA.

tomnes
Napsal jste to přesně. "Nutnost Tickových dat je až to poslední" Já doplním to poslední ve vývoji strategie, ale nutné. Člověk věnuje tolik úsilí vývoji robustního systému a pak si neověří výsledek s tickovými daty ? ;)

Link to comment
Sdílet pomocí služby

  • Odpovědí 36
  • Vytvořeno
  • Poslední

Nejaktivnější diskutující

Nejaktivnější diskutující

Publikované obrázky

Honza K. "Docela by mě zajímaly reálné výsledky vašeho přístupu (CASB) - vylučujete strategie z obchodování na základě EC curve crossoverů, % drawdownu dané instance nebo jinak? Ovlivňuje výkonnost dané instance position sizing v portfoliu? Moje projekce ukazují, že toto je velmi těžko zvládnutelná část obchodování portfolia, protože se výrazně zvyšuje počet neznámých, s kterými je nutné pracovat... Díky za jakékoliv info."

Reálné výsledky jsou 27% za posledních 7 měsíců. Mám 3% drawdown limit každý měsíc. Zatím sem měl limit pouze jednou. Nepoužívám equity crossovery, % DD ani K% ani nic podobného při skladbě. Má databáze čítá celkem 750statistik, které mám rozděleny do 10ti šablon. V každé portfolio šabloně je okolo 25 strategií a každá samostatně na jednom trhu. Celkem 3-5 trhů. Optimalizuji u všech 25 strategií x 3-5 trhů jediný parametr 0 1. Tzn. strategie je zaplá, strategie je vyplá. Optimalizuji Zisk/MaxDD za období 1-6 měsíců zpětně s 1 měsíčním intervalem. Jakmile je všech 10 šablon vyladěných pro všech 6 kroků, dívám se po strategiích, které dostaly v součtu 6 jedniček :) Vypíšu si je a skládám finální portfolio u kterého již k zap/vyp optimalizuji i objemy.

Je to poměrně primitivní přístup, ale funguje zatím podle mých očekávání... HW mám pronajatý (40 cores intel)

Link to comment
Sdílet pomocí služby

CASB - díky za zajímavé info. 27% za 7 měsíců je velmi dobrá hodnota, pokud obchodujete s 3% limitem DD, gratuluji.

Přemýšlel jste někdy nad tím, nakolik výsledky a celkový DD portfolia ovlivňuje míra korelace mezi jednotlivými strategiemi/trhy, které obchodujete? Moje modely ukazují, že trhy vykazují stále větší míru korelace (alespoň co se týče hlavních futures symbolů) a je čím dál těžší regulovat DD a rizika spojená s vysoce korelovanými trhy.

Link to comment
Sdílet pomocí služby

Honza K. - vysoká míra korelace je poslední roky bolehlav pro více tvůrců portfolia. Je pravda, že některé mé modely mají podobné obchody s vysokou mírou korelace. Více trhů, více timeframe, rozdílné obchodní hodiny, co nejvíce snížit obchodní objemy, co největší databáze systémů... příkládám korelační hodnoty namátkového sub portfolia, některé systémy korelují silně...

20256

Link to comment
Sdílet pomocí služby

Jednoduchá otázka, ne úplně jednoduchá odpověď... No zhruba takhle:

Pokud chcete snížit volatilitu (vyhladit equity křivku), je pro to teoreticky ideální zvolit pokud možno co nejméně korelované strategie na pokud možno co nejméně korelované trhy a nechat to běžet na různých metodách position sizingu a v co největším počtu instancí :-)

A teď praxe - hned první bod je alespoň pro mne obtížný, protože všechno, co mi běží, jsou moje nápady a jak už to tak bývá, i když si to možná nepřipouštíme, vymýšlím prostě furt to, co se navzájem podobá. Aplikuji samozřejmě osvědčené postupy, takže každá moje strategie reaguje na vývoj trhů velmi podobně. Tudíž volím cestu volby vícero trhů a na každém vícero timeframes. Váha jednotlivých TF (position sizing) se mění podle času dne a jistého měření aktuálního volume ve vztahu k předchozímu vývoji. Na delších TF se drží i overnight pozice, ale jsou výrazně redukovány (kvůli slippage a vyšším rizikům / požadavkům na margin).

Čím více korelované trhy jsou, tím více musíte počítat s riziky spojenými s nenadálými událostmi, kdy najednou všechny trhy reagují podobně (i když např. akciové indexy mohou vystřelit dejme tomu nahoru a zároveň bondy logicky dolů - korelace pohybu je výrazná). Pak vám je teoreticky vypočtený model nanic, protože můžete si sice myslet, že není problém mít nasazený plný počet kontraktů, protože jste v situaci, kdy je historicky velmi nepravděpodobné, že dojde k extrémnímu pohybu naráz na všem, kde jste, ale pak se to přesto stane. Pokud používáte dynamické stopy např. na základě předchozího range / volatility, tak se vám může sejít na 10 instancích 10 outlierů a můžete se dostat do problémů. Nedejbože aby zrovna šlo o něco, co se technicky dotýká samotných burz a byl problém se zjištěním stavu vašich příkazů nebo nemožnosti pozice zavřít...

Link to comment
Sdílet pomocí služby

Skvěle napsáno, pokud mohu ještě doplnit, tak pak je dobré používat i určitou "ochranu" v tom, že portfolio bude v jediný okamžik alokovat jen určité MAX% účtu, právě kvůli korelacím. Abychom neměli v jediný okamžik otevřeno do stejného směru příliš mnoho pozic (byť z různých signálů), právě kvůli možná black-swan.

S korelací také bojuji, není opravdu snadné dělat kvalitní diversifikaci. U mě je to tak, že na vývoji AOS spolupracujeme s jedním kamarádem/traderem a v portfoliu mám i jeho strategie. On přemýšlí úplně jinak, má jiné logiky, jiné koncepty a jeho systémy jsou s mými nápady velmi nízce korelované. Mám celkově problém s protitrendovými obchody, které bych do portfolia výrazně potřeboval, pro snížení korelací. Mám už poměrně slušně vyvinuté work-flow pro vývoj robustních trendových AOS, ale u protitrendových stále nemohu narazit na nějakou robustní, funkční logiku.

Link to comment
Sdílet pomocí služby

Jsou tradeři, kteří obchodují pouze protitrendově a statistiky jsou na jejich straně, protože ačkoliv se IMO v naprosté většině publikací píše něco ve smyslu "trend is your friend", tak si to přiznejme, trend se vykytuje na většině trhů do cca 40% času. Ano, pokud jste v trendu, můžete mít vysoký zisk na 1 obchod, ale pak nutně musí dojít k DD nebo si musíte vytvořit filtry, které se snaží mimotrendovému období vyhnout. Což zase přináší úskalí v tom, že řadu trendů minete :-) Osobně preferuji taky trendové obchodování ale živě diskutuju s traderem, který jede vyloženě protitrendově a nestěžuje si. Dosahuje cca 85% win ratio, nicméně je to zase vykoupeno nižšími průměrnými zisky, takže takové číslo potřebuje, pod 80% by se už ocitl ve ztrátě. Je to o stylu obchodování, podle mne je samozřejmě ideální chytat trendy, máme pak menší frekvenci obchodování a tedy více času na jiné věci, méně problematických oblastí spojených se sledováním rychlých obchodů atd. Na druhou stranu pokud si dáte tu práci, tak protitrendové obchodování vás zavede k adrenalinovým timeframes a můžete daleko agresivněji obchodovat vč. position sizingu.

Pokud chcete Tomáši připravit opravdu robustní protitrendový AOS, tak se připravte na hodně programování a připravte si robustnější infrastrukturu, protože pravděpodobně dospějete k tomu, že budete vyhodnocovat jednotlivé komponenty indexů a drobnější odchylky (spready apod.) mezi jednotlivými indexy. Tak to alespoň dělá onen trader, pro obchodování ES vyhodnocuje přes 3000 akcií a parametrů naráz a využívá lokálních "šumů".. Zní to jako definice HFT, ale nedělá to, obchody trvají v řádu minut až desítek minut. Prostě si jde pro cca bod až do nějakých 5 bodů a ví přesně, kam si chce dojít, to já u svých trendových AOS nevím :)

Link to comment
Sdílet pomocí služby

Zdravim,
vidim, ze je tu konverzace na dost jiz vysoke urovni. Zkusim ji narusit nizsi vecmi jako je dotaz ohledne backtestu a realneho obchdovani pomoci AoS. Nejsem profik a tak se zatim prokousavam zacatky. Sice porovnavam robustnost podobne resp stejne podle equity a prihlizim k tomu jak je nutne upravit parametry, aby to sedelo na dany trh. Ovsem pouzivam k tomu program Ninja Trader. Uz v nem umim kde co vcetne kodovani atp. Narazil jsem pri backtestovani na jeden zavazny problem a rad bych se zeptat jak jej zkusenejsi resite.

Problem je v tom, kdyz vyvinete nejaky system, ktery vstoupi a nakoupi kontrakt a pote je nekdy proda at na SL ci na PT, tak vysledky se mi dost lisi v backtestu a v replay data - tedy realita.
Po analyze jsem prisel na to, ze backtest dokaze koupit na short v peaku dane svicky a prodat nekde uvntir svicky. Ovsem v realite se mohlo stat to, ze peak byl az tesne pred koncem svicky a tim padem se k PT na short nikdy nedohrabe. Tim padem nastava problem ten, ze backtest udelal obchod na svicce,ale realita nikoliv.

Uvedu priklad:
svicka je:
open 100
close 80
high 120
low 60
backtest nakoupi na 110 a proda na 90
ovsem v realite kdyz se dostane trh na 120, tak sice jde na short, ale pak klesne na 80 a konci na close. Pote se trebas vyda zase do longu. Tim padem se mi neprovede v realite obchod co na backtestu ano.

Uznavam, ze tento pripad je velice citlivy na svicku atp., ale jedna se mi o principielni reseni pri hledani strategie na backtestu. Dost to komplikuje situaci. Jak jste si poradili s timto? Nebo to je jen problem NinjaTraderu? Zatim to vidim jako obecny problem nezavisly na platforme.

Dekuji za pripadne odpovedi ci zkusenosti

Link to comment
Sdílet pomocí služby

Tomnes: Take v akciovych indexech obchoduju jen breakouty ve smeru trendu a take jsem stravil nemalo usili snahou o nalezeni protitrendoveho algoritmu, ktery vychyta pohyb, kdy se cena vraci k prumeru. Vychazi mi, ze jsou vyrazne rozdily v dynamice jednotlivych trhu. U akciovych indexu je vyrazna ta breakout slozka, kdy cena, pokud se pohnula o urcity kus, ma tendenci jit jeste o kus dal. U jinych trhu, predevsim forex futures, ale i nekterych zemedelskych komodit, mi zase moc nefunguji breakouty, ale krasne tam funguje mean reversion. Tudy se to da diversifikovat. Pohyby v akciich a v menach jsou provazane, nicmene v nekterych trzich se lepe funguji breakouty ve smeru trendu, v jinych opacne pohyby.

Jan

Link to comment
Sdílet pomocí služby

to geniepage:

Pokud jsem to teď po ránu správně pochopil, nevidím v tom problém. Pochopitelně backtest a realita se může (a asi i vždy bude) lišit. Chcete-li mít přesnější výsledky testu, testujte na nižším timeframe, nebo na tickových datech. Tuto záležitost si musíte vyřešit sám. Mimochodem toto už se určitě někde probíralo.

Jen napíšu, že je-li v rámci jedné svíčky zasažena hodnota SL i PT, automaticky beru výsledek jako ztrátový obchod a vstupuji v rámci testu na konci svíčky a tím je vše vyřešeno. Víc není potřeba.

A protože toto je vlákno s názvem "Diskuze k článku: Robustnost obchodního systému: Funkčnost na více trzích", nebudeme zde již více těmito příspěvky rušit a případnou další komunikaci doporučuji přesunout například do vlákna "Jak na BACKTESTING (efektivne&poctive)"

Tom :)

Link to comment
Sdílet pomocí služby

Narazil jste na jednu z hlavních zrádností backtestů obecně. Kdo se přes to už dostal, tak potvrdí, že na to narazili prakticky všichni... Jde o problém, který tu už byl několikrát pospán, při troše námahy si najdete více, zkuste si prohledat moje starší příspěvky, už jsem o tomto psal. Je to problém, který vám dá i odpověď na otázku, zda věřit krásným equity křivkám, které jsou často prezentovány kdekoliv online :)

Link to comment
Sdílet pomocí služby

K té korelaci: Mě se to prostě za cca 2 roky vývoje nepodařilo - setavit několik AOS aby se vzájemně doplňovaly, když má jedno slabších chvilku. Je to skutečně asi tím, že "protitrendové" strategie neumím, a dělat korelaci pomocí jiných tříd aktiv je cesta do pekel, pokud budou aktiva korelovat napříč trhy. Takže fakt nevím.

Link to comment
Sdílet pomocí služby

Na jakých trzích máte postavené své úspěšné AOS? Snažím se vytvořit strategie na forexu a moc se mi nedaří.

Mám definované velké množství proměnných (binárních), které zachycují nějakou situaci v trhu (v podstatě průrazy nějakých hranic cenou nebo indikátorem nebo poloha vůči těmto hranicím). Z těchto proměnných pak náhodně vytvářím vstup a výstup. Postupem času jsem vyvinul v C nástroj, který toto provádí poměrně rychle a efektivně. Rychlost je důležitá kvůli skutečnosti, že 99,99% takto generovaných strategií je odpad - většina z nich není ani zisková, další nesplňují moje podmínky. Mým cílem je z té trošky, co zbyde, vytvořit populaci, kterou budu v dalších generacích zlepšovat genetickým algoritmem. K tomu potřebuji fitness, podle které určím, která strategie je lepší než druhá. A na tomhle místě jsem se trochu zasekl :) Fitness musí být taková, aby její výše na in-sample korelovala s out-of-sample. Testoval jsem některé ukazatele na strategiích v nulté generaci (zatím jen na EUR/USD), abych zjistil, jakých směrem je dobré se vydat v dalších generacích. Sledoval jsem závislost mezi ukazateli na in-sample a poměrem zisk/maxDD (MAR) na out-of-sample. Bohužel jsem žádnou výraznou závislost nenašel, jen takové náznaky - k vyššímu MAR na OOS vedlo vyšší MAR na IS (ale pouze od nějaké hranice, všechny testované strategie měly MAR na IS přes 6), vyšší "equity straightness" (nižší odchylka od přímky), nižší "equity skew" (rozdělil jsem equity na 10 stejně dlouhých (časově) dílů, pak jsem počítal poměr mezi 2 nejziskovějšími a zbytkem). Zkoušel jsem strategie vyhodnotit i na ostatních párech, lehkou závislost jsem našel pouze u MAR na GBP/USD. Mezi počtem obchodů, "jednoduchostí" strategie a MAR na OOS jsem závislost nenašel.

Jaké ukazatele na IS považujete za důležité? Má cenu se snažit o strategie s MAR na IS kolem 15? (Z Tomášových článků jsem usoudil že ano, ale trochu se bojím přeoptimalizace)

Jinak testuji na minutových datech (cca 3 roky IS, 1 rok OOS). Snažím se nastavit ještě težší podmínky než ve skutečnosti, počítám s 4x násobným spreadem, zásah SL má přednost před PT (na stejné svíčce).

Díky za odpovědi

Link to comment
Sdílet pomocí služby


×
×
  • Vytvořit...