BeZol Tőzsde Blogja

Friss topikok

  • BeZol: @BeZol: Mai nap folyamán lefutott egy hosszabb optimalizáció, így ismét más beállításokkal fut a r... (2014.05.30. 13:27) Újabb tapasztalatok

Címkék

Újabb tapasztalatok

2014.03.31. 22:50 BeZol

Sziasztok!

 

Ismét jelentkezem. Nem volt sok kedvem írni, de most lett egy kicsike, úgyhogy vágjunk is bele!

Először is még tartozom korábbról egy magyarázattal, hogy mi a baj a spread-változással: a fő probléma az, hogy nagyok szűk csúszóstop esetén ha hirtelen megnő a spread, akkor ki is ütötték a pozíciónkat (és akkor még nem is mentem bele abba, hogy akár 1 másodperc alatt is felmegy 1 pipről 3-ra majd vissza mondjuk 0.8-ra és ismét 3-ra --> totális szűk csúszóstop kinyírás az egész). Ezt én azzal védem már ki, hogy a robotom folyamatosan figyeli a spreadet (naplózza is), és vissza tudom nézni, hogy abban a max. 1 percben amíg kötésben voltam, mekkora spreadek voltak, és hát brutális!

Aláírom, hogy "rosszkor" kereskedem, hiszen a robotom csakis nagy elmozdulásoknál lép be (híreknél), és ilyenkor a teljesülések sem ott történnek ahol kéne, és még a spread is kitágul. A gyakorlatban nálam úgy néz ki a történet, hogy EURUSD páron Oanda normál esetben 0.8-1.2 pip-es spreadet kínál, nos ez híreknél akár 5 pip is volt már, és nagyon ritkán megy 1.5 pip alá, inkább 2 felé közelít átlagosan (LMAX-on 9es pip-et is láttam, és még őket ajánlják skalpolásra, vicc). Ugyanez Armada Marketsnél 0.1-0.5 helyett 1.2 körülre megy fel, tehát átlagosan 0.7 pippel nagyobb a spread mint normál esetben, ami pedig már meg is magyarázza azt, hogy miért van akár 0.7 pipnyi csúszás a pozíciómban (hát ezért is).

Tehát úgy védekezem, hogy az átlag spread +0.7-re állítom be a maximálisan megengedett spread-et, és ha ezt túllépi a bróker, akkor ignorálja a robot addig a mozgásokat, amíg újra a megengedett szint alá nem süllyed. Ezt lehetne normál spread-nyire is állítani, de akkor olyan ritkán aktivizálná magát a robot mikor kötésben van, hogy tutira elveszti a csúszóstop a lényegét, ezért kell olyan szintre állítani, ami felett már tényleg csak az abnormális értékek vannak (pl. másodpercen belül is csak egy pillanyatnyira).

És akkor el is érkeztünk egy újabb fontos témához, a bróker kérdéséhez. Bármennyire is szerettem volna maradni a régi brókernél (Oanda), egyszerűen hiába jó a normál spreadjük, ha híreknél már túl magas ahhoz, hogy a robot nyereséges maradjon, ezért nemrég az Armada Markets-re esett a választásom, már fut a demo számla, vagyis mai napig futott, mert nyitottam egy welcome accountot, ami ingyen 15 Euroval ad egy "éles" számlát. Maximum további 15 Eurot nyerhetek, és később ha nyitok egy éles számlát, amihez legalább 100 Euro kell, akkor oda ráutalhatom az itt szerzett 15 Eurot, de nem is ez a lényeg, hanem hogy ez már nem is demo számla, hanem végülis éles számla, amivel maximum tőke duplázásig juthatok, mindez ingyen, éles környezetben, mi kell még? :)

3 hétig futtattam a demo számlát az Armadánál, és az első 1 hét során kiderült, hogy mégis milyen a környezet (spread, csúszás, na meg itt ugyan alacsony a spread, de külön díjat számolnak fel a pozíciók után). A tapasztalatok pozitívak, hiszen itt már nyereséges a robot! Hurrá, mégsem kuka ugye :)

Híreknél EURUSD-n 1.2-ig megy fel a spread (egyébként meg 0.1-0.6 között mozog), ami egyáltalán nem zavaró, mert a robot 1.5 pip-es spreadig nyereséges, tehát ez pipa. Felszámolnak utólag kezelési költséget, de ha nem lenne alacsony a spread, nem tudnék nyerni, szóval ez így jó.

Szóval eltelt 1 hét, kiderült, hogy az alacsony spread itt is felszökik, és még ennek ellenére is kistoppolódok az 1.4-es csúszóstoppal, ezért a kezdeti 3ezer dodóról lement az egyenleg 2500ra. Ezek után tágítottam a csúszóstoppon, a 2.1-re esett a választásom, és az elmúlt 2 hétben a 2500-ról 3300-ra ment fel a demo-egyenleg!

Ami érdekes, hogy míg 1.4-es csúszóstopnál 5ből 4 kötés nem egyezett a visszateszttel, addig az új csúszóstoppal ez megfordult, és 5ből 4 egyezik, ráadásul volt pár kötés, ami a valóságban jobban teljesült, mint amit a teszt mutatott, szóval nagyon érdekes és biztató!

Mai nappal fut a 15 euro-s számla (szépen benyelt egy csomó vesztőt, ám a teszt szerint is ez lett volna, úgyhogy aggódalomra még semmi okom), most 12,29 Euro van rajta. Szerintem most túl magasra tettem a beköthető mennyiséget, de már nem változtatok rajta, lesz ami lesz. Most kiderül, hogy lenne-e értelme a jövőben éles számlát nyitni és futtatni rajta a robotot. Ha eléri a 30 Eurós egyenleget (aminél ugye nem is enged többet), akkor már intézem is a számla nyitást, ellenkező esetben pedig lehet keresgélni, hogy vajon hol lehetne még reszelni. Elvileg 1 hónap múlva már akár bőven meg kéne lennie a 30 Eurónak, most majd kiderül mire jutok. Amint sikerült a cél, jelentkezem, és csatolom a képeket is hozzá!

A kimaradt egyenleg-grafikon

2014.01.13. 18:37 BeZol

20120813_20140107_dax_bezol_spread1_1.jpg

Valamiért nem tesz be egy post-ba 2 képet... ( jobb klikk --> kép megjelenítése )

Az 1-perces időtáv kereskedésének rejtelmei

2014.01.13. 18:36 BeZol

Íme a mostani 1-perces chart-on munkálkodó robotom egyenleg-grafikonja:

És a hozzá tartozó jelentés:

20120813_20140107_dax_bezol_spread1_2.jpg

Nem tudom, hogy aki majd egyszer ezeket netán olvassa, mennyire ért ezekhez a dolgokhoz, ezért magyarázok picit:

Az első grafikon azt mutatja, hogy ha van 10ezer egység pénzünk (ami lehet USD, EUR, bármi), akkor mekkora egyenlegünk lesz a tesztidőszak végére, tehát ahol a kék vonal végződik, annyi lesz az egyenlegünk az adott időszakra, ami ebben az esetben 2012.08.13 és 2014.01.07 közötti időszakot fedi le. Tehát ebben benne van a kezdeti tőkénk is. A zöld vonalkák pedig azt jelzik, hogy mekkora egységeket kötöttünk le. Ez azért növekszik, mert ahogy nő a pénzünk, arányosan többet is köt be a robot, így százalékosan mindenig ugyanannyit kockáztatunk és nyerünk is, csak míg ha van egy 5%-os profitot hozó kötésünk 10ezer USD-nél, az azért nem ugyanaz, mint amikor már 100ezer USD-nél nyerünk 5%-ot.

A második kép pedig a jelentése a tesztnek, ami alapján én a következőket tartom fontosnak:

- kezdő betét --> itt láthatjátok, hogy tényleg 10ezer egység pénzzel indult a teszt

- összes nettó profit --> ennyit nyert a robot (tehát csak a profit, a kezdőtőke nincs benne)

- összes kereskedés --> ennyi kereskedés történt az adott időszak alatt. Ez nagyon fontos! Ha teszteltek egy robotot, mindig legyen minimum 300 kereskedés, de minél több, annál jobb, mert az azt jelzi, hogy mennyire jó hosszútávon a robot! A több kötés javítja a statisztikát, hogy valószínűleg tényleg jó a robot, és a jövőben is az lesz.

- relative drawdown --> ez a relatív maximális lehívása a robotnak, ez is nagyon fontos érték! Ha 10%, akkor az azt jelenti, hogy pl. volt 1millió Ft-unk, amivel visszaestünk 900ezer Ft-ra. Ez azt adja meg, hogy százalékosan az épp aktuálisan legnagyobb pénzünkhöz képest mennyire estünk maximálisan vissza (és jöttünk nyerőbe remélhetőleg). Másik példa: van 1M Ft-unk, szépen lassan nyerünk, veszítgetünk vele, és kijön egy olyan érték, hogy összes nettó profit 200ezer Ft, és mindenki örül, hogy juhé pl. 1 év alatt lett 1 misiből 1,2. DE ott lesz mellette relative drawdown-nak, hogy 65%, akkor az azt jelenti, hogy szélsőségesebb esetben simán lehet, hogy már 2misinél járt az egyenlegünk, amikor kaptunk egy 65%-os bukást (tehát le egészen vissza 700ezer Ft-ra), amiről felhozta 1,2-re a teszt végére (olyan is lehet, hogy 1misiről indulva, leestünk 350ezerre, ahonnét felhoztuk végül 1,2 misire). Remélem most már mindenkinek tiszta :) A lényeg, hogy szerintem 30%-nál több ne legyen, de ez egyénfüggő. (nekem volt robotom, ami 60%-os volt, és élesben elkapott egy olyan szériát, ahol 85%-ra leesett, onnét pedig már ki futtatná?)

A jelentéshez (és magához a teszthez) még nagyon fontosnak tartom megjegyezni, hogy tick teszt volt, ami azt jelenti, hogy ez a legvalósághűbb teszt amit csak el lehet érni, tulajdonképpen 1:1-ben rekonstruálja a múltbeli árfolyammozgásokat, hiszen 1-2-3 másodpercenként változik az árfolyam, de itt olyan 1-perces gyertyák is vannak, ami 600 tick-et tartalmaznak, tehát 60 másodperc alatt 600-szor változott az árfolyam. Elég brutális és időigényes is, viszont nem hagyhatom szó nélkül, hogy nem tökéletes!

Írnék is két példát:

- egyik robot két mozgóátlag alapján kereskedett. Volt sok kötés, viszonylag alacsony max. lehívás, és 4-5xörös éves profit. Érdekes módon EURUSD-n nem volt nyerő, de DAX-on nagyon nyerő volt, így el is indítottam. Volt, hogy 3 nap alatt megduplázta a tőkémet, egyébként meg végül letizenkettedelte... A probléma az volt, hogy DAX, meg minden más CFD instrumentum reggel 8-kor réssel nyit (nem mindig, gyakran nem is sokkal, de évente 3-4xer brutálisan sokkal). Nos a MetaTrader4-ben (ezen a programon futnak a robotok és a teszt is) a teszt során a robot megkötötte a kötést, behúzta szépen a stoppot nullába vagy amire állítottuk, és ha másnap volt egy 120 pontos réssel nyitás, már buktam egy valag pénzt a valóságban, de a teszten a SEMMI KÖZEPÉN behúzta a stop-ra a teszt a kötést (tehát a teszten nulla vagy minimális veszteség volt, a valóságban pedig akár tőkeharmadolás azonnal). Ebből a tesztek során csak akkor vesztek észre valamit is, ha vizuális módban is lefuttatjátok, ott kiderül a turpisság, már ha észreveszitek, mert lehet, hogy csak 3-4 hónapnyi kötésnézegetés után jön az első ilyen... (mármint a tesztben 3-4 hónap, nem a valóságban)

- az én fenti képeken szereplő robotom sem nyereséges még, de van ötletem, hogyan tehetem azzá. A probléma itt pedig a következő: a kötési díj (spread) 2-szeresére van állítva a csúszóstoppom (trailing), és a tesztek során fix spread-del dolgozok (fenti esetben 1), míg a valóságban 0,5 - 1 - 1,5 pip között mozog a spread (DAX-ról van szó). Gondolom most egyesek azt mondják magukban, hogy túl kicsi a trailingem, más meg csak szimplán legyint egyet a dolgon, pedig CSAK emiatt, nem eredményes valós futtatás során a robot. Hogy ez most pontosan miért baj, azon érdemes elgondolkodni, és persze megoldást is kell rá találni úgy, hogy a csúszóstop méretén nem változtathatunk, mert akkor veszteségessé válik a robot!

Ha valakinek van ötlete a megoldásra, én szívesen elolvasom, mert elméleti szinten már nekem is megvan rá a megoldás, hamarosan pedig fizetek újra egy programozónak, hogy a valóságban is használható legyen, és ha már csak részben hozza az eredményeket, már akkor is bőven jó vagyok (1,5 év alatt 52xeres profit, elég beteg).

A következő alkalomra készítek egy képet a spread-változás okozta problémáról, akkor biztosan többen megértik a problémát, illetve leírom a részemről "kiötölt" megoldást rá.

Végezetül annyit írnék még, hogy ne dőljetek be a neten kapható robotoknak, mert a tesztek többsége nem fedi a valóságot, a demo és/vagy éles számla kimutatás legyen a minimum, amit megnéztek, és akkor is legalább olyat kell nézni, ami LEGALÁBB 1 éve fut eredményesen (kötésszám legyen legalább 300). Rengeteg robotnál van éles vagy demo számla kimutatás, hogy ekkora meg mekkora profit, aztán épp abban a 2-3 hétben/hónapban összejött nekik az, ami valószínűleg máskor tőkenullázással járna! Vicc az egész, átverés átverés hátán, ne dőljetek be egyiknek sem. Ha netán találtok egy olyat, amiben nem láttok buktatót, ne sajnáljátok belinkelni nekem, szinte biztos, hogy meg fogom tudni mondani, hogy miért nem jó az a robot!

Fejlemények

2013.11.10. 12:18 BeZol

Eltelt 1 hét a robot startja óta, és eleinte minden valós kötésem megegyezett a visszatesztelt eredményekkel is, aztán jött 2-3 nap nagyobb mozgás, aminek az eredménye az lett, hogy 312.22 GBP-re, tehát kb. -10%-ba estem le, míg a teszt alapján most már +20%-ban kéne legyek.

Értelem szerűen ez nagyon nem vicces, és felmerül a kérdés, hogy mégis hogyan lehetséges az, hogy +20% helyett -10%-ban vagyok.

A teszt-nek nincsen semmi baja, hiszen a valós futtatás során jegyzi meg és menti le az adatokat, és ezt tesztelem vissza, tehát elvileg a valóságban is annak kéne történnie, mint amit a teszt mutat, viszont itt nem ez van, tehát tick teszt ide vagy oda, a valósággal így sem egyezik a tesztem, de ennél pontosabb adatokkal nem lehet tesztelni, tehát máshol lesz a turpisság.

Volt alkalmam látni, ahogy megnyílt a pozícióm, és kb. rögtön ugrott egyet az árfolyam az ellentétes irányba és még ugyanebben a fél másodpercben vissza. Pozíció értelem szerűen kiütve vesztőben, teszt alapján pedig ebben az 1 másodpercben nem történt semmi. Vajon a tick adatok sem 100%-osak? Vajon mivel Oanda market maker, és látja a stoppot, ezért egy algoritmussal direkt kiütöget?

Ezek a kérdések merültek fel bennem, és most alternatív megoldásokat keresek, nem adom fel. Elsőként megpróbálom kijátszani a brókeremet, hogy ne lássa, hol szeretnék beszállni és hova tenném a stoppomat. Ezek után újabb valós futtatás következik. Ha ekkor sem lesz jó a történet, akkor ECN-es brókerre váltok, aki nem market maker, tehát a piacon teljesülnek a megbízásaim, nem pedig a bróker vesz fel ellenem egy ellentétes pozíciót, ergo amit veszítek azt ő nyeri. Időközben támadt még más ötletem is, mert sok dolognak kell stimmelnie, és felmerült bennem egy kisebb ütközés a teszt és a valós futás között, amit érdemes lesz korrigálni a teszteredmények valóságban történő elérése érdekében, de ha minden összeáll, akkor nem lesz megállás.

Természetesen kulcsfontosságú kérdés, hogy ezek után is kijátszik-e a brókerem vagy sem, lehet hogy csak bűnbakot keresek, de mostanra hallottam már annyira negatív sztorit Oandáról, hogy biztosan nem csak én látom azt a bizonyos gonosz mumust.

Ha netán váltani kellene, akkor egy olyan ECN-es brókert kell találnom, akinél DAX esetén 1 vagy annál kisebb a spread. Ha 1-nél nagyobb, akkor a stratégia kevésbé nyereséges, ha pedig 1-nél is kisebb pl. 0,5 pont, akkor pedig már nagyon-nagyon brutálisan lehet növelni a számla méretét. Mivel a tesztek alapján csupán maximum 15% a legnagyobb lehívás, ezért még jól is jöhet, hogy ha nem csak 1:50 tőkeáttétes lehetőségem van, hanem pl. 1:100-hoz vagy akár 1:200-hoz, ez pedig pl. Dukascopy esetén lehetséges is lenne, így ideje lesz nyitni náluk egy Demo számlát, hogy lássuk mi hogy van náluk.

Bármi újabb fejlemény lesz, azt azonnal postolom, addig viszont most nekem is várni kell.

Várakozások

2013.11.05. 15:05 BeZol

A stratégiámat nem szeretném megosztani a nyilvánosság előtt, így csak annyit fogok postolni mindig, hogy éppen mennyit nyertem/vesztettem. Az már mindenkinek a szíve joga, hogy el is hiszi-e vagy sem, de gondolom ez nem sok embert fog izgatni addig, amíg eredményes nem leszek.

A robot egy éles Oanda számlán fog futni, 1:50 tőkeáttéttel, és elsősorban DAX-on ( DE30EUR ). Természetesen MetaTrader 4-et használok, és DAX-on a spread általában 1 pip. Később előfordulhat, hogy EURUSD-n és még kitudja milyen párokon is elindítom, de ez elsősorban az elkövetkező valós futás eredményességétől is függ, ill. még optimalizálni kell a lehető legjobb eredmények elérése érdekében. Természetesen a múltbeli eredményesség egyáltalán nem garancia arra, hogy a jövőben is hozza a robot az eredményeket, de hát nincs miből másból kiindulni.

A számlámon 342,52 GBP volt, amikor elindítottam a robotot, most pedig 336,93 GBP van 2 kötés után. A start még múlt hét pénteken volt, de akkor még nem történt kötés, az első kötés pedig tegnap történt, így a "hivatalos" rajtot tekintsük 2013.11.04-ének.

Ahogy korábban is írtam, egyelőre csak DAX-on köt a robot, amint más páron is elindítom a robotot, azt jelezni fogom. A 2012.08.13-tól egészen 2013.11.05-ig történő tick teszt alapján a várakozásaim elég magasak, mindez pedig 13,68%-os maximális lehívás mellett. Aztán hogy mit hoz a jövő, idővel úgyis megtudjuk.

Üdvözlet

2013.11.05. 14:19 BeZol

Üdvözlök Mindenkit szerény kis blogomon!

Ezen a blogon szeretném postolni a kötési eredményeimet, melyeket egy automata robot kötöget helyettem, hiszen nem érek rá annyira, hogy megérné kézileg kötögetni.

Az automata robotokról mostanra elég sok tapasztalatom gyűlt össze, és amennyire oda voltam egyes darabokért, annyira hervasztó lett a számlaegyenlegem is, ezt megelégelve támadt egy új stratégia ötletem, amelyet kézileg ellenőriztem le, hogy elmúlt 1 évben tényleg eredményes lett volna-e bekötögetnem. A kézi ellenőrzésem alapján elhatároztam, hogy akkor ezt én most elkészíttetem egy automata robotba. Szépen lassan sikerült is minden, elkészült a robot, ami egy az egyben azt csinálta ahogy azt én elvártam. Aztán jött egy kisebb fajta fekete leves, hiszen a kézi tesztek során a végleges gyertyákat vizsgáltam, míg a robot a régi adatok alapján a valós gyertyamozgásokat szimulálja másodpercekre bontva. Itt derült fény arra, hogy még jó, hogy irattattam egy robotot és 1:1-ben visszateszteltem elmúlt 1 év mozgását, és kiderült, hogy mégsem olyan jó ez a stratégia, mostanra már biztos szépen leolvadt volna a számlám, ha kézileg el kezdtem volna kötögetni. Ez az egész azért van egyébként, mert lehet, hogy pl. egy bika gyertya open és close értéke között van 15 pont elmozdulás, de mire bezárul ez a teszem azt 15perces gyertya, addig lehet 2-3-szor is megjárja föl-le az egész távot, így pedig szinte azonnal búcsút lehet inteni a pozíciónknak, hiszen ott a csúszó-stop és a nullába húzás is, amit ilyenkor a mozgások ki is ütnek, ugyanakkor szükség van ezekre, így lehet bebiztosítani magunkat, ha mégsem indulna meg a mozgás a kívánt irányba.

Tehát volt egy robotom, amit én akartam, a saját elképzeléseim alapján, hittem benne, erre mégsem hozza az eredményeket úgy ahogy azt gondoltam volna. Teljesen elkedvetlenedtem, aztán nekiláttam kicsit jobban tesztelni a robotot, és kiderült, hogy talán mégsem zsákutca, csak más idősíkban kellene használni, teljesen más stratégiaként.

Viszont így felmerült egy újabb probléma, mégpedig hogy szerintem túl agresszív a stratégia, és tick-teszt ide vagy oda, szerintem nem fogja azt hozni a valóságban, mint amit a teszt mutat.

Ezt fogom most kideríteni, hiszen elindítottam egy éles számlán a robotot, és kíváncsian várom a fejleményeket. Lehet, hogy itt fogok nyilvánosan mindenki előtt elégetni egy számlát, de mi van, ha a tick teszt mégiscsak azt adja vissza, ami a valóságban is tapasztalható. Nem szeretnék előre elkiabálni semmit, lehet hogy mégiscsak találtam valami jót, idővel hamarosan úgyis megtudjuk.

süti beállítások módosítása