HTML

próba

Forex - Devizatőzsde

útmutató a forex kereskedéshez, tapasztalatok a piacról

Friss topikok

A szerző

Üdvözöllek a blogon! Javaslom kezd az elejéről, még ha sok is lesz :) (2007 augusztus, ott be is mutatkozom, bár nem az lesz a legérdekesebb) Mostanában már gyakran előfordul, hogy olyan kérdés érkezik hozzám/vetődik fel a blogban, amit már kitárgyaltunk, vagy nem a megfelelő bejegyzéshez fűzik. Ezért is kérlek, hogy nézd végig a már meglévő blog témákat. WikFx - Schumann Viktor

2013.01.22. 07:59 Wikfx

Oszcillátorok - RSI, CCI, Stochastic és MACD kicsit másként nézve

32 komment


A bejegyzés trackback címe:

https://devizatozsde.blog.hu/api/trackback/id/tr375033779

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

aSzabe1 · http://valodiforex.wordpress.com/ 2013.01.26. 21:49:00

Köszi a videót! Nagyon jót szórakoztam rajta. Ha régebben egyeztetünk egy csomó időt valóban megtakaríthattunk volna, kb 90% átfedéssel ráismertem a kísérleteimre. :-)
Indikátorokban szerintem sincs új a nap alatt, maximum továbbonyolítanak ezt-azt.
Aki viszont ragaszkodik a használatukhoz, annak nagy előnyt jelent, ha tudja mit néz valójában. Már a legegyszerűbb indikátorok hátteréről sincs fogalma az emberek 98%-ának. A fantasztikus Sell-Buy cuccokról ne is beszéljünk, amik felnyitva általában a legegyszerűbb algoritmusokat rejtik.

ingyenebed 2013.01.27. 11:13:32

ez marhajó!

csodálom a türelmed, ésa szorgalmad, én nem vettem volna így észre.

én mostanság a következőt gondolom:

voltam dcemberben a forexpo-n és ott is láttam valamit ami elgondolkodtatott.
van az a nemtomhogyhíjják ábra, amikor veszel egy vízszintes tengelyt és minden pont egy kötés eredménye. a tengely felett a plusszosok, alatta a mínusz. namost egy értelmes stratégia ábrája úgy néz ki, hogy a tengely körül van a pontok 90-95 %-a. Tehát van rengeteg kis nyerőd, rengeteg kis bukód. Aztán van pár picit nagyobb bukó, és van néhány marha nagy nyerő. és ez utóbbiak lökik meg a hozamgörbét, ezekkel keresel.
de.
ahhoz, hogy ezek meglegyenek, meg kell csinálni az összes kötést.
mert:
az egész kereskedés nem más, mint egy folyamatos statisztikai mintavétel, merítés. olyan, mintha egy nagy hálóval halásznál, de csak a nagy halakat tartod meg, a kicsiket visszadobod. viszont ahhoz, hogy legyen néhány nagy, ki kell fognod az összes kicsit is, mert külön a nagyokat nem tudod. na ilyen lehet az indikátoros kereskedés. amire figyelni kell, hogy ne kis idősíkon, hanem naposon, vagy legalább h4-en, mert az a trükk, hogy a spread minden egyes kötésnél bejön - kishalaknál is, tehát a rengeteg kis kötés a spread miatt összességében nem nullát, hanem mínuszt fog adni.
ha meg indikátor, akkor azért nagyobb idősík, mert az összes indkátor értelemszűen késik (múltból számol), tehát ha szűk range van, akkor bukók, mivel pont akkor jeleznek mondjuk eladást, mikor már felfele indul. nagyobb range-nél működnek, mert ott a nagyobb árelmozdulás kompenzálja a késés bukóját. (ezért tanítják, hogy pl stochastik rangben jó csak). trendben nem jók, mert a korrekcióban feleslegesen bejeleznek. kivéve, ha csak kis meredekségű a trend, majdnem range.

és mindezek alapján akkor kétféle módon lehet kereskedni. az egyik ez a sokhalas nagyhálós módszer, akár indikátorokkal, de akkor csak nagyobb idősíkon a spread és a késés miatt szükséges nagyobb elmozdulás-igény miatt.
a másik mikor csak a nagyobb halakra megyek, akkor alakzatok, támasz-ellanállás, trendvonal törése, esetleg fibo (nekem a fibo-ra nem áll rá a szemem sehogysem).

egyébként nem tudom Hideg Zoltánt ismered-e. ő percesen nyomja, semmi MA, indikátor, csak a puszta chart, trendvonal törés. jól nyomja, nekem nem jó, mert munka mellett az övét nem lehet, de neked jó lehet. sztem keresd meg. most indítanak a Hungária Értékpapír Zrt-vel egy brókercéget, 60e ugyan a tanfolyama , de a bemutató alapján működhet.

ja mégvalami:
nem vagyok matekos, de eszembe jutott valami. mi lenne, ha vennénk 10-20 ilyen népszerű indikátort, meg pár matekszakost, akik káoszelméletben meg fraktálokban otthon vannak, és a következő kérdést tennénk fel: bizonyítható-e matematikai eszközökkel, hogy ezek az indikátorok mind visszavezethetők bizonyos káoszelméleti szabályszerűségekre? hogy gyakorlatilag mindegyik egy vagy néhány ilyen matematikai szabályszerűség egyfajta "derivátuma". nem csak úgy elmétileg érzésből, hanem konkrátan levezetve, bizonyítva matekilag.

ja még egy:
forexen nincs forgalom jelzés. ez alapvető hiányossága. ennyiben nehezebb, mint a részvény, vagy index.

jut eszembe, evvel a mintavételes dologgal van összhangban a Trading in the zone c. könyv, nem tudom ismered-e. illetve maga a tőzsdepszichológiai mondóka, amit mindehol löknek, meg a robotos kereskedés is.

mi a véleményed mindezekről amiket írtam?

üdv, Zoli

Wikfx 2013.01.27. 22:59:51

@ingyenebed: Szia Zoli,

Trading in the Zone - igen, az első könyvek közt volt amit elolvastam a tőzsdei könyvek közül.

A fő devizáknak van határidős forgalma én az nézem határidős brokernél (6a 6e 6b stb...) .
A forex-en látható tick számlálás alapú forgalom is korrelációban van ezzel, de korántsem ad annyira jellegzetes képet szerintem (kis idősíkon), mint a futures.

Indikátorok: részemről nem kell szegény matekosokat fárasztani. A tömegek számára csak olyan indikátor lesz elérhető, aminek eredményes használata vagy külön művészet, vagy nincs is neki...

Nagyon sokféle módon lehet eredményesen kereskedni. Nem érdemes lekorlátozni, hogy csak ilyen meg olyan módszerek. Még a "legegyszerűbb" ember agya is működhet egyfajta szempontból olyan zseniálisan, hogy ott veri a piacot és azzal pénzt keres. Talán még a sokak által emlegetett statisztikai módszerekkel is lehet :). Bár én abban hiszek a legkevésbé, hogy arányos kockázatvállalással, statisztikai módszerekkel államkötvény kamatok fölött hozamot lehet elérni... Ha ezt lehetne, akkor azok a fundok, akiknek már van pénze megfizetni pár jó matematikust aratnának a piacokon folyamatosan.
De egy biztos. Ahhoz, hogy pénzt keress, piacon kell lenni. Ahhoz, hogy a "piacon levés" ne amortizáljon le, vagy nagyobb idősíkkal csinálod, vagy megtanulod hogyan lehet a trade-eket annyira időzíteni, hogy 2-3 szűk SL-es próbálkozásból "betalálj". Nem lesz mindig nagy hal, de már a közepes hallal is elég lehet az RR.

Hideg Zoltánt nem ismerem, de
trendvonal (és csatorna vonal) törések az én kereskedésemben is döntő szerepet játszanak. Ez még szimpatikus is (nekem).

Üdv.
Wik

mazlista 2013.02.06. 02:44:16

@Wikfx: Végre újabb videó, gyakrabban is csinálhatnál ilyeneket, mármint nem tudom, ki hogy van vele, de ha minden nap lenne egy újabb, én mindet megnézném, és valszeg sosem únnám meg őket. Úgy gondoltam ehhez a témához ("RSI, CCI, Stochastic és MACD kicsit másként nézve") egy ilyen (kommerz, haszontalan) indikátorokból generált, tesztelhető programka többet fog mondani ezer szónál, így dobtam össze egyet, csak azért, hogy feltöltsem valahova, ide meg beküldjem a letöltő linkjét. Ez egy majdnem teljesen automatán generált, lineáris regressziós modellnek (magyarabbul stratégiának) látszó rendszer, egy gyári mt4-es moving average ea kódjába épitve. Legalább annyira haszontalan az egész, mint amennyire közel nyílegyenes hozamgörbét produkál a teszt időszakon. Csak arra készült, hogy bemutasson egyet a főbb indikátorok statisztikai megközelítési lehetőségei közül, azok jól ismert legfőbb veszélyével, a túlillesztéssel (overfitting) együtt.

filefeltolto.hu/letoltes/cfab57c62a234f6f/moving.mq4

Jó szórakozást!

inflexio 2013.02.10. 23:22:08

Volt egy kis időm, így letöltöttem, és végigfuttattam az expertet eurusd páron a megadott időszakra. Először is minden tiszteletem, hogy egy ilyen expertet csak úgy összecsapsz, a programozás része nekem kínai. Ugyanakkor a teljesítménye értékelhetetlenül alacsony. Nálam 3000 pont eredményt ért el 9 év alatt, 1200 pontos legnagyobb visszaeséssel. Tehát a legnagyobb visszaesése majdnem 4 átlagos év nyereségével egyezik meg. Ez nagyjából banki kamatok elérésére alkalmas, lemondva a bank által kínált biztonságról és likviditásról.

Soha nem próbáltam indikátor optimalizálással stratégiát készíteni, de ha ez jó eredménynek számít, akkor értem, hogy miért szkeptikus szinte mindenki a mechanikus stratégiákkal kapcsolatban. Nálam ha egy ötlet nem produkálja a paraméterek összehangolása előtt legalább a legnagyobb visszaesés dupláját éves átlagos nyereségben, akkor nem is foglalkozom tovább vele. Ez az 1200 pont legnagyobb visszaesésre 9 év alatt 21400 pont nyereséget jelentene. És a fejlesztés még csak itt kezdődik....

Csak azért írom ezt, nehogy valakit ez tántorítson el a mechanikus kereskedés irányába vezető útról.

mazlista 2013.02.11. 02:40:48

@inflexio: hát szó ami szó, valóban eléggé elkapkodtam/elkomolytalankodtam ezt a progit, mint ahogy annak a rendes megfogalmazását is, hogy miért csináltam és raktam fel ide. Lejjebb kifejtem kicsit bővebben.

Számítottam rá, hogy elég nagy különbségek lehetnek a különböző brókerek adatain futtatott teszteken, de azért ez meglep. Nálam a Dukas adatsorán több, mint 41 ezer pip profitot csinál a 9 év alatt, 2800 kereskedéssel. 10 ezres kezdő egyenleg és fix 0.1 lot mellett 5.1 százalék a relatív, és 2.1 a maximális drawdown. Nem mintha lenne bármi jelentősége, ez csak egy fél óra alatt összedobott játék robot, és akár garantálni is tudom, hogy ez a "stratégia" soha nem lesz képes nyereséget termelni a piacon, akárhogy is optimalizálják.

Eredetileg azt akartam bemutatni, miért is preferálom a tisztán statisztikai alapon, "emberi kéz érintése nélkül", csak program által alkotott kereskedő rendszereket (ez nem tisztán csak generált kód, látszik is, mert van benne egy-két szimpla elírás). Az eredeti tervem szerint ezt egyetlen darab 14 periódusú ATR indikátor, plusz néhány belőle számolt érték felhasználásával akartam megcsinálni. A programnak gyakorlatilag mindegy, milyen indikátorból kell működőnek tűnő rendszert kreálni, bármiből képes rá (még akkor is, ha nem hagyom "csalni" ilyenekkel, mint például az adatok túl sok apró részre diszkretizálása). Amennyit azóta csak próbaképp megcsináltam ebből, az a program az árfolyam irányát nem is "látja", nálam mégis hasonló teljesítményt mutat, mint ez.

Nekem olyan, programozottan tesztelhető stratégia-ötletem se volt még talán soha, ami optimalizálás nélkül egyáltalán nyereséget tudott volna termelni 10 évig folyamatosan. Ebből a szempontból még akár irigyelhetnélek is. Lehet, hogy az agyamat is használnom kéne, nem csak a számítógépet...:)

inflexio 2013.02.11. 09:54:01

@mazlista: Az viszont már igen figyelemre méltó eredmény. Annyira, hogy szerintem túlzott szerénység azt állítani, hogy nem lenne képes nyereséget termelni. Ami 10 év adatain és 2800 kötésen optimalizálva van, az a következő kötést jó közelítéssel azonos esélyekkel indítja. Ha ezt az optimalizálást minden egyes kötés után megtesszük, akkor szerintem működnie kell, különösen, hogy az eredményeiben bőven vannak tartalékok, az sem gond, ha kicsit rosszabbul teljesít.

Egyébként ma reggel újra lefuttattam ugyanazokkal a beállításokkal és most 6000 pont nyereséget csinált 1050 pont visszaesés mellett. Ezt nagyon nem értem, miért van. Persze lehet, hogy valamit rosszul csinálok, soha nem tesztelek Metatrader-ben különben. Azt is tudom, hogy a Metatrader eurusd adatsorból helyenként hiányoznak hónapok. Mert amúgy semmi nem indokolja az eltérést, ez nem egy skalpoló stratégia, 75 pont profitcélnál, és 67,5 pont stopnál nem a spread-ből adódó néhány tized pont árfolyam különbségen múlnak a dolgok.

inflexio 2013.02.11. 10:08:16

Közben kezdek rájönni, most látom a kötéslistából, hogy csak két évet tesztelt, függetlenül a megadott időintervallumtól. Ami érdekes, hogy nem is a végéig futott, hanem másfél évvel ezelőtt megállt. Majd rájövök erre is, mi az oka.

mazlista 2013.02.12. 02:33:07

@inflexio: Nem hiszem, hogy ennyire egyszerűen lehet nyereséges rendszert készíteni, már csak azért sem, mert akkor sokkal több embernek sikerülne, és sokkal több működő automata rendszerről hallanánk.
Szép egyenes hozamgörbét csinálni múltbeli adatokon az valóban egyszerű. Jó példa erre az első találkozásom a neurális hálóval. Hasraütésre adtam a neuronoknak úgy 40-50 indikátor értéket, és egyéb számadatokat, mint az előző néhány gyertya adatai, stb. A gyertya legmagasabb és legalacsonyabb árai voltak a két célváltozó, amit a háló percek alatt pipre pontosan előre tudott jelezni a tanuló adatokon. Nem akartam elhinni, ez olyan, mintha egy robot a múltbeli adatokon minden kereskedést a legoptimálisabb helyen nyitna és zárna, pipre pontosan. Aztán az ismeretlen adatokon teszteléskor jött az értetlen pislogás, mert a háló még körülbelülre is csak alig talált el 1-2 értéket. Hiába tanult be több évre, a tanuló időszakot követő első gyertyától kezdve az előrejelzései a közelében sem voltak a valóságnak. Rengeteg kísérletezés után, sokkal kevesebb iterációval, válogatott indikátorokkal, és különböző célváltozókra tréningelt modellek együttes alkalmazásával nagyon sokat javult a helyzet, de a rendszer még így sem az a kimondott "Grál" kategória.

A teszteléssel kapcsolatos gondokra sajnos csak egy ötletem van. Próbáld meg, ha még van kedved foglalkozni vele, a minden tickes szimuláció helyett csak az árak megnyitásával tesztelni. Úgy emlékszem, mintha a tickek generálása hiányos adatokon okozhatna ilyen problémákat. A program csak óránként egyszer, az új gyertya nyitásakor fut le, azon kívül nem csinál semmit, ezért is felesleges tickenként tesztelni.

inflexio 2013.02.12. 20:53:10

@mazlista: Köszönöm, ez segített. Így a tiedhez hasonló eredményt produkál.

Hogy mennyire egyszerű nyereséges rendszert készíteni, az elgondolkodtatott. Meg aztán ami számodra egyszerű, az nekem pl. egyáltalán nem az, és lehet, hogy fordítva is így van. Mindenesetre kíváncsian figyelem a robotod tevékenységét. Eddig februárban, a nem optimalizált időszakban nálam az első kereskedés nyereséges volt, aztán következett öt veszteséges, és most van egy nyitott vétel nyereségben. Ez eddig nem a legjobb, de még belefér.

Azon tűnődöm, hogy ha nem hiszel az optimalizálással elért eredményekben, de nem tudsz optimalizálás nélkül nyereséges rendszert kitalálni, akkor hogyan kereskedsz? Szerintem egyébként az a megoldás, hogy a rendszert nem a belépésre, hanem a pozíció menedzselésére kell kiélezni. Tehát nem azt kell kitalálni, hogy merre és mennyit fog mozdulni az árfolyam nagyobb eséllyel, hanem hogy meddig érdemes várni egy jól vagy rosszul megnyitott pozíció nyereséges zárására, illetve hol van az a pont, ahol veszteséget kell realizálni.

mazlista 2013.02.13. 03:07:20

@inflexio: Igazán nincs mit.

Egy pillanatra megijedtem, hogy élesen futtatod, mert annak szinte biztosan bukta lenne a vége. Múltbeli adatokon tesztelésre szinte bármilyen hozamgörbét adó rendszert össze tudok rakni, de olyat, amit ajánlani mernék bárkinek is, hogy éles körülmények között automatán futtassa, na olyat nem tudok csinálni.

Ezt a "nem hiszek az optimalizálásban" dolgot pontosítanom kell. Rengeteg folyamatos out-of-sample tesztet csinálok, ami - mint már korábban is írtam róla - abból áll, hogy az adott időpont előtti utolsó x darab gyertyára generálok stratégiákat, majd az időben következő y darab gyertyára előrejelzéseket. Ezután lépek előre y gyertyát, és újra ugyanez, amíg a history végére nem érek, mindez persze automatikusan megy, és igen lassan. Elég sokatmondó statisztikáim vannak arról, hogy az egyes stratégiáknak mi a várható előrejelzési pontossága, és hogy ez nagyjából mennyire függ a stratégia-alkotó rendszer típusától, egyes paramétereitől, tanító- és teszt halmazok méretétől (x és y), és mennyire függ a stratégia egyes tulajdonságaitól, mint múltbeli kereskedések száma, eloszlása, nyerő-vesztő arány, használt indikátorok, célváltozó, stb. Szóval ez nálam nem hit kérdése, hanem számoké - a várható előrejelzési hiba mérték, és becslési pontosság dönti el, hogy beépítek-e egy stratégiát a rendszerbe, vagy sem.

Megjegyezném, hogy sokáig bíztam abban, hogy a neten elérhető nyílt forráskódú robotok között egyszer majd "megtalálom az igazit", és amiket találtam mind le is töltöttem, módosítgattam, teszteltem, és sokat tanultam belőlük, persze említésre méltó eredmény nélkül. Az igazi nagy lökést viszont a google által "adatbányászat pdf", és "prediktív analitika" kereső kifejezésekre kapott dokumentumok adták. Ezekből több hasznos dolgot tanultam, mint az összes ingyen ea kódból együttvéve.

Régebben sokat kísérleteztem az optimális pozíció-menedzsment stratégia megtalálásával, de csak addig jutottam, hogy vagy a találati arányt növeltem a risk/reward kárára, vagy fordítva. Így inkább átálltam a piaci helyzetek nyitás és zárás jelzésként használható számszerűsítésére, azóta is csak ezzel foglalkozom.

inflexio 2013.02.14. 15:59:46

@mazlista: Nem vagyok a saját magam ellensége, hogy olyan robotra bízzam a pénzem, amit a készítője sem ajánl. :-) A februári nyerő-vesztő arány 2:7-re romlott, most van nyitva egy eladás enyhe mínuszban. Persze csak visszatesztben. :-)

Én olyasfélére gondoltam, amit írtál az out-of-sample tesztről. Itt x az összes múltbeli gyertya lenne 10 évre visszamenőleg, y pedig 1.

A pozíció management legegyszerűbb formája, hogy fix méretű profitcélt és stopot használunk. Ilyen módon valóban csak a risk/reward arányt és találati arányt lehet befolyásolni egymás rovására. Ez gyakorlatilag céltalan. A következő fokozat, ha a pozíciónyitás utáni árfolyammozgást figyelembe véve határozzuk meg a zárási árfolyamokat. Ilyenkor már több információ birtokában lehet dönteni, mintha azonnal a nyitáskor tennénk, ez már hozhat eredményeket. A legfejlettebb szint viszont az, amikor párhuzamosan több pozíció fut, és az egyes pozíciók menedzselése figyelembe veszi a többi nyitott pozíció állapotát. Nekem az a tapasztalatom, hogy pozíció menedzselésre épülő (tehát nem az árfolyammozgást előrejelző) stratégiák esetén az érdemi nyereségesség alapfeltétele, hogy párhuzamosan több pozícióval dolgozzon a rendszer.

mazlista 2013.02.16. 05:12:46

@inflexio: Helyes, nagyon helyes :)

Sajnos ahhoz elég sok idő egy rendes rendszer megépítése, hogy gyertyánként újra lehessen gyártani.
Másrészt ezek a fajta tesztelések elég jó képet adnak arról, hogy a különböző rendszereknek mennyi lesz a várható "élettartama", vagyis hogy mennyi idő alatt fog leromlani úgy a teljesítménye, hogy már nem lesz érdemes tovább használni. Ez általában néhány hónap, legjobb esetben is csak maximum fél év. A legrövidebb időszak két optimalizálás között, amit eddig alkalmaztam, az 1 hét volt, legalább ennyit ki kell bírnia a stratégiának. Ha ennyit sem bír, akkor vagy az indikátorok és a célváltozók, vagy a stratégia-alkotó rendszer kiválasztásában is hiba van.

Ha nagyon ráérek, próbálkozom teljesen irány-független stratégia fejlesztéssel. Ez elsősorban azt jelenti, hogy a buy/short helyett trend/range a célváltozó. Aztán lehet egyszerre nyitni mindkét irányba, trendben kicsi sl, nagy tp, range-ben fordítva. Az egyszerűségéhez képest meglepően jól tud működni ez is.

inflexio 2013.02.17. 22:33:00

@mazlista: Ez a fentebb vázolt irányfüggetlen ötlet nagyon tetszik. Ilyesmikben utazom én is. Teljesítményben el lehet érni velük a robotod visszateszt eredményeit, viszont gyakorlatilag örök életűek.

BrekiBéla 2013.03.12. 10:57:10

@mazlista: "trendben kicsi sl, nagy tp, range-ben fordítva"

Itt el is érkeztünk a "néma csendhez". Ugyanis meg kéne határozni, hogy mi a trend és mi a range és ráadásul a pozi indításakor kellene előre tudni, hogy most akkor trend lesz vagy range lesz...
Javasolna valaki bármit erre a problémára?

mazlista 2013.03.13. 03:35:41

BrekiBéla: ilyen stratégiával eddig még komolyabban nem foglalkoztam, csak kísérletezgettem vele, és jobb eredményeket adott, mint amire számítottam, de annyira jókat nem, mint az iránykereskedés. amúgy mint már fentebb írtam is, a stratégiáimat program generálja, én csak adok neki több száz, vagy akár több ezer lehetséges változót, amiből kiválaszthatja a legjobbakat, amikből aztán statisztikai módszerekkel meghatározhatja például az irányt (buy/sell/god knows) a szintelérés (tp/sl), vagy az adott időn belül elért távolság (következő x gyertya legalacsonyabb/legmagasabb értékei) függvényében, trendet/oldalazást, vagy bármi más cél változót. azok a legjobb változók a stratégiához, amik a cél változóval minél inkább korrelálnak, egymással viszont minél kevésbé. ha a változók kiválasztása megvan, akkor jönnek a szokásos szabvány módszerek, diszkretizálás, néha főkomponens-analízis, aztán döntési fák, lineáris regresszió, neuronok. esetleg, mint a régi szép időkben, if-then szabályok wizwhy(demo), mouse recorder pro (:D), egy kódgenerátor- és egy teszter-szkript segítségével.

semmi titok nincs ebben amúgy, (nem azért lett csend,) mindössze vagy olyasmi függőség kell hozzá, mint amit prezentálok (napi legalább 8-10 órát csak ezzel foglalkozom, minden nap), vagy elég tőke főállásban alkalmazni legalább 1 profi statisztikust/adatbányászt, meg egy profi programozót.

akiknek még nincs rendes automata stratégia-alkotó rendszere azoknak merem ajánlani kezdésnek a genetic builder nevű programot. stratégiákat keres, és tud robotot is generálni belőlük mq4 vagy mq5 formátumban. van belőle 14 napos próbaverzió, nem is vészesen drága (mondjuk egy wizwhy-hoz képest meg pláne). nekem túl limitált, ötleteket meríteni a működéséből, és a stratégiáiból viszont kiváló.

mindenképp valamiféle tanuló rendszert érdemes használni stratégia-alkotásra, mert a gép az emberhez képest irdatlan gyorsan tanul, napok alatt annyit, amennyit az ember évek alatt sem.

inflexio: ez az "örök életű" rendszer lehetősége komolyan megihletett. el is kezdtem játszani különféle iránymentes megoldásokkal, és meg is találtam az első olyan stratégiát, ami optimalizálás nélkül kibírta a 10 éves tesztet. nem hiszem, hogy ebből lesz a örök élet grálja, de némi lehetőséget látok benne.

ez egy virtuális orderes, vesztes trade után lotemelős martingale-forma rendszer. az a lényege, hogy egy darabig csak "képzeletben" kereskedik, és arra vár, hogy ebben a képzeletbeli, vagy másnéven virtuális kereskedés-sorozatban az egymást követő bukók száma elérjen egy bizonyos szintet. valódi pozit nyitni csak ekkor kezd, amikor a klasszikus martingale szerint már a sokadik lot-emelésnél járna, és innen emelgeti a lotokat, ha veszít. egyszerre csak egy nyitott pozival dolgozik, stop szinteknél kiszáll, következő gyertyán nyit újat. a lotemelések mértéke risk/reward függő, száma pedig limitált, 2-6 között. ha ez alatt nem nyer, akkor könyveli a veszteséget, és vár újabb sorozatra. még csak odáig jutottam vele, hogy csak egy adott tp/sl szintes virtuális kereskedés-sorozattal dolgozik, de meg fogom csinálni, hogy egyszerre több különbözőnek az egymást követő vesztőit is nyilván tartsa, kereskedje, és használja egyfajta indikátorként is.

bocsánat, hogy ilyen hosszúra nyúlt ez a bejegyzés, legközelebb majd használok winrar-t... :)

BrekiBéla 2013.03.13. 11:13:06

@mazlista: "Iránymentes" stratégiánál mire gondoltok pontosan? Eldöntitek, hogy a stratégia 5 percenként nyitna pozit és ekkor 5 percenként arról döntötök véletlenszerűen, hogy Vétel vagy Eladás? Az 5 perc letelte után pedig zárás és újból döntés a Vétel és Eladásról?

mazlista 2013.03.14. 03:15:17

@BrekiBéla: mondok egyszerű példákat.
1. egyszerre nyitni buyt és sellt:
- vagy kisebb sl és nagyobb tp szintekkel, vagy fordítva,
- vagy tp nélkül csak sl és követő stop,
2. egyszerre csak egy irányra nyitni, adott veszteség-szint elérésekor, vagy lezárt vesztő trade után emelni a kereskedési mennyiséget (martingale),
3. valamiféle surefire-szerű hedgelést alkalmazni,
4. ezeknek az elemeit kombinálni tetszés szerint.

lehet belekeverni még ezer mást is, mint például opciók, bináris opciók, parrondo-paradoxon, bet365 tőzsdei fogadásai, stb. a variációk száma masszívan konvergál a végtelen felé...

BrekiBéla 2013.03.15. 12:24:33

@mazlista:
"3. valamiféle surefire-szerű hedgelést alkalmazni,"
Soha nem hallottam még ezt a kifejezést, ez mit jelent?

"lehet belekeverni még ezer mást is, mint például opciók, bináris opciók"
A végén már annyira bonyolult lesz, hogy magad sem érted mit csinálsz. ;-)

Én szeretek az egyszerűből kiindulni és csak akkor haladni a bonyolultabb felé, ha az egyszerűt már minden oldalról ismerem. Az opciók belevonása a stratégiákba a statisztikáidat teszi értelmezhetetlenné, mivel az opció deltája nem állandó.

mazlista 2013.03.16. 05:56:47

@BrekiBéla: "Soha nem hallottam még ezt a kifejezést, ez mit jelent?" www.forexstrategiesresources.com/support-and-resistance-forex-strategies/7-hedging-strategy-sure-fire/ , vagy google keresés: "sure fire hedging strategy"

"A végén már annyira bonyolult lesz, hogy magad sem érted mit csinálsz."
Csak annyit mondtam, hogy többek közt ezeket találtam, amikből szerintem nagy valószínűséggel ki lehet kombinálni használható iránymentes stratégiát. Még csak most kezdtem ezzel foglalkozni, így ha létezik is éles kereskedésre alkalmas ilyen rendszer, fogalmam sincs, hogy mennyire lehet bonyolult.

"az opció deltája nem állandó."
Ez még nem jelenti azt, hogy az opció ugyanannak az instrumentumnak más piacon való kereskedésével biztosan nem kombinálható. Amúgy csak elméletben konyítok valamennyit az opcióhoz, így lehet, hogy tévedek.

inflexio 2013.03.29. 10:56:06

@BrekiBéla: Meghatározhatod önkényesen, hogy mit tekintesz trendnek, és mit sávnak. Előre pedig nem kell megmondani, mi lesz, elég, ha azt tudod, mi van, és feltételezed, hogy folytatódni fog. Az árfolyamok piaci szereplők által alakított mozgása éppen abban különbözik legmarkánsabban a véletlenszerű mozgástól, hogy mind a trendek, mind a sávok sokkal tovább tartanak, mint azt normális eloszlás alapján várni lehetne. Ez az, ami annak idején meglepte a Long-Term Capital Management Nóbel-díjas kezelőit. :-)

inflexio 2013.03.29. 11:10:13

@mazlista: Nálam a martingale nem jön szóba. A surefire hedge is csak egy martingale a leírás alapján. Matematikai szempontból semmivel nem javítod az esélyeidet, ha kihagyod az első x vesztes trédet. Hiába tudsz így több lépést finanszírozni a végső stop elérése előtt, időnként veszíteni fogsz. Azt az előnyt, amit a kevesebb veszteséges kiszállás hoz, elviszi az, hogy rengeteg nyerő trédet hagysz ki miközben arra vársz, hogy virtuálisan összejöjjön a beszálláshoz megfelelő számú lépés.

A Parrondo paradoxon engem is sokat foglalkoztat, most is épp azon dolgozom, hogy különböző stratégiák együttes alkalmazásával hogyan lehet sokkal jobb eredményt elérni, mint az egyes stratégiák eredményének összege.

mazlista 2013.03.30. 01:42:11

@inflexio: A martingale-nek a klasszikus kaszinós formája az valóban értelmetlen, tuti bukó, ez nem is kérdés. A tőzsdén viszont, minél többet kísérletezek a különböző variációival, annál több használhatóságot látok benne. A döntési fa modellek például azt csinálják, hogy in-sample szép egyenesen emelkedő hozamgörbét adnak, azon kívül pedig vízszinteset, 50 százalék körüli találati aránnyal. Néhány ilyenhez nemrég próbaképp hozzáadtam ezt a virtuális kereskedéses megoldást, és a lotduplázást, amitől az out-of-sample adatokon is masszívan nyereségessé váltak, pedig csak 1-2 virtuális bukót vártam ki, és a max duplázások száma is csak 2-3 volt.

Az első x vesztes tréd kihagyása valóban nem javítja az esélyeket, tényleg csak arra jó, hogy több bukót lehessen finanszírozni. A rengeteg nyerő kihagyása viszont nem okoz gondot, mivel annyi a variáció, hogy ebben a virtuális kereskedés-sorozatban szinte mindig lehet találni olyan jelzést, amit kereskedni lehet. Mindig két lehetőség van, lehet játszani folytatódásra vagy fordulásra. Ezeken belül plusz lehet várni egymás után sok azonos esetre, mint például sok egymást követő nyerő vétel, vagy eladás. Vagy ezek hosszabb időn keresztüli szabályos váltakozásaira. Lehet számolni csak minden második, harmadik, n-edik tradet, vagy egymást követő n darab tréd alkotta alakzatokat. Lehet várni a legrégebben, vagy a legutoljára előfordult alakzat következésére/ismétlődésére. Érdemes lehet még plusz ezeknek mindnek számolni az utolsó n darab trédben vagy gyertyában előfordult leghosszabb sorozatait, és használni a döntéshez. Nagyjából ennyi ötletem lett ezzel kapcsolatban, mióta először írtam itt róla, de csak töredéküket teszteltem eddig.

A Parrondo paradoxont nem igazán értem a példák alapján, hogy miért számít paradoxonnak. Matematikailag bizonyítva van (állítólag), tehát tényleg annak kell lennie. Viszont a pénzfeldobós játékban, amiről azt állítják, hogy 2 vesztes stratégiát kombinálva nyernek, valójában 2 vesztes, és 1 nyertes stratégiát kombinálnak. Erre írta valaki egyik tőzsdés fórumon, hogy ha az az egy nyertes stratégia már megvan, akkor minek azt kombinálni két vesztővel?

inflexio 2013.04.01. 11:57:29

@mazlista: Gondolom azért hívják paradoxonnak, mert azt várná az ember, hogy két veszteséges stratégiát keverten alkalmazva az eredmény is veszteséges lesz, ezzel szemben mégsem.

Parrondo egyik veszteséges stratégiája valóban egy nyereséges és egy veszteséges stratégia kevert alkalmazása, de ez nem változtat azon, hogy ez a stratégia is összességében veszteséges, amit ha egy másik veszteségessel együtt alkalmazunk, az eredmény nyereség lehet. Sokkal inkább arra irányítja rá a figyelmet, hogy egy stratégia felbontható lehet több másik stratégiára.

A tőzsdén amúgy nincsen veszteséges stratégia abban az értelemben, hogy ha valaki talál egy stabilan veszteséges stratégiát, nincs más dolga, mint megfordítani, és máris van egy nyereséges stratégiája. A kihívás abban áll, hogy olyan stratégiát kell találni, ami hosszú távon nem nullszaldós. Ha valaki talál egy ilyet, akkor hamar rájön, hogy a problémák itt nem érnek véget, mert a nyereséges stratégia gyakorlati alkalmazhatóságához az is követelmény, hogy a hozamgörbe viszonylag egyenletes legyen. Itt segíthet a stratégiák kombinálása, pl. egy megfelelő nullszaldós stratégia hozzáadásával csökkenthetők a kilengések.

A jelek szerint egyébként neked is sikerült szép eredményt elérned e tekintetben, mert az eredeti, out of sample nullszaldós stratégiádat kombináltad egy szintén nullszaldós limitált martingale stratégiával, és az eredmény egy nyereséges stratégia lett. Nevezhetnénk ezt akár Mázlista paradoxonnak is. :-)

BrekiBéla 2013.04.03. 00:44:29

@inflexio: "Meghatározhatod önkényesen, hogy mit tekintesz trendnek, és mit sávnak. Előre pedig nem kell megmondani, mi lesz, elég, ha azt tudod, mi van, és feltételezed, hogy folytatódni fog."
Igen, értem amit írsz, hogy nem Wiener-folyamatról beszélünk.
Ennek ellenére azt hiszem, csak azzal tudnék kezdeni valamit, ha mutatnál egy olyan rendszert, ami valami hasonló elven működik. Egy sima primkó rendszert, ami ezt csinálja és nyilvánosan elérhető, mint akár a mazlista által felhozott "surefire" nevű rendszer.

Nekem azzal van a problémám, hogy leírható-e objektívan az, hogy mi a trend és mi a range?

mazlista 2013.04.03. 03:01:15

Bocs Wik, igencsak eltértünk a topik témájától, elküldhetsz nyugodtan az "mlp-be", hogy szétoffolom az indikátoros témát, ha ez gondot jelent. Mondhatnám azt is, hogy "érezd magad otthon"... :D

@inflexio: Hát én kísérleteztem eleget különböző veszteséges és nullszaldós stratégiák kevert alkalmazásával, de az eredmény nagyon ritkán lett pozitív, mondhatni szinte soha. Nekem ez azért sem tűnik igazi paradoxonnak, mert akárhogy számolgattam, a pénzfeldobós rendszer csak akkor ad pozitív eredményt, ha a nyerő stratégia elég nagy arányban kerül játékba.

Itt azt írják, hogy az "M értéke közömbös, az egyszerűség kedvéért válasszuk 3- nak", pedig nagyon nem az, mert ez határozza meg a nyerő stratégia játékba kerülésének arányát:

epa.oszk.hu/00700/00775/00022/1136-1137.html ,2. bekezdés, 5-6. sor

Itt pedig, a második (alsó) szimulátoron, ha a Modulus paraméter értékét (ami gondolom, hogy az "M"-nek felel meg) átállítjuk 2-re, máris az összes kombináció veszteséges lesz, ha 4-re, akkor pedig a B játék önmagában is nyereséges:

www.cut-the-knot.org/ctk/Parrondo.shtml

Ezek ellenére elég valószínűnek tartom, hogy ebből a paradoxonból jó sok munka és kísérletezés árán ki lehet hozni valami tőzsdén is használható összefüggést, vagy képletet, ami nekem még nem sikerült.

A stratégiák teljesítmény-növelésére találtam jó megoldást, ez pedig a szignálok megfordítása, vagyis a jelzésekkel ellentétes kereskedés bizonyos esetekben. Betanítom a rendszert először az irány eltalálására, az előrejelzés értékét hozzáadom a tréning adatokhoz, ezután ezt az irányt, mint célváltozót kicserélem egy helyesen tippelt/helytelenül tippelt, vagy más néven egy "kell-e ezt a jelzést fordítva kereskedni" célváltozóra, majd betanítom a rendszert erre is. Így minden szignálhoz két jelzés tartozik, egy buy/sell, és egy "reverse". Így a gyenge buy jelzés, ami eddig csak a pozíció nem-nyitást jelentett, egy erős reverse jelzéssel együtt közepesen erős short szignált fog jelenteni, és fordítva.

Ez a "Mázlista paradoxon" sem paradoxon ám amúgy... :)
A siker csak abból adódott, hogy az egymást követő vesztes trédek száma ritkán volt több 2-3-nál azokkal a rendszerekkel, amikkel ezt próbáltam. Éles használathoz rengeteget kellene még tesztelni, amihez nem valószínű, hogy lesz ambícióm, de érdekes jelenség mindenesetre ez is.

@BrekiBéla: Az, hogy mi a trend és mi a range, ugyanannyira írható le objektíven, mint az, hogy vételi jelzés vagy eladási. Mindenképpen paraméter kell hozzá, idősík, távolság pipekben, stb. Esetleg lehetséges még olyan feltételt meghatározni, aminek teljesülésével a fennálló állapot megszűnik, és a piaci helyzet átmegy mondjuk nem meghatározhatóba. Kérdés az is, mit tekintünk objektívnek, mert például hiába tudnak a neuronhálók ilyeneket nagy pontossággal megtanulni és előre jelezni, a döntéseiknek a pontos okai többnyire felfoghatatlanok az ember számára. Vagyis hiába fogadja el valaki az előrejelzések teszt adatokon mért pontosságát objektívnek, attól még halvány lila gőze sem lesz arról, hogy ez most épp miért trend, vagy miért range...

inflexio 2013.04.03. 21:04:07

@BrekiBéla: Azt kell elfogadni, hogy a trend és a range nem abszolút fogalmak. Mindenki mást ért alatta. Saját magad számára teheted objektívvá, ha meghatározol egy szabályt, aminek alapján eldöntöd a kérdést. Például ha egy adott mozgóátlag meredeksége nagyobb egy meghatározott értéknél, akkor trend van, ha kisebb, akkor range.

inflexio 2013.04.03. 21:37:11

@mazlista: A Parrondo paradoxon esetében nem jó az a megközelítés, hogy van egy nyerő és két vesztő stratégia. Két vesztő stratégia van. Hiába áll az egyik egy nyerő és egy vesztő kombinációjából, és érdektelen az is, hogy milyen arányban kombinálja őket. Az általa leírt kombináció stabilan veszteséges stratégiát ad, ez a lényeg. Ezt keveri egy másik stabilan veszteséges stratégiával, és az eredmény mégis nyereséges stratégia lesz.

Szerintem amúgy konkrétan az ő stratégiáit nem igazán lehet ráhúzni a kereskedésre. Inkább elméleti jelentősége van, arra irányítja a figyelmet, hogy különböző stratégiák kevert (tehát nem konkrét szabályok szerint váltogatott, hanem véletlenszerű döntéseket is tartalmazó) alkalmazásával érdemes kísérletezni. Arra szokták még itt felhívni a figyelmet, hogy az evolúció során leghatékonyabbnak bizonyult túlélési stratégiák is mind kevert stratégiák.

Ha sikerülne olyan stratégiát csinálni, ami nagyon egyenletesen hozza felváltva a közel azonos méretű nyertes és vesztes zárásokat, arra érdemes lenne martingale rendszert építeni. Ezen én is töröm a fejem néha, eddig eredmény nélkül.

mazlista 2013.04.04. 01:23:45

Az előző hsz stratégia teljesítmény-javítós részében komoly elírás van, bocsesz. Mind az eredeti célváltozót, mind az előrejelzés értékét eltávolítjuk az adatsorból, második körben csak a reverse marad helyettük, az eredeti irány, és az irány-előrejelzés nélkül. Szép is lenne, ha bent maradna valamelyikük, úgy a legbénább tanuló algoritmus is 90 százalék feletti találati arányt érne el pillanatok alatt. Nagyon észnél kell lenni, ha egy rendszer ilyesmi álom-eredményt mutat, azonnal el kell kezdeni keresni a hibát, és addig nem nyugodni, míg meg nincs - mert hogy van hiba, az 99.99 százalék. A stabil 70-80 százalékos találati arány folyamatos oos tesztben nekem évek munkájába, és sok százezer sornyi generált programkódba került, szóval van mihez viszonyítanom.

@inflexio: Neked van igazad tutira, mert én nem értek a paradoxonokhoz, csak úgy csináltam, mintha...

Wikfx 2013.04.04. 13:57:56

Hali,

Semmi gond a témától eltéréssel... Érdekes olvasni ennyire megszállottam modellező traderek gondolatait is...

És pedig rengeteg könyvet és anyagot olvastam és néztem trading témában, de pl a Parrondo paradoxon velem nem jöt szembe...

Elgondolkodtam rajt, hogy érdekes, mert az a stratégia, amin dolgozok, végül is felbontható egy veszteséges/null szaldó körül ingadozó és egy nyereséges elemre... csak hát a nyereséges elem létre sem jöhetne a nulla körül ingadozó nélkül... ami eddig számomra teljesen természetes volt, de így most már elmondhatom, hogy most már annyira tudományos lett a tradingem, hogy paradoxont is alkalmazok :)))

mazlista 2013.04.05. 00:38:16

Jó hír, hogy nem gond a témaoffolás, örülök neki. Bár most egy ideig biztosan nem fogok offolni semmit, mint ahogy írni se. Mától határozatlan időre "kihúzom a dugót", mert már évek óta nonstop rá vagyok gyógyulva a laptopra, és már nagyon kell némi szünet. Csak azért írom le ezt, hogy ne sértődjön meg senki, ha akár hetekig-hónapokig sem válaszolok az esetlegesen felmerülő kérdésekre.

smk 2013.05.03. 17:25:10

üdv Mazlista,
Most találtam rá erre a beszélgetésre, így kicsit késve kapcsolódok be. Elméleti részbe nem ástam bele magam, amit írok, magam találtam ki, így elképzelhető, hogy rossz szakkifejezéseket használok.
Túloptimalizálásra írnék két példát:
A. Olyan EA, amely tartalmazza az tanító adatokat, és ezek alapján jövőbe látónak tűnik, ha a tanító időszakon futtatjuk
B. Olyan EA, amely megnézi a tanító időszak nyitó, és záró árfolyamát. Ha Záró > Nyitó akkor a stratégia mindig longol, egyébként mindig shortol. A betanítási időszakon backtesztelve ez a stratégia nyereséget termel.

A fenti két szélsőséges elméleti stratégia között számtalan átmeneti stratégia található. Pl órás grafikonon tesztelve megnézem mely napok volt összességében emelkedő az árfolyam, és olyan EAt generálok, ami az adott napokon longol...
Esetleg megnézem, hogy a tanítási időszakban MACD>0 gyertyák esetén akkor a következő gyertyák inkább emelkedő, vagy inkább eső gyertyák, és ez alapján pl meghatározom, hogy MACD>0 esetén következő gyertyára longot fogadok

Jól értem, hogy az általad generált és feltöltött stratégia valami ilyesmi, csak összetettebb-kifinomultabb módszerrel dolgozik, ugye?

A Parronodo paradoxonnal kapcsolatban egyetértek veled, igaziból a példa csak figyelmetlen olvasó összezavarására jó. Akkor lenne paradoxon, ha pl csak véletlen elemeket tartalmazna, és nem tartalamazna olyan elemeket, hogy pl "Hogy a két érme közül melyikkel történjen a dobás, az pedig attól függ, hogy az éppen aktuális lépcső, amin állunk, osztható-e hárommal."

Bár a Parronodo példa marhaság, a különböző nyereséges stratégiák megfelelő kombinálása szerintem olyan stratégiát eredményezhet, ami jobb a két stratégia összegénél. A nyereségük összeadódik, miközben a vesztő szakaszok nem ugyanakkor vannak, így adott profithoz kisebb drawdown értékek tartozhatnak, azaz azonos profitot alacsonyabb kockázattal érhetünk el, vagy akár azonos kockázat mellett nagyobb lehet a profit, ha növeljük a kötésméretet.
A fentiek miatt én a megvizsgált stratégiákat elemeire bontom, megvizsgálom az egyes elemek használhatóságát, és a jobb elemek különböző súlyozásából próbálok használható stratégiákat kialakítani.

Martingale rendszer gyakorlatban arról szól, hogy több egymás utáni fogadásban a tétet eltérően súlyozzuk. Ha felfedezünk egy olyan szabályszerűséget hogy egy alap stratégia kötésnek nyereségessége függ az előző kötések kimenetelétől, akkor lehet értelme martingalenek. Azonban az ilyen megfigyelésekre alapozás optimális esetben nem martingalehez vezet.
pl adott egy stratégia, 50% nyerő, 50% vesztes trade aránnyal. 1 R/R aránnyal. Megfigyeljük, hogy 3 vesztes trade után 50%nál jelentősen nagyobb nyerési esélyünk van. Ilyenkor egy martingale stratégia nagyobb profitot hozhat, mint egy sima azonos kötésméretre alapozó stratégia. Mivel azonban csak azt figyeltük meg, hogy 3. vesztes trade után nő meg a nyerési esély, teljesen felesleges 1., 2., 4,. 5. vesztes tradek után növelt téttel fogadni. Mivel az alap stratégia null szaldós, a fenti esetben az optimális stratégia az lenne, hogy mindig az alap stratégia ellen fogadunk kis összeggel, ha pedig 3x vesztett az alap stratégia, akkor az alap stratégia irányába fogadunk növelt kötésmérettel.