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

Diskuze k článku: Genetické algoritmy: K čemu jsou pro trading dobré?


Doporučené příspěvky

tomnes:
ad 3) „Jak definujete pro své potřeby "edge", tj. předpoklad, že se jedná opravdu o výhodu v trhu a ne chvilkovou anomálii?“

Zajímavá a dobrá otázka. Předně si myslím, že není třeba vymýšlet si svůj vlastní obsah (definici pro své potřeby) pro tohle běžně používané slovo. Nahlédnutím do Oxford Advanced Learner’s Dictionary nebo do jakéhokoliv slovníku každý zjistí, že slovo „edge“ má z pohledu tradingu dvě hlavní kategorie významů:

1) výhoda – mít výhodu („have the edge“)
2) hrana – vnější hranice objektu, plochy, povrchu; část nejvzdálenější od středu; bod zlomu; ostří; hřbet

Obě kategorie významů velmi dobře vystihují co je edge a stojí za to chvíli nad nimi popřemýšlet. Trochu to rozvedu:

ad Výhoda – z tohoto pohledu je edge cokoliv, co nám dává výhodu, tj. šance na úspěch jsou na naší straně. Pokud si představíme takové ty miskové váhy, co má v ruce socha znázorňující slepou spravedlnost, tak pokud jsou naše šance na úspěch 50:50, tak jsou váhy v rovnováze. Na jedné misce je naše šance na úspěch a na druhé její doplněk tj. šance na neúspěch (úspěch protivníka, trhu, ...). Edge je potom jakkoliv nepatrné závažíčko, položené na naší misce úspěchu. Čím větší závažíčko edge, tím lépe, ale na principu to nic nemění – buď máte edge na své misce a váhy se vychýlí na vaši stranu, nebo ho nemáte, resp. má ho druhá strana, a misky se vychýlí na opačnou stranu. Na velikosti v tomto případě nezáleží – odtud věty typu “Buď váš systém edge má nebo nemá”, “Pokud nemáte edge, nic vám nepomůže” apod. V praxi ale vzhledem k poplatkům a spreadu, zpoždění dat apod. jsou počáteční šance mírně v náš neprospěch, takže malé edge ještě nemusí znamenat převážení na naší stranu. Získat výhodu můžete z mnoha různých zdrojů a protože jde většinou jen o malé výhody, je potřeba jich několik použít současně v synergii. Tenhle význam slova edge je zřejmý a každý ho zná.

ad Hrana – tohle už je zajímavější souvislost. Souvisí mimo jiné s výroky typu „Edge je něco, co odděluje vítěze od poražených (nebo funkční systémy od nefunkčních)“. Důležitá je ale jiná souvislost tohohle významu. Bez ohledu na to jaké/á edge využíváte a z jakých oblastí, důležitým a nevyhnutelným důsledkem přítomnosti edge bude vždy tohle:

Čím větší je vaše celkové edge, tím přesnější bude vaše načasování vstupů a výstupů vůči bodům obratu ceny (k vrcholům cenových swingů). Ekvivalentně platí: čím větší celkové edge, tím větší profit faktor. Mít edge pak znamená doslova být (exekuovat příkaz) na hraně / vrcholu, resp. co nejblíže k ní.

Pokud jde o to jak rozpoznat jestli systém má edge nebo je to anomálie, tak odpověď je v mém dřívějším příspěvku viz
www.financnik.cz/forum/read.php?23,176881,176915#msg-176915

Záleží jakým způsobem byl systém vytvořen. Pokud podle 1) nebo 2), tak to vím. Pokud podle 3) nebo 4), tak to nikdy vědět nebudeš a musíš jen doufat viz další můj příspěvek www.financnik.cz/forum/read.php?13,175438,176494#msg-176494

Link to comment
Sdílet pomocí služby

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

Nejaktivnější diskutující

Nejaktivnější diskutující

Publikované obrázky

tomnes:
ad 1) viz můj přístup k navrhování systémů (linky uvedené v minulém příspěvku)

ad 2) „Jak řešíte DD - stanovujete si nějaký předpoklad hranic DD do budoucna? Např. MonteCarlo, apod? Osobně se domnívám, že jedna z nejtěžších otázek u AOS je umět zodpovědět, kdy AOS vypnout (právě proto, že žádné edge netrvá věčně). V případě stavby systému bez key edge ani nemluvím. Stanovení post-optimalizačního risku chápu jako kriticky důležité.“

Moje AOS mají stálé edge které znám viz metody vytváření, proto neřeším otázky typu kdy ho vypnout až asi přestane fungovat. Pro mě DD není způsoben ztrátou edge (statisticky zůstává edge kladné, jen trochu fluktuuje) ale pouze náhodou tj. nepříznivými podmínkami, které mají za důsledek ztrátu. DD a vypnutí AOS řeším v rámci risk managementu, nemám žádná pravidla ve stylu „Když bude DD takový, tak systém vypnu protože je asi na nic“ ale mám pravidla typu „Když poklesne stav přidělených peněz pro tento AOS pod určitou mez, tak systém vypnu, protože nemám dostatečný kapitál pro jeho další obchodování a musím dodat peníze odjinud.“. Pravděpodobnost že se to stane mám nastavenu na 1-5%. Ilustrační případ: řekněme že mám AOS, který je z principu celkem úspěšný pokud má den rozpětí mezi HoD a Lod větší než třeba 200 USD, naopak pokud je rozpětí dne menší, tak je téměř jistá ztráta. „Podívám se na graf“ a mrknu jaké je rozložení takových dnů a vidím, že jich je celkem třeba 10% ze všech dnů a že byly maximálně 4 takové dny za sebou. Nastavím si pak risk parametry tak, abych vydržel třeba 15 takových dnů za sebou. Důvod: extrémně malé rozpětí dne má nějaký svůj důvod a je velmi nepravděpodobné, že by ten důvod vydržel 15 dnů v kuse.

Monte Carlo jsem používal, ale je to jako se vším – musíte vědět co vám ty hodnoty vlastně říkají a mnohem důležitější – co vám naopak zamlčují. Mimochodem NinjaTrader 7 má zabudovanou taky možnost použít MonteCarlo.
K tomu že žádné edge netrvá věčně bych měl výhrady. Je mi jasné, že to říkáte na základě svého kontextu, svého pohledu na věc, také záleží jak si definujeme slovo věčně. Některá edge netrvají věčně, ale některá ano. Když změníte úhel pohledu, zjistíte že není pravdivé (v novém kontextu). Ta „věčná“ edge jsou založena jak už jsem říkal na principech, které se nemění (a ani se z principu změnit nemohou), namísto edge založených na něčem, co se mění – taková také existují, ale mají omezenou životnost. Také by šlo edge rozdělit je na „robustní“ a „křehké“. Ty s neomezenou platností jsou robustní v čase protože nezmizí ani když je bude znát široká veřejnost (a taky je zná, ale v drtivé většině ignoruje). Nic vám ale nechci podsouvat, je to jen moje zkušenost proti vaší. Pokud je kdokoliv přesvědčen, že trvalá edge neexistují, pak se pochopitelně ani nesnaží je hledat (hledá svá dočasná edge někde jinde) a pravděpodobně je ani nenajde tj. neuvědomí si to ani když o ně zakopne, nebo je využívá a neví o tom.

Stanovení risku (post-optimalizačního) je kriticky důležité, s tím souhlasím. Stejně tak jako mít dostatečné edge.

ad 4) „Jak posuzujete robustnost systému?“
Robustnost je široký pojem, související s mnoha částmi systému, procesem návrhu i procesem obchodování. Obecně jde hlavně o jednoduchost a o malou citlivost na změnu nějakých podmínek.

Nemám žádný algoritmický postup (checklist) na posuzování robustnosti, takže jen pár útržků: nepoužívat časové bary, používat co nejméně pravidel pro rozhodování, co nejméně filtrů, co nejméně parametrů systému, co nejméně optimalizace (ideálně žádná), co nejméně historických dat pro rozhodování, při rozhodování a reakci maximálně snížit zpoždění. A samozřejmě vědět proč by systém měl fungovat a jestli můžu počítat i do budoucna, že to bude fungovat, systém založený na nějaké logice, nikoliv na výsledku statistik, nepoužívat nějaké „pevně“ zadrátované konstanty, ze statistického hlediska pak intervaly spolehlivosti, MonteCarlo výsledky apod.

Link to comment
Sdílet pomocí služby

tak prispejem, niekto na prvej strane spomenul PA a patterny na nom,

ako programator som sa zacal zaujimat o ne uz davnejsie, islo mi hlavne o mechanicky 100% jasnu situaciu a preto som si vytvoril program na testovanie roznych poloh HLC, program teda skusal ci napriklad 3x zatvorenie vyssie nieco znamena alebo 3x nizsi low alebo inside den +nieco .. atd tych kombinacii je vela a 10 rocne data obsahuju cez 3000 dni

nakoniec som ale narazil na pekne patterny o ktorych som sa nikdy nikde nedocital (teda larry ma inspiroval samozrejme no predsa su ine ako jeho)
...
je stale tolko veci co sa chcem opytat (na trh) ale casu mam malo takze sa tesim uz na leto kde dorobim dalsie programy

zatim.

Link to comment
Sdílet pomocí služby

Heron,

děkuji za odpovědi.
Jak jste sám naznačil, mé aktuální poznatky a reálné zkušenosti jsou ve stádiu, kdy nemohu souhlasit s určitými částmi, které píšete. Ale zcela respektuji fakt, že v oblasti AOS máte jednoznačně za sebou delší praxi a zkušenosti, takže vaše komentáře určitě beru jako inspiraci a podněty k dalšímu zamyšlení.

Děkuji a přeji hodně úspěchů,

Link to comment
Sdílet pomocí služby

tomnes:
OK, žádný problém. Patrně nesouhlasíte především s existencí trvalých edge. Pokusím se trochu nastínit můj úhel pohledu (nikoliv vás přesvědčovat).

Představte si cenový graf se zakreslenými swingy (třeba tickový nebo range bars). A teď pár frází a řečnických otázek:

- „Cut your losses short, let your profit run“ – myslíte že když to budete dělat naopak že bude váš systém lepší než když to budete dodržovat? Že braní profitu ihned, jakmile jsem 1 tick v zisku a ztrátu nechat běžet ideálně až do margin callu bude lepší přístup?

- „Trend is your friend“ – myslíte že je lepší brát obchody ve směru trendu nebo proti? Pokud trend začal na ceně třeba 1000 a končí zatím na ceně 1500, tak ať má kolik chce swingů, vždy bude součet impulzních částí větší než součet korekčních částí, jinak by cena namohla být o 500 výše. Pokud zázračně vychytám vrcholy všech impulzů i korekcí, budu mít větší zisk na longových nebo na shortových obchodech?

- „Don’t chase the market“ – pokud mám třeba vzestupnou část swingu, myslíte že je lepší vstoupit do longu co nejblíže ke dnu (na začátku swingu), nebo až poté co už cena urazila pořádný kus cesty nahoru? Protože ta vzestupná část jednou skončí, část kterou využiji bude vždy menší, čím později budu vstupovat (a vystupovat).

- „Don't Catch a Falling Knife“ , „„Don't Try Catch Top/Bottom“ – je lepší vstupovat do longu když cena klesá, nebo když už se otočila a začala růst Jaké je riziko a profit margin?, Kde je nejmenší riziko a největší profit margin?

- „Kupuj dole (levně), prodávej nahoře (draze)“ – myslíte že je lepší dělat to naopak?

- „Supporty a rezistence“ – je lepší nakupovat na supportu nebo prodávat, obzvlášť pokud cena při cestě k němu urazila už pěkný kus dolů? A je lepší naslepo typovat jestli dojde k odrazu nebo k prolomení S/R, nebo počkat jak cena zareaguje a podle toho si vybrat.

- Když je na bidu 100 kontraktů a přijde sell market příkaz na 200 kontraktů, myslíte že se cena posune dolů nebo nahoru?

- Neriskujte více než cca 2% kapitálu na jeden obchod – myslíte, bude trvat delší dobu nebo kratší dobu než smažete účet, když budete riskovat 25% účtu na jeden obchod?

- ... atd. atd. ...

Myslíte, že tyhle staré fráze jsou naprosto bezcenné a neužitečné? Myslíte, že když to budete dělat opačně než vám doporučují, že to bude výrazně lepší (nezávisle na konkrétní metodě)? A především, myslíte si, že to časem přestane fungovat a bude lepší to dělat naopak, že to přestane fungovat když o tom budou lidi vědět? Myslíte, že znalost toho jak a proč se cena mění je k ničemu, a že pokud nebudete rozumět jak trh funguje, že to bude lepší nebo horší pro vás? Myslíte že když je teď cena za 500 a za hodinu bude 700, že je možné aby přitom neprošla oblastí mezi 550-650 (neuvažujme gap)?

To co jsem uváděl samozřejmě nejsou edge. Jsou to pouze zásady, kontext, úhel pohledu. Pokud budete brát tento kontext v úvahu, pak se dá při (někdy dost velké) troše námahy přijít na to jak udělat AOS tak, aby v co možná nejvyšší míře (nebo aspoň v dostatečné) vyhovoval těmto a jiným užitečným zásadám. Musí se přijít na to, jak to prakticky implementovat, protože nevidíme do budoucnosti. Cena ale v některých místech nemá 50/50 šanci kterým směrem se vydá. Pokud k tomu dobře a rychle reagujete, dá už se s tím něco podniknout.

Je to trochu jiný přístup k návrhu systému, než prohánět kombinace dat, indikátorů apod. Je možná pracnější, staromódní, má své výhody i nevýhody, ale to už je každého volba. Každému vyhovuje to, co je jeho povaze blízké.

Také vám Tomáši přeji hodně úspěchů.

Link to comment
Sdílet pomocí služby

PS: Ještě obrázek pro lepší představu - chci zobchodovat long část swingu mezi D a F. Kde mám vstoupit a vystoupit, jak vypadá velikost SL, který mě udrží po vstupu v long pozici, jak je velký potenciální profit margin, ze kterého můžu určitou část využít? Jedná se pochopitelne o ex post analýzu, v praxi do budoucnostii nevidím, ale na principech to nic nemění.

15887

Link to comment
Sdílet pomocí služby

Pekny clanek a podnetna diskuse...chybi mi jen striktnejsi oddeleni genetickych algoritmu pro optimalizaci (hledani maxima fitness funkce N promennych) a tzv. genetickeho programovani (automaticke vytvareni strategii)...jsou to podobne, ale v dusledku zcela odlisne technologie.

Koho zajima GP a jeste necetl, doporucuji tohle forum:
www.forexfactory.com/showthread.php?t=167720

Link to comment
Sdílet pomocí služby

Heron,

děkuji. Inspirativní příspěvek pro všechny. Opět nemohou než souhlasit, ale opět "jen" na 80% (i protitrendové obchody je možné inteligentně uchopit), ale v principu rozumím, kam míříte - a samozřejmě jsou to správné otázky. Určitě je vždy inspirující číst úhly pohledu vycházející z letitých zkušeností jiných obchodníků, sám bych byl rád, kdyby takových diskuzí bylo zde na Finančníkovi více - určitě by to obohatilo všechny navzájem ;)

Link to comment
Sdílet pomocí služby

Pro Tomáše z fin.

Možná je to off-topic a už jste to již vyřešil ale v nějaké diskuzi jste se ptal na nějaké řešení, co se týče více jader a lidé doporučovali serverové řešení. Možná by Vás zaujímala tato základní deska EVGA Classified SR-2, která má 2sloty na procesor a myslím, že přímo i pro Váš typ procesoru. Tak zde by již pro Vás, byl dle mého, výkon Vaší sestavy mnohem větší, jelikož kdyby jste jej osadil ještě jedným procesorem měl by jste 24jader k dispozici. Na výpočty mnohem lepší co říkáte? Jak říkám, pokud máte již vyřešeno tak se omlouvám za spam (tu)

Link to comment
Sdílet pomocí služby

deluxe:
Tak i tak. Čistý cenový graf je jednotickový. Když vezmete jeden desetiminutoý úsek tohoto jednotickového grafu (jedna svíčka na 10 M grafu), tak máte nějaké open, high, low, close hodnoty. Je to takové okno, kterým se díváte na ticková data. Pokud to okno mírně posunete o pár milisekund / sekund / minut – např. problém se zpožděním dat, synchronizací času a pod., tak open a close toho desetiminutového okna se změní (někdy hodně), zatímco high a low tohoto nového desetiminutového úseku většinou zůstane stejné. High, low nějakého časového úseku nebo mid mezi nimi má mnohem větší stabilitu vůči posunu času, než arbitrárně zvolený tick s vybranou časovou známkou pro open a close.

Kromě toho já pro svůj zisk potřebuji rozdíl v ceně, nikoliv rozdíl v čase. Monitoruji co dělá cena a je mi jedno kde se přesně nachází v okamžik, kdy na hodinách ukazuje ručička na nějaké číslo. Některé z mých intradenních AOS nemonitorují a nereagují na každý tick (např. posun SL nebo limitního příkazu po každém ticku), protože je tady jednak problém s tím, že broker má limit pro velikost „Order Efficiency Ratio“ a jednak je to pro mě i z důvodu strategie zbytečné. Monitoruji a reaguji poté, co cena urazí nějakou předdefinovanou vzdálenost (range bars, renko) na close každého baru (u RB je to vždy high, nebo low). Někdy totiž za minutu (nebo třeba 10M) urazí cena pořádný kus cesty a já bych musel obchod odpískat, protože mi ujel. Totéž pak když jde cena proti mně – potřebuji reagovat když se cena někam dostane, ne se dívat a čekat až bude ručička na hodinách na dvanáctce (pokud používám market příkazy).

Pokud potřebuji momentum cenového pohybu, není problém – měřím čas, jak dlouho trvá vykreslení každého baru a pak udělám průměr z několika posledních barů a vidím, jestli se cena hýbe pomalu nebo rychle. Takže informaci o čase neztrácím, jen můžu reagovat rychleji – tak jak to ve strategii potřebuji. Ne moc rychle (každý tick) a ne moc pomalu (např každých x minut).

Link to comment
Sdílet pomocí služby


×
×
  • Vytvořit...