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

Predikce časových řad


Doporučené příspěvky

No, s tim nejhorsim vysledkem jsem to tak mel presne udelane ze zacatku a tezce jsem s tim narazil...bohuzel, kdyz se nad tim clovek zamysli vic, tak pochopi, ze to neni rozumne to takto delat. Geneticky algoritmus najde dobra reseni, pouze pokud je postaven nad rozumnou fitness funkci, ktera zohlednuje zlepseni/zhorseni jednotlivych reseni, jedine pak muze konvergovat. Problem je, ze na jedne z tech sesti mnozin je treba hromada fundamentu, ktere stejne predikovat nejdou a fitness te mnoziny bude nic moc. Pokud geneticky algoritmus uvidi pouze nejhorsi vysledek (=tento), tak se nebude moct nijak dovedet o tom, ze fitness na ostatnich peti mnozinach je mozne jeste vyrazne zlepsit. Proste nebude konvergovat. Takze ten prumer neni idealni, ale nic lepsiho me zatim nenapadlo.

Ad mnoziny - ano, kazda validacni mnozina obsahuje jiny vysek 4h grafu, trenovaci mnoziny se prekryvaji.

Ad mixovani ruznych TF - s ruznymi TF si chci nejspis hrat zatim separatne, zkousim obcas i 1h TF, ale je o neco slozitejsi. S tim zkousenim na ruzne trhy jeste uvidim, mozna to taky zkusim, dik za poznamku. Ale obavam se, ze se data jednotlivych trhu budou lisit az prilis, takze i nastaveni to bude chtit jiny. Ale casem vyzkousim.

Link to comment
Sdílet pomocí služby

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

Nejaktivnější diskutující

Nejaktivnější diskutující

Publikované obrázky

"Předvídacím" obdobím jsem si také prošel. Dnes jsem k predikci spíš skeptický. Možná jsem nešel dost hluboko, ale vidím dva velké problémy (z mého pohledu nepřekonatelné):
- curvefitting - netřeba rozebírat
- přechod od modelu, který už náhodou v out-of-sample cosi ukazuje, k obchodní strategii. Jakou má souvislost MSE s drawdownem, například? Je důležitější první, nebo druhé?

Zabývám se teď genetickým programováním, které mi ve spojení s obchodováním dává větší smysl, než predikce ceny. Fitness funkci si můžu nadefinovat zcela libovolně - tak, aby měla spojitost s realitou, a ne nějakým virtuálním problémem (tzn. tak, aby lepší hodnota fce = lepší strategie). Do funkce můžu zahrnout cokoliv - drawdown, počet obchodů, rozptyl výsledků obchodů atd. Rozdíl mezi in-sample a out-of-sample zde samozřejmě také existuje, ale tak nějak si myslím, že strategie s výbornou fitness v in-sample má větší šanci nebýt propadákem v out-of-sample, než perfektně naučený predikční model.

K prozkoumání genetického programování mě inspirovalo tohle vlákno: www.forexfactory.com/showthread.php?t=167720 (hodně se tam řeší programátorské a technické věci obecně, nenechte se tím otrávit)

Link to comment
Sdílet pomocí služby

Muzu se zeptat, jake technologie jste pro predikce pouzival?
- ad overfitting - nevidim zatim az tolik jako problem, pokud jste pri navrhu systemu dusledny a nekompromisni, vyhnul bych se zastaralym technologiim jako klasickym NN a podobne
- model vs. strategie - souhlasim, tohle je pomerne velky problem - imho nejlepsi je pri predikci optimalizovat MSE, DD se resi az pri navrhu strategie a zcela zasadni vliv ma position sizing, ktery by mel byt pomerne chytry....souvislost mezi MSE a DD neni moc zrejma....muj cil je predikce s co nejlepsim NMSE v out-of-sample, nad tim uz nejakou strategii pujde postavit

Geneticke programovani (hlavne LAIMGP) je pro me ultimatni technologie na predikce i auto-trading vubec, bohuzel zadne free implementace LAIMGP jsem nevidel, komercni SW je silene drahy, a neco programovat sam v tomto ohledu bych sice zkusit chtel, ale bude to extremne casove narocne....

Mozna vyzkousim trial verzi software Discipulus ciste na ty moje predikce, abych to porovnal se SVM

Link to comment
Sdílet pomocí služby

Jak jsem psal, moc hluboko jsem nešel, zkoušel jsem lineární regresi a NN (feed forward).
(minutová data, vysvětlovaná proměnná (t+10)-t, (t+15)-t, vysvětlující proměnné (t-avg())/ std() za různé periody, různé měny a páry (zabývám se forexem), klouzavé okno).

Nejsem programátor, používám a upravuju gplab (free toolbox do matlabu). Fitness funkcí optimalizuji celé strategie. Ale jsem teprve na začátku, zatím jsem rád, když dokážu upravit původní kód.

Co je LAIMGP? Google davá odkazy jenom na tradingsystemlab

Link to comment
Sdílet pomocí služby

Tak v tom pripade nejsem prekvapen, ze se Vam vysledky nelibily - Vami zminene technologie by me ani nenapadlo zkouset. A uz vubec ne na minutovych datech....tak primitivni technologie proste na predikci casovych rad forexu jednoduse nestaci...Respektive FF NN by to mozna zvladla na dennich nebo 4h datech, ale u NN je proste hromada problemu, ktere Vam brutalne zkomplikuji zivot (curse of dimensionality, nejjednoznacnost reseni, nezarucena konvergence ke globalnimu reseni, spatna odolnost proti sumu)...

LAIMGP znamena "Linear, Automatic Induction of Machine Code with Genetic Programming Engine" - v podstate to znamena to, ze engine generuje primo instrukce mikroprocesoru v pameti a pak je spousti v nativnim rezimu - diky tomu je tato metoda vic nez o rad rychlejsi nez metody ktere generuji pseudo instrukce a pak nad nimi emuluji beh. S LAIMGP muzete mit populaci velikosti klidne 500 000 jedincu a stale vam vykonove staci normalni domaci pocitac.

Link to comment
Sdílet pomocí služby

Zdravím,
No, asi vás nepotěším, ale zatím jsem se dostal spíše k problémům než k výsledkům. (hm.. neměl bych si změnit nick..)
Nicméně, na základě mých zkušeností bych si dovolil vyjádřit se k jednotlivým bodům.
- co predikovat (jake vystupy), jak na predikovanych hodnotach zalozit strategii
To je kardinální otázka. V akademických kruzích se predikuje vývoj ceny, v nejjednodušším případě zda cena půjde nahorů nebo dolů. Nicméně toto tradera až tak moc nezajímá. Obecně jsou 2 přístupy: 1) mít fixní délku obchodu =1 timeframe a predikovat co udělám v následujícím timeframe (1: long, 0: nic, -1: short), při čemž obchod musím v daném timeframe i uzavřít. 2) predikuji oblasti vstupu a výstupu kdy délka obchodu je pohyblivá.
- jake vstupy pouzit pro predikce, jak je vybirat
Na to se nejčastěj používají technické indikátory a jejich kombinace. Některé metody vyžadují aby byly vstupy normalizovány (-1;1), což se dá udělat různým způsobem. Vstupy se vybírají na základě vztahu k targetu (korelace, střední vzájemná informace)
- jak preprocessovat vstupy (normalizace, pre-clustering)
Já používám jistý druh normalizace
- jake metody funguji, jake nefunguji (ARIMA, regrese, neuronove site, SVM/SVR, gamma networks, genetic programming)
Zkoušel jsem všechno kromě GA. Perspektivní jsou NN, SVM, a stromy. U NN zvláště dynamické varianty neuronových sítí. Viděl jsem i kombinace SOM+regrese
- jak nejlepe ocenit vykon predikcniho systemu (cost functions - MSE, NMSE, DS)
To je vedle tvorby targetu druhá kardinální otázka. Pamatujte že predikuji -li vstup do long, tak chyba má jinou hodnotu je li skutečnost lepší než očekávaná (trh jde mým směrem ještě dál) než opačný vývoj. Nicméně MSE, MAE mohou být v obou případech stejné. Kdyby člověk uměl programovat natolik aby do metod mohl dát uživatelem definovanou chybovou funkci.... to by bylo !
- softwarove reseni (implementace), software pro datamining a AI-based trading (Neuroshell trader, KXEN, Synapse)
U většiny programů vidím jako problém spojení predikčního mechanismu s trading mechanismem. Používám Matlab. Máte -li někdo k dispozici KXen tak mi prosím písněte...
- hybridni architektury a zkusenosti s nema (SOM+SVM, multi-level SVM)
Zkoušel jsem klasiku SOM+regrese, nic moc...

Link to comment
Sdílet pomocí služby

to Sals:
Jak to vypadá s vývojem? Pohnul jste se někam dále?

to Flakac:
Nebude celý zakopaný pes v přípravě dat? Jaké postupy jsi zkoušel v tomto směru?


Jinak ja se pomalu, ale jistě prokousávám pythonem, do konce vikendu chci mit hotový první klasický backtest s pomocí objektového programování a co nejdříve snad začnu s něčím smysluplným.

Ať se daří. Honza

Link to comment
Sdílet pomocí služby

fxmagico: Ja jsem tedka zkousel ruzne dalsi postupy na vylepseni predikce - hybridni SVM architekturu (mam zatim jen predbezne vysledky na validation mnozine), pokusil jsem se do SVM doimplementovat DTW kernel (Dynamic Time Warping) a upravil svuj framework pro jeho podporu - bohuzel, silene pomaly i na osmi jadrovem stroji, po cca 20 iteracich jsem to vypnul - vysledky nic extra zatim, spis se k tomu vratim pozdeji...dal jsem zacal cist materialy o SOM a 2 hodiny stravil kompilaci referencni implementace....

Mam problemy s vykonem a nedostatecnou flexibilnosti sveho testovaciho frameworku, rozhodl jsem se to cely prepsat tak, aby si to umelo samo natahnout a cacheovat historicke data a vylepsim podporu pro multi processing (tu mam dost osizenou, hlavne aby to mohlo bezet a vice strojich).

Link to comment
Sdílet pomocí služby

to Sals:

Tak backtest s pomocí objektů mám hotový :) a pustil jsem se do zkoumání jak to provedu stím SVM a genetikou.
Zřejmě idální by bylo použít "toolbox" z těchto stránek: www.csie.ntu.edu.tw/~cjlin/libsvm/ každopádně když jsem se tím snažil prohrabat tak teoretickému textu rozumím, ale s praxí je to horší hned v tom prvním pdf pro začítečníky na začátku stránky maji sice na konci nějaké ukázky, ale ty jsem vubec nepochopil jak bych podle toho měl něco vytvořit. Vcelku seriozně vypadají tyto podklady: scikit-learn.sourceforge.net/#user-guide , ale těmi jsem ještě neměl čas se prohrabat. Jaké podklady a připaně "toolbox" používáte? Děkuji.


to Radim:

Jen jednoduchá myšlenka, myslíte si, že když dnes trh půjde vůči své stávající volatilitě extrémně dolu či nahoru tak bude zítřejší pohyb zcela nepredikovatelný? Nepromítne se náhodou dnešní pohyb do určité míry v zítřejším chování lidí, když někteří inkasovali extra zisky a jiní extra ztráty?

Link to comment
Sdílet pomocí služby

radim2 Napsal:
-------------------------------------------------------
> Nechci vám do toho kecat, ale jak chcete
> algoritmicky předvídat chování lidí na trhu.
> Protože to je to, co hýbe s cenou, ne historická
> data (tvar křivek), ale nálada obchodníků a jejich
> reakce na fundamenty.
> Tohle přece nemůžete předpovídat algoritmem...
>

Ano, s cenou hybou obchodnici a jejich reakce na fundamenty, ale vseobecne se predpoklada (stoji na tom cela TA), ze jejich chovani vytvari v case take urcite opakujici se vzory (do jiste miry, samozrejme). Kdyz se podivate treba na intradenni graf EURCHF na forexu, vidite na prvni pohled jasny rozdil v trendech a volatilite mezi tim co se deje ve dne a vecer (20-23GMT). V noci tento par tvori vetsinou jen range s nizkou volatilitou a nepatrnym trendem. A verte, ze existuji algoritmy, ktere presne na tomto stavi svoje edge (ktere se sice pomalu vytraci, ale existovalo dlouhou dobu (mnoho let), taky sem na tom nejake ty penize vydelal, nez se z toho stala masova zalezitost :-)
K tem vzorum - technologie typu SVM a NN prave umi ruzne opakujici se vzory automaticky nalezat. Samozrejme predikce bude nepresna a spoustu casovych useku nebude umet predpovedet (velke pohyby vznikle reakci na silne funamenty), ale muze byt dostatecna na to, aby Vam poskytla nejaky rozumny edge. Samozrejme muze se casem ukazat, ze je tohle slepa ulicka, ale zatim mi za to stoji s tim experimentovat, uz jenom proto ze predbezne vysledky nevypadaji spatne...

Link to comment
Sdílet pomocí služby


×
×
  • Vytvořit...