szerda, október 07, 2009

Ninják helyett Szakértő Tanácsadók

Sajnos nagyon régóta nem sikerült a blogba írnom egyetlen sort sem.
Most azonban igyekszem tovább folytatni a blog írását, mert úgy gondolom, hogy minden kisbefektetőnek joga van ahhoz, hogy sikeres nagybefektetővé váljon.

Ami a NinjaTrader-t illeti, sajnos nagyon komoly nehézségekbe ütköztem. Rögtön mindjárt a historikus adatok kinyerése a szerverekből. Ez ugye azért problematikus, mert ha nincsenek folyamatos adatok, akkor a backtest teljesen félrevezető lehet és nem jó értelembe véve.

A másik nagyon komoly hátrányossága, hogy nem kezeli a számlán lévő tőkét, de még csak eljárások sincsenek definiálva arra, hogy kezelni, lekérdezni lehessen.

További hátránya, hogy a stratégia leállításakor az összes nyitott pozíciót azonnal lezárja, függetlenül attól, hogy pozitív, avagy negatív a profitja.

Leginkább azonban a fejlesztéshez nélkülözhetetlen historikus adatok adták meg a kegyelem döfést. Ha ugyanis néhány napig el sem indítjuk a programot, akkor a hiányzó adatokat nem pótolja a program, hanem a grafikont ott folytatja, ahol abbahagyta. így az a néhány napi adat hiányzik, jó nagy rést hagyva a gyertyák között. Ez olyan szinten hamisítja meg a backtest eredményeit, hogy képtelenség két egyforma backtest-et generálni két különféle gépen.

Így hát felhagytam a NinjaTrader programozásával és másik platformot voltam kénytelen keresni.

Sokáig nem is kellett keresgélnem, mert megtaláltam azt a platformot, amit a legtöbb automata trader fejlesztő cég használ, ez pedig a MetaTrader.

A program nyelvezete jóval bonyolultabb - amolyan igazi programozós, kódolós -, viszont sokkal megbízhatóbb működésű platform, amit még kézi kereskedésre is lehet használni.

Fontos megemlíteni, hogy van magyarnyelvű felülete, ami viszont nem terjed ki a programozási felületre (MetaEditor), az sajnos angol maradt, bár a programozók ennek inkább örülni szoktak. A programozás nyelve az angol...

Hátránya még - a bonyolultabb nyelvezet miatt -, hogy a köthető devizapárok, részvények és CFD-k száma a brókercégek kínálatától függenek, ami általában nem sok, néhány főbb papírokra, devizapárokra szűkülnek. Itt azonban igen fontos megemlíteni, hogy nagyon sok - és ezt tényleg így kell érteni - nagyon sok brókercéggel van kapcsolatban a MetaQuotes, így gyakorlatilag amivel kereskedni szeretnénk, azzal tudunk kereskedni (van ahol nemesfémekkel, olajjal is!!!)

Ami viszont óriási előnye, hogy helyesen kezeli a historikus adatokat, a hiányzó adatokat automatikusan letölti a szerverről, remekül lehet benne kezelni a számlát, egyszerre egy irányba bármennyi kötést enged - természetesen a tőke erejéig -, a program leállítása után a nyitott pozíciókat ott hagyja, így azután az ember azt csinál velük, amit csak akar.

További óriási előnye még, hogy nem csak a program indításakor lehet paraméterezni, hanem a már futó programnak is meg lehet változtatni a paramétereit, menet közben. Így nem kell leállítani és újra elindítani a programot, illetve be lehet építeni a programba olyan funkciókat, melyeket ki- és be lehet kapcsolni menet közben.
Ez például arra is jó lehet, hogyha le akarjuk állítani a programot, akkor "kikapcsoljuk" a pozíció nyitásokat és csak a meglévő pozíciók ellenőrzött bezárásaival foglalkozik a program.

A programba épített súgó nagyszerű, valódi helyzetérzékeny súgó, tehát azonnal segítséget kapunk a program írása közben, ami egy ilyen bonyolult nyelvezet esetén nagyon fontos.

Másik érdekesség, amit eleinte hátránynak, később inkább előnynek tituláltam, az az, hogy a program minden tick-re lefut, így egy gyertyán belül több kötés is létrejöhet, több különböző áron - függően a pillanatnyi ártól.
Természetesen 4 sor beiktatásával megoldható, hogy minden gyertya befejezésekor fusson csak le a program, de nem ez az alapértelmezett.

Érdekes módon nem csak a számláról lehet információkat kinyerni, hanem a brókercégről is, a nevén kívül például azt, hogy mi az a minimális távolság, ahová engedi a stop-ok és a take profit-ok behúzását, de akár a spread-et is.

Sajnos a chart-ra rajzolni jóval zűrösebb, sok utasítással és igen bonyolultan lehet csak. Viszont ki lehet íratni a bal felső sarokba néhány fontos - általunk megválasztott - információt, ami mindig látszik - például mondjuk az egyenleget.

Az árak vizsgálatához és úgy egyébként bármilyen gyertyával foglalkozó eljárásnak meg lehet mondani, hogy milyen időtávon működjön, és akár azt is, hogy melyik instrumentumon, függetlenül attól, hogy a chart-on mit látunk. Hogy ez mire jó?
Például arra, hogyha az egyik devizapár hamarabb reagál a délutáni hírekre, mint a másik, akkor a másik chart-ján már lehet sejteni, hogy mi következik és már lehet is nyitni a pozíciót, mielőtt még jel alakulna ki.

Érdemes megemlíteni azt is, hogy a nyitott pozíciókkal egyenként kell foglalkozni a programban, tehát erre ki kell alakítani a megfelelő technikát a programozás során, de ez inkább előny, mint hátrány, ugyanis a tömeges pozíció kezelés legtöbbször veszteségeket szül.

Fantasztikus lehetőség az is, hogy ugyanazt a programot több chart-on is lehet futtatni, mégsem kell aggodalmaskodni amiatt, hogy elfogy a tőke és szétforgácsolja a program, hiszen ugyanazt a számlát használja mindegyik chart, tehát ha több instrumentumon futtatjuk, akkor szépen megosztoznak a tőkén testvériesen.

Egész egyszerűen azt kell, hogy mondjam, hogy eddig a legjobban használható platform, mind fejlesztésre, mind futtatásra. Maga a program is sokkal kisebb (4MB szemben a NinjaTrader 20MB-jával szemben) a működésközbeni memória felhasználásáról nem is beszélve! Ez utóbbi azért fontos, mert távoli szerveren nem mindegy, hogy mekkkora memória felhasználása van egy ilyen rendszernek. Sok-sok költséget lehet megtakarítani azzal, ha kisebb távoli gépet kell bérelnünk.

A végkövetkezetés tehát az, hogy a MetaTrader az eddigi legjobb fejlesztői platform, amit természetesen ingyenesen és korlátlanul használhatunk automatikus programok fejlesztésére, élő, valóságos adatokkal, demó számlán, játékpénzzel. Ha pedig beérett a programunk, irány az éles számla.

A címért pedig magyarázattal tartozom, a MetaTrader-ben a kereskedésre alkalmas programokat Expert Advisor-nak, azaz szakértő tanácsadónak nevezik, innen a furfangos cím.

A következő bejegyzésben a MetaTrader (ezentúl MT-nek rövidítem) lehetőségeiről fogok kicsit bővebben írni, illetve elkezdünk programozni is.

Addig is, aki szeretné, töltse le a programot és ismerkedjen vele.

kedd, június 30, 2009

Alapvető gyertyák, és alakzatok felismerése

A múlt héten azt ígértem, hogy néhány alapvető gyertya felismerését fogom leírni, illetve megismerjük a NinjaTrader-t a legalapvetőbb szinten.

Ne is vesztegessük az időt, csapjunk a lovak közé.

Kezdjük a NinjaTrader-rel, úgyis ebben fogunk fejleszteni. Legelső lépésként, aki még nem töltötte le, annak javaslom, töltse le a Free licences változatot, ami ingyenes, korlátlanul tesztelgethetünk benne, fejleszhetünk, az egyetlen, amit nem tehetünk, az az, hogy élesben kereskedjünk vele, még akkor sem, ha van érvényes számlánk hozzá.
Tehát irány a www.ninjatrader.com oldal, ahol legelőször be kell vallanunk, hogy mi már használtuk korábban, avagy újak vagyunk. Válasszuk azt, hogy újak vagyunk (> New Users — Register here:) és válaszoljunk a három kérdésre. Az egyetlen igazán fontos adat, az az email címünk, javaslom, hogy akinek még nincs, az készítsen egy Gmail-es fiókot, ugyanis ez igen gyors, 7GB tárolási lehetőség és számtalan hasznos funkciója van, amelyet egyébként is érdemes használnunk.
A többi adat teljesen érdektelen, bármit beírhatunk, a többit a lapon hagyjuk érintetlenül, kivéve az alsó három jelölő négyzetet, ahol mindent be kell jelölnünk. (I trade the following asset classes: ; Futures, Forex, Equities). Ezután a lap alján a Submit gomb megnyomásával a letöltő oldalra jutunk, ahol a legfelső Download linkre kattintva letölthető a program.

Ha jól adtuk meg az email címünket, akkor meg is kaptuk email-ben regisztrációs kódot, ami nélkül nem tudjuk telepíteni a programot.
Szóval akkor jöhet a telepítés, itt majd kéri a kulcsot, amit kimásolunk a kapott levélből és bemásoljuk az ablakba, ahol kéri.

Ha elindítjuk a programot, akkor a Control Center-ben találjuk magunkat, ez lesz a "főhadiszállásunk", minden fontos dolgot innen lehet elérni.

Egy tisztességes fejlesztői környezetben, kell hogy legyen egy programkód szerkesztő eszköz, egy fordító, amely az általunk szerkesztett kódot értelmezi, majd lefordítja a számítógép számára érthető nyelvre, szükség lesz egy hibakereső rendszerre, amellyel a futás közbeni hibákra deríthetünk fényt, illetve egy teszt környezetre, ahol kipróbálhatjuk a fejlesztett programunkat.

A program fejlesztés menete többnyire a következő lépésekből áll :
  1. A programkód megszerkesztése. A programkódot "szaknyelven" forráskódnak hívják, ezentúl mi is ezt a terminológiát használjuk. Azért hívják forráskódnak, mert ez a forrása annak a programnak, amit futtatunk. Nyilvánvaló, hogy az ember számára leírt szavak, kódok, csak az ember számára olvashatóak, értermezhetőek. A számítógép számára csak betűk és számok sorozata, amit nem ért. A forráskód szerkesztését szokták "program írásnak" nevezni.
  2. Fordítás. A forráskódot lefordítjuk a számítógép számára is érthető nyelvre, azaz gépi kódra. Ez a kód nekünk embereknek érthetetlen, ezért van szükség a "hídra" ember és gép között, ez a fordítóprogram. (csak halkan jegyzem meg a hardcore programozók kedvéért, hogy itt természetesen nem valódi gépi kódról van szó, hanem egy .NET kódról, ami a Windows .NET-et emuláló környezet számára értelmezhető, de a mi szempontunkból ez teljesen lényegtelen.)
  3. Tesztelés. A megírt és lefordított programot lefuttatjuk a teszt környezetben és megnézzük, hogy a kívánt eredményt hozza-e, avagy sem.
Nem említettem a hibajavítást, mert ezt folyamatosan kell végeznünk a fejlesztés során. Többféle hibával fogunk találkozni, melyek fajtái elég jól körülhatárolhatók :
  • Szintaktikai hiba. Ezek a hibák - mint a neve is mutatja - egyszerű "nyelvtani" hibák az adott programnyelvben. Például a zárójelek hiánya, a kapcsos zárójelek hiánya, a sor végi pontos vesszők hiánya, esetleg hiányzó paraméterek, stb. Minden programnyelvnek adott a "nyelvtana", azaz a szintatktikája. Ezt nagy vonalakban meg kell tanulni, de nem a végletekig, hiszen ott a Súgó, a kézikönyv, amit bármikor megnézhetünk.
  • Fordítási hibák. No, ezek már keményebb problémák. Ezek a hibák összefüggésben lehetnek az adott programnyelv "nyelvtanával", de többnyire olyan hibákról van szó, ami elméletileg a szintaxisnak megfelel, de fordítás közben mégsem lehet értelmezni. Ilyen hibák lehetnek például azok, amikor egy egész típusú paraméter helyett mondjuk egy szöveges paramétert adunk meg. A szintaxis előírja, hogy kell az a paraméter, de az már csak fordítás közben derül ki, hogy nem jót adtunk meg.
  • Futási hibák. Ezek azok a hibák, amelyek a legtöbb bosszúságot okozzák. Ezeket igen nehéz felderíteni, aki használt már Windows-t, az már találkozott is ilyennel (Application error, vagy Vista-soknál Critical error feliratú ablak). A futási hibák általában a számítógép operációs rendszere és a lefordított program közötti "nézet eltérésekből" adódnak. Nem is mindig a programozó hibája, és legtöbbször javítani sem lehet, csak elkerülni. Legtöbbször a hibaüzenet még csak nem is utal a hiba valódi okára, ezért nehéz dió. Szerencsére viszonylag ritkán fordul elő, NinjaTrader-ben még eddig nem is találkoztam ilyesmivel, talán nálam tapasztaltabb programozók már igen.
  • Logikai hibák. Na, ezek a hibák valójában nem hibák. Kakukktojások. A program lefordul, működik jól, de mégsem azt csinálja, amit kellene, pedig elvileg jól megírtuk a forráskódot. Hát igen. Ez igazából a programozó észjárásának a hibája, ami leginkább az adott programozási nyelv megismerésével küszöbölhető ki. Ha valaki nem ismeri elég jól az adott nyelvet, akkor ilyen logikai hibákat igen szépen el lehet követni, aztán meg a programozó csak csodálkozik, hogy nem úgy működik a program, ahogy kellene. Ilyenkor szoktak születni az olyan kijelentések, hogy ez a programnyelv nem jó, nem jól működik, használhatatlan, stb. Megoldás : programnyelv ismeret, próbálgatás, tesztelés.
Bármilyen hihetetlen, a NinjaTrader-ben minden megtalálható, ami a sikeres fejlesztéshez szükséges. Mindjárt el is kezdjük a fejlesztést. De leges legelőször beállítjuk magunknak a környezetet, amiben dolgozni fogunk.

Mivel szinte minden a rendelkezésünkre áll, ezért csak a teszteléshez szükséges környezetet kell beállítanunk, amely a mi esetünkben azt jelenti, hogy kellenek hisztórikus adatok, amelyekkel tesztelhetjük a programjainkat.
Ehhez szükséges adatforrásra van szükségünk, amely az adatokat szolgáltatja, ezt fogjuk beállítani.

Válasszuk ki a Tools menüben az Account Connections... menüpontot.
Ekkor valami ilyesmit kapunk :

Itt az Add... gombra kattintva adhatunk újabb adatforrást a fejlesztői környezetünkhöz. A megjelenő tájékoztató ablak közli, hogy most egy varázsló végig vezet bennünket a szükséges lépéseken, itt nincs is már dolgunk, mint a Next > gombra kattintani.

Ebben az ablakban a Connection name mezőba olyan nevet adunk, amilyet csak szeretnénk, célszerű a kapcsolatunk nevéhez kapcsolódót adni. Legyen mondjuk Gain Capital . A középső legördülő sávban a Gain-t válasszuk ki, és legvégül a Historical Data részben a középsőt, azaz a Use NinjaTrader servers opciót válasszuk ki.

A Next > gombbal tudunk tovább menni, ahol egyetlen teendőnk maradt, a Mode legördülő mezőben a Demo lehetőséget válasszuk ki, így nincs szükségünk jelszóra és azonosítóra.
Ismét a Next > gombbal mehetünk tovább, ahol a beállításaink összegzését olvashatjuk, majd a Finish gombra kattintva készen is vagyunk.

Ezzel készen is állunk a fejlesztési munkánk kezdésére.
Csatlakozzunk is az adatforráshoz a File menüben a Connect almenüben a korábban elkészített adatforrás nevét kell kiválasztani. (a mi példánkban Gain Capital)
Kis dallamocska jelzi, hogy sikerült...

A NinjaTrader-ben - ahogyan már említettem is - lehet indikátort és stratégiát is fejleszteni. Aki tőzsdézik, annak nem kell ezt elmagyarázni. Az indikátorok a mi jó barátaink, a stratégiánk pedig keresi a pénzt (jó esetben).

A NinjaTrader-ben ráadásul kétféle módon lehet ezek fejlesztését elkezdeni. Az egyik, hogy egy varázsló segítségével egyszerűen "behuzalozzuk" a logikát és már készen is vagyunk, nem kell a forráskód szerkesztésével, fordítással, meg egyéb pepecs munkával töltenünk az időt. Sok időt és bosszúságot takarítunk meg így.

Ennek azonban az az ára, hogy nem minden funkcionalitást tudunk megvalósítani.

Kezdjük.
A NinjaTrader-ben a Tools menüben válasszuk ki a New NinjaScript ... azon belül pedig a Strategy... menüpontot.
Rögtön megnyílik a varázsló.
Alul a szokásos gombok mellett van még két másik is, amelyeket bármikor megnyomhatjuk a varázsló futtatásakor. Az egyik a View Code... a másik pedig az Unlock Code. Az előbbi megmutatja azt a forráskódot, amelyet a varázsló generál a háttérben, miközben mi a logikát "huzalozzuk" éppen. A másik nemcsak megmutatja a kódot, de szerkeszthetővé is teszi, de ekkor már nem térhetünk vissza a varázslóhoz többé, ezért is "unlock", tehát a lezárt kódot nyitja fel.

Egyenlőre ne nyomogassuk ezeket a gombokat!
Később el sem tudjuk majd képzelni a programírást az Unlock Code gomb nélkül, nem is kell majd a varázsló.

Az első Next > gomb után a bemenő adatokat meghatározó képernyőre kerülünk, itt a MyInput0-t rögtön töröljük is ki, mert nincs rá szükség. Itt adhatjuk meg azokat a bemenő paramétereket, melyeket a stratégia futtatásakor kezdő adatként megadunk. Erre majd még később kitérünk.
Tehát itt is Next > gomb és máris a varázsló leglényegesebb képernyőjére jutottunk. Az ablak felső részében a feltételeket kell meghatároznunk, az alsó részében pedig azt a tevékenységet, amit a feltétel teljesülésekor végre akarunk hajtatni a stratégiánkkal.

A felső ablak melletti Add... gomb segítségével meg is fogalmazhatjuk az első feltételünket.
Jelen esetben ez az lesz, ha a gyertya záróára magasabb, mint a nyitóára, akkor a gyertya zöld.
Válasszuk ki a jobb oldali ablakban Price data könyvtárat, abból pedig a Close tételt. Ekkor az ablak alatt mindenféle beállítási lehetőség jelenik meg. Ezekkel most nem foglalkozunk, később esetleg. Itt nem fontos.

A bal oldali ablakban hasonlóképpen kell eljárnunk, de ott az Open tételt kell választanunk.
A két ablak között pedig keressük meg a megfelelő relációs jelet, ami itt ugyebár a ">" jel lesz.
Ezzel a feltételünket meg is fogalmaztuk.

Következhet a tevékenység, melyet a feltétel teljesülése esetén kell végrehajtanunk.
A lenti ablak melletti Add... gomb megnyomása után nyissuk ki a Drawing könyvtárat, melyben a Diamond tételt kell kiválasztanunk. Itt két dolgot kell még tennünk.
Az egyik a rombusz színe, amit vagy átírunk Green-re kézzel, vagy kiválasztjuk a listából a nekünk tetsző zöldet.
A másik pedig az Y mező lesz. Itt ugyanis a rombusz helyzetét fogjuk meghatározni a grafikonon a gyertyához képest. Ha hagyjuk a 0 értéket, akkor sajnos nem fog látszani. Tehát 0-tól eltérő értéket érdemes választani. Ha a mező végén található apró gombocskát megnyomjuk amin "..." szerepel, akkor egy újabb ablakot kapunk, ahol az Y értékét meghatározhatjuk. Válasszuk a Price Data könyvtárból a Close értéket, majd az alul megjelenő Parameters részben az Offset részbe írjunk 2-t. (mindjárt rátérünk mit is jelent ez)
Az OK megnyomása után egy másik OK a tevékenységre és készen is vagyunk.
Ahhoz az ablakhoz érkezünk vissza, ahol a feltételeket és a tevékenységeket határoztuk meg.
Ezt kell, hogy kapjuk. A Next > hatására a következő ablakban a Stop-loss értékeket határozhatnánk meg, de most erre nincs szükségünk, így ismét Next > majd az utolsó összegző ablakon egy Finish.

Ezzel el is készült a stratégiánk, ezt egy apró üzenet ablak közli is velünk.

A tesztelésére egy nagyon egyszerű módszer fogunk választani.

Válasszuk a File menü New..., majd a Chart... menüpontját. Állítsuk be a következőképpen :
Tehát EURUSD 1 percesen 15 napnyi hisztórikus adattal.
A megjelenő grafikonon a felső ikonsorból az utolsó előttit, egy sárga kerek gombra hasonlító $ jelű gombot nyomjunk meg.


Ezzel fogjuk a stratégiánkat hozzárendelni a grafikonhoz. FIGYELEM! Ha nem kapcsolódtunk adatforráshoz, akkor ez a gomb szürke lesz, nem tudunk majd stratégiát kiválasztani! Tehát csatlakozni kell előtte!

A megjelenő ablak bal felső részében keressük meg a stratégiánkat, azon a néven, amilyen néven a varázsló futtatásakor elneveztük. Duplán kattintsunk rá, majd OK gomb.


A grafikonon valami hasonlót kell látnunk :

Látható, hogy csak a zöld gyertyák fölé rajzolt zöld rombuszt a stratégiánk, tehát működik, méghozzá jól.

A következő post-ban a piros gyertyákat fogjuk megjelölni hasonló módon, de már nem a varázslóval készítjük el a stratégiát, hanem a forráskódot mi magunk írjuk meg, a varázslóra csak a macerásabb részeket bízzuk rá.

Aki esetleg kedvet érez hozzá, az elkészítheti magának a varázslóval a piros gyertyákat megjelölő stratégiát.

Aki pedig az egésznek az értelmét keresi, annak elmondom - a teljesség igénye nélkül -, hogy ezeknek komoly hasznát fogjuk venni, amikor majd a gyertyatrendeket fogjuk vizsgálgatni.
Hamarosan a doji és a marobozu gyertyák felismerésével folytatjuk, majd ezen alapkövekből felépítjük az első gyertyaalakzat felismerést.

Ezután pedig már automatikusan pozíciót is nyitunk.
Jó olvasást, gyakorlást addig is!

péntek, június 26, 2009

A stratégiákról

Ahogyan az alapfogalmak megbeszélésekor is szó volt róla, stratégiának nevezzük azt a logikát, amellyel magát a kereskedést lebonyolítjuk, tehát magát a NinjaTrader-ben megírt programot.

Ahhoz, hogy jó stratégiát tudjunk írni, ahhoz tisztában kell lennünk a technikai elemzés fortélyaival, illetve a kézi kötésekben kell, hogy legyen gyakorlatunk, különben sosem fogjuk tudni leellenőrizni, hogy a programunk jól működik-e, de még azzal is problémánk lesz, hogy egyáltalán a stratégiát kitaláljuk.

Ezen az oldalon néhány olyan stratégiát fogunk megtárgyalni és leprogramozni, amelyek profit faktora még nem a legjobb, de azért nem veszteséges, és akár éles kereskedelemre is alkalmas.
Aki megfelelően kreatív, jó tőzsdéző, esetleg még programozni is tud, az biztosan össze tud majd rakni egy saját fejlesztésű stratégiát az itt leírt és fejlesztett építő kockákból.

Ahhoz azonban, hogy tényleg munkához tudjunk látni, a stratégiákról a legalapvetőbb dolgokat kell tisztáznunk, elsősorban "tőzsdeszakmai" szempontból.

Aki tanult tőzsdézni, az tudja, hogy a pozíciókat JEL-ekre kell nyitni és bezárni. Természetesen a veszteségekre is fel kell készülnünk, stop-loss használatával, vagy money management-tel.
A jeleket az árfolyamok, ezen belül a gyertyák, ezek ár alakzatai, valamint a hozzájuk kapcsolódó trendkövető és momentum indikátorok adják együttesen.
Tehát elsősorban az árak változásaira figyelünk, majd pedig az indikátorok jelzéseire. Az indikátorokból többet is használnunk kell (akár 8-10-et is), és ezek 80%-a kell, hogy adja a kötési jelet, az áralakzatok mellett.

Kulcsfontosságú természetesen a trendek felismerése is, ez ugyanis a fő csapásirányt fogja adni. Nyilván senki sem fog long-ot kötni egy csökkenő trendben, kivéve természetesen a trendellenes stratégiák esetén, de az már a legprofibbak kiváltsága. Tehát a trendkövető stratégiákkal foglalkozunk egyenlőre, talán később (ha majd lesz pénzem a haladó tanfolyamra), belekóstolunk a trendellenes stratégiákba is, de egyenlőre maradjunk a trendkövetőknél.

Mit jelent ez programozás szempontjából?
Nos, igen sokmindent.
Először is, meg kell tanítanunk a programunkat felismerni a trendeket, ezek változásait, még mélyebre hatolva pedig a gyertyatrendek felismerését kell leprogramoznunk. Ha a gyertyatrendeket jól és elég nagy megbízhatósággal felismeri a programunk, akkor már a teljes trendekkel is elboldogulhatunk, majd ezek törését is fel tudjuk ismertetni a programmal.

Mivel a NinjaTrader kezünkbe adja az indikátorokat, így az indikátorok által szolgáltatott jelek felismerése a gyertyatrendek alapján már gyerekjáték lesz.

A kettő együtt pedig a nyerő stratégia kidolgozása lesz!
Röviden tehát a kidolgozás menetrendje a következő sémát kell, hogy kövesse :

Árfolyam trendek felismerése
  • Gyertyaalakzatok felismerése (doji, marobozu, kulcsforduló, előrefele terhes, visszafelé terhes, stb.)
  • Gyertyatrendek felismerése
  • Völgyek, csúcsok felismerése
  • Trendek felismerése
Indikátorok
  • Indikátorok jelzéseinek felismerése
  • Indikátorok összevetése
  • Megfelelő indikátorok kiválasztása
Veszteségek kivédése, csökkentése
  • Stop-loss használata (első húzás és utána folyamatos után húzás)
  • Money management használata
  • Tőke kezelése, nyereségek visszaforgatása
  • Veszteségkeretek használata
A legkomolyabb feladat természetesen a gyertya alakzatok felismerése, bár mivel megszámlálható gyertyákról van szó, így ez nem olyan kihívás, mint mondjuk egy fülescsésze felismerése, ami kialakulhat 50, de akár 200 gyertyából is.

Sajnos programozás szempontjából nehezen fogható meg - de azért persze megfogható, csak nehezen - a nagyobb áralakzatok kialakulása, mint például a kettős csúcsok, kettős völgyek, fej és vállak, fülescsésze, árbóc, zászló, stb.
Később elképzelhető, hogy ezekre is fordítunk figyelmet, de mivel a stratégia logikája nem egy folyamatosan futó program, hanem minden egyes tick-re, vagy gyertyára fut le, így nekünk első körben - és utána még jó sokáig - elégséges lesz a rövidtávú gyertyatrendek, valamint az árfolyamtrendek felismerésére.

Az áralakzatok felismeréséből fakadó hiányokat pedig majd az indikátorok "előrejelzései", pótolják.
Egyenlőre tehát elég a gyertyákkal kapcsolatos trendek, alakzatok leprogramozása, mely mindössze néhány (de legalábbis megszámlálható számú) gyertyákból állnak.

Egy kicsit előre szaladva nézzünk bele a gyertyaalakzatokba.
Miből is állnak a gyertyaalakzatok javarészt.
Háromféle építőköve van a gyertya alakzatoknak, ezek a következők :
  1. Fehér és fekete közönséges gyertyák
  2. Doji gyertyák
  3. Marobozu gyertyák
A fentiek kombinációjából állnak össze (maximum 5-8 gyertyából) a trenderősítő, trendváltó gyertyaalakzatok.
Tehát a legelső feladat ezen gyertyák pontos felismertetése a programmal.

A következő post-ban már ezek leprogramozásával fogunk foglalkozni, így megismerkedünk a NinjaTrader ehhez kapcsolódó funckióival is, a teljesség igénye nélkül.
Leprogramozzuk a doji, marobozu, valamint a fekete és fehér gyertyák felismerését, először az elmélet, majd pedig a gyakorlat oldaláról szemügyre véve.

Ezekből később indikátorokat faragunk, hogy majd a későbbiekben ezekre építkezve könnyedén írhassuk meg a stratégiánkat.

Addig is érdemes kicsit elmélkedni ezen gyertyák felismeréséről, hogy miféle matematikai szabályokkal lehetséges.

Mindenkinek jó elmélkedést! Jövő héten folytatjuk!

csütörtök, június 25, 2009

Alapfogalmak a stratégiákhoz

A NinjaTrader kezelő felületével nem szeretnék foglalkozni, mindenki maga megtapasztalhatja, hogyan is néz ki és hogyan is működik.
A teljesség kedvéért azért majd a fejlesztési lépésekhez szükséges menüpontokat és azok használatát tárgyaljuk természetesen.

Szeretném azonban felhívni a figyelmet egy nagyon fontos dologra, és ha úgy tetszik, akkor ezt felfoghatjuk az automatizált kereskedés pszichológiájának is!
A programjaikat tesztelni csak a múltbéli adatok alaján tudjuk, mivel kristálygömböt még nem lehet kapni. A múltbéli adatok alapján viszont csak statisztikai valószínűséggel fogjuk tudni megállapítani, hogy mennyire hatékony a programunk. A jövőre vonatkozólag "csak" azt mondja meg, hogy nagy valószínűséggel milyen nyereséget tud elérni a program elméletileg, de ez - a jövő ismeretének hiányában - nem garantálható és akár extrém veszteségeket is produkálhat a program, ha nem jól van megírva. (veszteség elleni védekezési technikákról is lesz szó természetesen). Tehát a programozott kereskedés nem a tuti lottó ötös, hanem egy meglehetősen hatékony segítség, ha úgy tetszik egy intelligens harmadik kéz, amely akkor is dolgozik, ha a saját két kezünk tele van éppen munkával.

Néhány alapfogalmat érdemes tisztázni, mielőtt neki kezdünk programot írni. Kezdjük is.

Stratégia. Ez a NinjaTrader-ben más értelemmel bír, bár ha jobban meggondoljuk, akkor mégsem. A NinjaTrader-ben a stratégia tulajdonképpen maga az a program, amely helyettünk kereskedik. Egy egyszerű programkód, amelyben leírjuk, hogyan is kell kereskedni. Vagyis leírjuk a stratégiát. Így hát mégsem biztos, hogy mást jelent, de amikor NinjaTrader stratégiáról beszélünk, akkor természetesen arról a programról lesz szó, amit írunk, fejlesztgetünk.

Indikátor
. Itt is kicsit skizoid az állapot, ugyanis a kézi kereskedésnél használatos indikátorokról van szó, de talán kicsit mégis többről. Kézi kereskedésnél az elemző programban ha odapakolunk egy indikátort a grafikonra, akkor tudjuk használni. Ezekből ugyebár kétféle van, az "overlay" és a "non-overlay". Vagyis amit a gyertyákra rajzol a program, és amit a gyertyák alá. Csak a tisztán látás kedvéért, overlay indikátor egy mozgó átlag, vagy a híres Bollinger-szalag, non-overlay pedig az RSI, MACD.
Nos, a NinjaTrader-ben az összes indikátort használhatjuk, akár egyidőben is, anélkül, hogy azt a grafikonon megjelenítenénk, ugyanis az indikátorokat külön "függvényekként" kezeli a program. (A függvényekről később még részletesen ejtünk szól, egyenlőre legyen elég annyi, hogy a programban az indikátorok értékét bármikor megkaphatjuk és felhasználhatjuk.)
Természetesen az indikátorokat ki lehet rajzolni a grafikonra, ha ezt külön leprogramozzuk, így amikor a stratégiát (azaz a kereskedő programot) elindítjuk, akkor az automatikusan felrajzolja a grafikonra. De akár kézzel is felrakhatjuk a grafikonra, ha nem akarunk a programban ezzel bíbelődni. Hozzátenném, hogy azért érdemes a stratégiában leprogramozni, hogy rajzolja az indikátorokat, mert így nem kell mind a 8 indikátort kézzel utólag felpakolászni, hanem a stratégia indításakor máris látjuk mi újság, és azonnal látjuk azt is, hogy jól működik-e a program.

Backtest
(ejtsd : bekteszt). Ez egy igen hasznos funkció a NinjaTrader felületén. Arra való, hogy az általunk elkészített stratégiát, vagy indikátort (igen, ilyet is programozhatunk, és fogunk is, mert kell), lefuttassuk a régmúlt történelmi adatokon. Vagyis ezzel azt tudhatjuk meg, hogyha 2006 január elsejétől ezt a stratégiát futtattuk volna napjainkig, akkor mennyire lett volna hatékony. Ez tehát egy igen fontos funkció lesz a későbbiekben. Fogjuk is használni nagyon sokat a következővel együtt. FIGYELEM! A backtest által szolgáltatott eredmények nem azonosak a jövőben realizálható eredményekkel, tehát ez nem egy jövendőmondó funkció! Ez egy tesztelő funkció, ami nagy valószínűséggel vetíthető a jövőre is. De kizárólag statisztikai alapokon.

Optimalizálás. Ez talán a a backtest-nél is fontosabb funkció, ugyanis elképesztően sok időt képes megtakarítani nekünk, ráadásul képes megmondani, hogy a stratégiánkban leprogramozott "elméleti" tevékenységek mennyire hatékonyak, egyáltalán jól gondolkodtunk-e és érdemes-e tovább bíbelődni a stratégiánk további fejlesztgetésével.
Ez a funkció ugyanis azt csinálja, hogy a régmúlt történelmi adatokon lefuttatja a stratégiánkat, de az általunk meghatározott paraméterek különféle szélsőértékei között próbálgatva. Röviden és egyszerűen arról van szó, hogyha például az RSI indikátor alapjain működik a stratégiánk, akkor megadhatjuk, hogyha az RSI periódus ideje milyen szélső értékek között változhatnak (például 5 és 50 között), és így melyik az a periódus idő, amivel a legnagyobb nyereséget tudjuk elérni. Aki ezt nem találja hasznos dolognak, ne is indítsa el a NinjaTrader-t!!!

Profit faktor. A profit faktor nem más, mint a stratégiánk teljesítmény mutatója. Azt mutatja meg, hogy a kereskedés során mennyivel több pénzt keres a stratégia, mint amennyit elveszít. Tehát a 10-es profit faktor azt jelenti számunkra, hogy 10-szer annyi pénzt keres, mint amennyit elveszít. Számokban : 10 dollárt nyer, de 1-et elveszít. Mivel ez egy nagyon fontos mutató, így ennek a meghatározása kulcsfontosságú! A stratégiánk értékét, teljesítményét fogja mutatni.
Amikor majd az adózásról beszélünk, akkor fogjuk látni - és megtapasztalni -, hogy melyik az a profit faktor érték, amely még éppen optimális. (mert ugye nem szabad elfelejteni, hogy adózni azt azért kell, ráadásul vannak számlavezetési és bróker díjak is!)
Nagyjából azt lehet mondani, hogy 4-5 körül már jól teljesít a stratégiánk, 8-nál már nagyon jól teljesít, efölött pedig csak a csillagos ég van, tehát egy 10-es stratégiával már bátran nekivághatunk az éles kereskedésnek.
Sajnos arról is kell beszélnünk, hogy az 1-es profit faktor a null szaldós stratégia, 1 alatt pedig veszteséges. A nulla az pedig nulla. Az nem kereskedik. Negatív profit faktor pedig nem létezik.

A profit faktorról és a backtest, optimalizálás összefüggéseiről azért még egy igen fontos dolgot kell megtanulnunk.
A profit faktor értékét a backtest, illetve az optimalizálás során kapjuk meg. A két funkció használata a meghatározásához nélkülözhetetlen. Az optimalizálás során meghatározott paraméterekkel tudjuk a backtest-et lefuttatni, ezzel igazolva a stratégiánk és persze az optimalizálás sikerességét.

Viszont nem mindegy milyen időtávon és nem mindegy milyen idő intervallumon futtajuk ezeket.
Az optimalizálás - természetéből adódóan, azaz a próbálgatások száma miatt - igen sokáig eltarthat. Ezért hajlamosak vagyunk rövid időintervallumon futtatni, mondjuk az elmúlt két hét adataira támaszkodva.
Ezzel szemben a backtest viszonylag gyorsan fut le, ezért hajlamosak vagyunk hosszabb időintervallumon futtatni, mondjuk az elmúlt egy év adatain.

Így azután nem szabad azon csodálkozni, hogy az optimalizálás során kapott és kiszámított profit faktor nem lesz azonos a backtest eredményeivel.
Például, ha az optimalizálás az elmúlt két hét adatai alapján történik, és kijön, hogy a várható profit faktor 10 lesz, ha ilyen és ilyen paraméterekkel futtatjuk, de amikor a backtest-ben megadjuk az optimalizálás által "kiköpött" paramétereket és az elmúlt egy év adataival tesztelünk, akkor csodák-csodájára csak 4-es profit faktor jön ki.

Az optimalizálással és a backtest-tel ugyanúgy kell gondolkodnunk és bánnunk, mint a mozgóátlagokkal. Rövid távon nagyobb értékeket ér el, de bizonytalanabb, hosszabb távon nem ér el olyan nagy értékeket, de azt sokkal nagyobb bizonyossággal. Minél hosszabb időtávra futtatjuk az optimalizálást, annál reálisabb értéket fogunk kapni. De mindenképpen érdemes egy hosszabb és egy rövidebb időintervallumra futtani az optimaizálást és a kettő közötti "arany közép utat" választani.
Mindenesetre érdemes csak azokat a stratégiákat optimalizálni, amelyeket jól átgondolva írtunk meg, és a lehető legkevesebb paramétert használjuk benne.
Még így is lesznek olyan esetek, amikor az optimalizálás egy egész napig, vagy esetleg napokig fog futni. De megéri majd!
A stratégiák tesztelésekor erre még úgyis részletesen kitérünk.

Nos, erről ennyit egyenlőre, a következő post-ban kicsit beszélünk a stratégiák elméleti és gyakorlati felépítéséről, ezzel el is kezdjük a programozást.

szerda, május 27, 2009

Japán gyertyákhoz Ninja-kat!

Ahogyan már a korábbiakban is ecseteltem, a legkifizetődőbb módszer a kispénzű befektetőknek a tőzsdei kereskedésre a FOREX hullámainak meglovaglása, illetve az automatizált kereskedési módszerek.

Az automatizált tőzsdei kereskedések sok szempontból előnyösek. A legfontosabb előnyei :
  • érzelmek nélkül (így a tőzsde pszichológiai problémákat kiküszöbölve) kereskedik, a meghatározott szabályok szerint.
  • További hatalmas előnye, hogy sosem fárad el, éjjel is kereskedik, és akkor is, amikor a munkahelyünkön dolgozunk.
  • Bármikor ellenőrizhető, és módosítható, leállítható, újraindítható, stb.
  • Pontosan azt csinálja, amit kell, illetve amit a program meghatároz

Hátránya is van azért, íme :
  • Nem képes bonyolult áralakzatok felismerésére (vagy csak aránytalanul sok időráfordítással készült program segítségével, tehát nem költséghatékony)
  • Leginkább a rövidtávú gyertyatrendeket lehet vele meglovagolni, azokat is inkább indikátorok segítségével.
  • A rosszul megírt program több kárt tehet, mint amennyi hasznot hajt.
  • A legtöbb automatizált kereskedési platform drága.
A hátrányokkal együtt lehet élni, igazán a program megírása a kihívás, illetve nem utolsó sorban a kereskedési platform és konfiguráció ára az, amin tudunk változtatni.

Kezdjük az egyszerűbbel, a kereskedési platformokkal.

A platformok népszerűségét két dolog határozza meg. Az egyik a devizapárok száma, a másik pedig a spread-ek nagysága.
Ebben listavezető - utcahosszal - az OANDA. Ez egy kanadai brókercég, amely egyedülállóan alacsony spread-ekkel forgalmaz devizapárokat. Ráadásul igen sok devizapár található, a kereskedési grafikus felülete az egyik legjobb, amit kézi kereskedésre használni lehet.

Aki szeretne FOREX-en kereskedni, annak melegen ajánlom.

Sajnos azonban az automatizált kereskedéshez szükséges programozói felületet nagyon drágán árulja, 600 USD havonta. Persze, ha az ember ennek töbszörösét is meg tudja keresni, akkor ez nem olyan nagy baj, de ez az összeg akkor is nagyon sok.

Ezt még nem tanulmányoztam, de azt tudom, hogy Java alapú API-t licenszelnek ennyi pénzért. Elképzelhető, hogy később kicsit komolyabban szemügyre veszem, mert azért az OANDA eléggé a szivemhez nőtt a gyakorlások során. Azt viszont már most tudom, hogy kell egy komplett Java-s fejlesztő környezet, amit a fejlesztő maga állít össze, kell, hogy legyen 600 USD a számlán mindig, valamint kell tesztelési lehetőség is, amit az FXGame-en lehet is. De ezt a környezetet fel kell állítani, szöszölni kell vele és nem utolsó sorban drága is.

A másik ilyen kereskedési platform a NinjaTrader. Ő egy igazi svájci bicska, ugyanis FOREX-en is lehet kereskedni vele, de akár az amerikai tőzsdén részvényekkel is.
Minden egy kupacban rendelkezésre áll, ugyanis a kapcsolatok beállítása után tesztelni lehet demo adatokkal, illetve úgynevezett backtest-et lehet csinálni a múltbeli adatokkal.
A nyelvezete leginkább a C#-hoz hasonlít, ráadásul a varázslóival olyanok is tudnak kódot generálni, akik egyébként nem tudnak programozni.

Ára is barátságos, az ingyenes verzióval lehet fejleszteni, backtest-elni, élesben kereskedni viszont kétféle megoldással lehet. Az egyik, hogy 50 USD / hónap díjat fizetünk érte (azaz lízingeljük), illetve megvásároljuk véglegesen (ekkor persze megszabadulunk a havi költségektől), ekkor 995 USD-t kell kifizetnünk érte.

Habár nem olcsó, sőt sokkal drágább, mint az OANDA, de ezt csak egyszer kell kifizetni, a lízingeléssel pedig az olcsóbb indulást tudjuk megoldani.
Sajnos az OANDA-hoz nem tudunk vele csatlakozni, viszont a GainCapital rendszeréhez igen, ahol a további lehetőségek a következők :
  • Mini számla, 250 USD minimális tőkével lehet számlát nyitni és 200:1 tőkeáttétel van.
  • Standard számla, 2500 USD minimális tőkével lehet számlát nyitni, itt viszont már csak 100:1 tőkeáttét van.
Nyilvánvalóan a mini számlával érdemes kezdeni. Ez ugye durván 60 000 HUF kezdőtőkét igényel, ha élesben is kereskedni akarunk, egyébként viszont semennyibe sem, ha csak fejlesztgetni és tesztelni szeretnénk.

Mivel addig számlát nyitni nem érdemes, ameddig nincs megfelelő stratégiánk (programunk a NinjaTrader-ben), így most egyenlőre a stratégia kifejlesztésével fogunk foglalkozni első körben.

Az ehhez szükséges információkat a következő post-ban fogom leírni. Addig is mindenkinek jó töprengést, és akinek esetleg van jobb ötlete, azt szivesen látom!

kedd, május 26, 2009

FOREX, a Szent Grál

Ahogyan ígértem, elkezdem kikutatni a lehető legjobb formáját a tőzsdei szaktudás kiaknázásának.

A tőzsdei szaktudás szerencsére kompatibilis a devizapiacokon (FOREX) mozgó árakkal is, így nem meglepő módon a devizapiacokon is kamatoztatni lehet azt, amit a grafikonokról tanult az ember fia.

Nézzük csak, milyen előnyökkel és hátrányokkal rendelkezik a FOREX!

Előnyök :
  • folyamatos nyitvatartás, hétköznapokon 24 órában
  • rengeteg devizapár, a legtöbb ügynökségnél komoly likviditással
  • általában nincs brókerdíj, mindössze a spread-el nyújtotta árkülönbözettel kell számolnunk
  • általában nincs minimális összeg, amelyet meghatároznak a számlanyitáskor, sőt, számlavezetési díj sem szokott lenni (persze tisztelet a kivételeknek, mert azért van)
  • magas tőkeáttétel
Hátrányok:
  • magasabb az adókulcsa (25%)
  • a nyereségek nem állíthatók szembe a veszteségekkel
  • kevés elemző eszköz
  • nincs egységes "deviza tőzsde", brókercégenként változik a spread, és az árfolyamok alakulása. Nagyjából persze egyfelé mennek az árak, de nem egyforma gyorsasággal és mértékben
Nézzük csak mi az, ami nekünk - kispénzzel kezdőknek - fontos a fentiek közül.
  1. Az adózás nem olyan nagy probléma, ha van miből kifizetni 25%-ot, akkor miért is ne!
  2. A nyereségek nem állíthatók szembe a veszteségekkel, vagyis ha nyerek 1 milliót, akkor azután akkor is ki kell fizetnem a 25% adót, ha másnap az egészet elveszítem! Vagyis olyan stratégiát kell választani, ami a lehetőségekhez mérten inkább nyerő, semmint vesztő. Minél magasabb a nyereséges kötések száma, annál nyereségesebb a kereskedés, még a 25%-os adózás ellenére is.
  3. Nincs számlanyitási díj és minimálisan befizetendő összeg (vagy ha van, akkor csekély)
  4. Kevés elemző eszköz áll rendelkezésre, de ezen más elemző szoftverekkel lehet segíteni, különösen, ha sikerül találni egy általánosan használható szoftvert (ami mondjuk FOREX-hez is jó és persze a részvényekhez is... van ilyen, igen!)
  5. az, hogy nem egységes a devizapiac, az csöppet sem baj, leginkább a jó brókercéget kell kiválasztani!
Az előnyöket azért nem vettem bele a felsorolásba, mert az egyértelműen csak jó nekünk!

Sajnos azonban a legtöbbünknek nem nagyon sok az ideje tőzsdézni, ugyanis - szerintem nyugodtan mondhatom, hogy mindannyiunknak - munkahelyre kell járni dolgozni, mert egyenlőre még abból élünk.
Ezért aztán jó ötlet a FOREX, mert azt lehet este is művelni, amikor az ember a munkából hazamegy. Az persze más kérdés, hogy kit mennyire fárasztanak le a munkahelyén.

Van azonban még valami, ami a figyelmemet felkeltette, ez pedig az automatizált tőzsdei kereskedés. Azért érdekes a dolog, mert ugye a kereskedést általában emberek végzik, tehát kell hozzá jó szem, kell hozzá szaktudás, és persze kell hozzá megfelelő asszociatív képesség, hogy az ember felismerje az áralakzatokat.

Erre egy program szinte biztos, hogy nem képes. Viszont egy csomó minden másra igen. Képes a gyertya alakzatokat felismerni, képes indikátorokkal dolgozni, és képes éjjel-nappal kereskedni is, ha úgy írjuk meg a programot.

Vannak persze hátrányai is. Nyilvánvalóan képes sok pénzt veszíteni is, ha a program nincs jól megírva!

Viszont képes akkor is pénzt keresni, amikor mi a munkahelyünkön dolgozunk, éjjel, amikor alszunk (néha akkor vannak a legdurvább emelkedések-esések) és akkor is meg tudja nyomni a gombot, amikor mi pszichológiailag képtelenek vagyunk rá.

A programok írása azonban heteket, hónapokat vesz igénybe, és sokszor így sem elég hatékony.

A blogban néhány alapvető metódust fogok leírni, amivel bizonyos gyertya alakzatokat lehet felismerni, indikátorok segítségével pedig minimalizálni lehet a veszteséges kötések számát.

Az ilyen programok további előnye, hogy bármilyen időtávon működnek, tehát akár 1 perces időtávon is!

Holnap tovább vesézem a lehetőségeket! Elsősorban a kezdőtőke szempontjából természetesen!

hétfő, május 25, 2009

Újabb fordulat

Nos, ahogyan az várható volt, elvégeztem a tanfolyamot, s mivel igen sok tanulnivaló volt és ráadásul szinte minden időmet felemésztette, ezért nem került a blogba ezidáig semmi.
Azonban itt az új bejegyzés és ezzel máris fordulatot vett a blog jelentősége.

Miért?

Azért, mert a tanfolyam közben igen sok dologra jöttem rá. Többek között arra, hogy a helyzetemet nem fogja megváltoztatni a BÉT-en zajló üzletkötések sorozata.
Legalábbis nem jelentősen. Persze később lehet még ebből valami, de a jelenlegi tőkémmel nem nagyon.

Nézzük a részleteket. A BÉT-en lévő likvid papírok száma 4-5, ami nem túl sok. Daytrade-elni lehet, de nagyon sok pénz kell ahhoz, hogy valódi haszon keletkezzen.
Másik alternatíva természetesen a külföld.

Ha az ember pénzt akar keresni (mondjuk sokat), akkor a külföldi tőzsdét kezdi el nézegetni. Kézenfekvő, hogy ott vannak a német tőzsdék, az amerikai, és persze az ausztrál, amiről elég sokat hallhattunk a tanfolyamon. Legtöbbet az amerikai piacról.

Az amerikai piacon a - forgalom szempontjából - az első 1000 részvények közül bármelyiket választjuk, annak nagyobb az egynapos forgalma - forintosítva - nagyobb, mint a BÉT teljes éves forgalma... Egész konkrétan az első 1000 amerikai részvény forgalma meghaladja a 1 000 000db-os napi kereskedési forgalmat.
Tehát kézenfekvő az amerikai tőzsde választása.

Igen ám, de ahhoz, hogy beléphessünk az amerikai tőzsdére, ahhoz kell 10 000 USD, ugyanis ez a minimális tőke, amivel be lehet szállni (Interactive Brokers).

Azután ott vannak a deviza piacok. A legnagyobb legnagyobbika az OANDA. Ahhoz, hogy számlát nyissunk, nem kerül semmibe, nincsenek alsó limitek. Sőt, felső limitek sincsenek. De ott van az igen magas adó (25%) és amiről sok vita nyílt, az a tény, hogy a veszteségek nem számolhatók el a nyereségek ellenében, vagyis ha nyerek egy milliót, és veszítek is ugyanennyit, adót akkor is kell fizetnem, méghozzá a nyereségeim után, azaz egy millió után.

Sajnos a tanfolyamon nem beszélnek arról, hogy mennyibe kerül elindulni egy ilyen kereskedéssel (gondolok itt a számlanyitás költségére, a kereskedéshez szükséges szoftverek licencdíjaira, és az egyéb járulékos költségekre).
Szerencsére beszélnek viszont - és igen sokat - az emberi tényezőről. Arról, hogy a kereskedők hogyan nem nyomják meg a gombot idejében, hogyan maradnak le egy alakzat kitöréséről, hogyan vakítja el őket a pénz, stb.

Mivel én kispénzű befektető vagyok (100eFt), így nem engedhetem meg magamnak a 600USD-os havi díjakat, sem pedig az 1000USD-os licencdíjakat.

Ez a blog mostantól átalakul a kispénzű tőzsdézők oldalává, vagyis lehet, hogy magasabb spread-ekkel dolgozó, limitált számlákkal indul a dolog, de az biztos, hogy viszonylag kisebb "vagyonnal" rendelkezőknek szeretnék segíteni azzal, hogy felkutatom a lehető legjobb alternatívákat, amivel el lehet kezdeni az egzisztencia váltást.

Mivel magam is végig járom ezt az utat, így mindenki tanúja lehet annak, hogy ez meddig tart, és milyen buktatókkal jár - bár ezek számát minimalizálni szeretném!

Készítek egy dokumentumot, amit a tapasztalatom alapján folyamatosan aktualizálok. A dokumentum tartalma megadja a választ azoknak, akik szeretnének tőzsdézésből megélni, de "nincs pénzük", hogy hogyan kezdjenek neki. Letölthető lesz bárki számára!

Ennek persze ára van, mégpedig az, hogy Te kedves olvasó, add hozzá Te is a tapasztalataidat, ötleteidet! Ha megteszed, TE megtetted a magadét. A többiek nem fognak hozzáférni a dokumentumhoz.
Szeretném, ha ez egy közösségi munka lenne! Nem akarok villogni másoktól lopott ötletekkel, vagy olyan tudással, amit "pénzért vettem".

Várom a hozzászólásaitokat, leveleiteket!

péntek, február 13, 2009

Réges-régen egy messzi-messzi...

... városkában leérettségiztem. Készültem a nagybetűs életre. Ekkor láttam a Tőzsdecápák című filmet. Megragadott Bud Fox és Gordon Gekko összefonódó sorsa, és későbbi harca.
Akkoriban még éppen fősulira készülődtem és arról ábrándoztam, hogy talán egyszer majd én is abból élek majd, hogy a tőzsdén keresem a pénzemet. Mivel programozónak készültem, lelki szemeim előtt már láttam az akkoriban még csak IBM PC néven emlegetett méregdrága számítógépet, ahogyan a monitoron (én nem a TV-n, mint a C64 esetében) éppen az árfolyamokat nézegetem és lázasan telefonálok nyomógombos otthoni telefonomon.
Ez 20 évvel ezelőtt történt.

De nem így történt.
Lediplomáztam és egy jó nevű telekommunikációs cégnél dolgoztam, akkoriban jó állásnak számított. Felbolydult az ország, amikor híre ment, hogy a kárpótlási jegyeket be lehet váltani részvényekbe, amikor éppen MOL és MATÁV részvények kibocsájtása volt.
Nyitottam egy bankban én is tőkeszámlát és vettem pár részvényt a megtakarított pénzemen. Az árak csak fölfelé mentek, így jól jártam. Ám amikor az ezredforduló tájékán lefelé is mentek az árak, gyorsan megszabadultam részvényeimtől, az akkor már interneten is működő kereskedő szoftverrel.

Azóta csak pénzügyi alapokba mertem fektetni, mert annyira kockázatosnak ítéltem meg a részvénypiacot. Próbáltam mindenféle könyveket olvasni erről, de mind olyan száraz volt, hogy az első oldalak után felhagytam vele.

Egészen 2009. február 7-ig nem történ semmi. A bróker irodánál a számlám még megvan, a minap kaptam az értesítőt, ami az adózáshoz kell. Minden hónap mellett hatalmas "0"-k vannak. Semmit sem fektettem be az elmúlt években.
Ezen a bizonyos február 7-én viszont minden megváltozott.

2008. novemberében kezdődött. Elhatároztam, hogy egy kicsit többet fogok megtudni a PÉNZ-ről. Mert hogy semmit sem tudok róla. Illetve a működéséről. Rátaláltam Robert T. Kyosaki könyveire, elkezdtem őket olvasni. Közben az interneten ismét a tőzsdézésről kerestem okosító cikkeket.

Találtam egy Tőzsdeiskola nevű weboldalt (www.tozsdeiskola.hu). Azt hirdették, hogy ők jól megtanítanak tőzsdézni. Feliratkoztam a hírlevelükre, de a meghirdetett tanfolyamokra már eszemben sem volt elmenni borsos ára miatt.

2009. február 7-én azonban nyílt napot tartott a Tőzsdeiskola. Elmentem.
Az előadó (Horváth András, tőzsdeszakértő és tőzsdekutató) olyan előadást tartott, amire egész eddigi életemben vártam. Néhány egyszerű mondatban elmesélte hogyan kell tőzsdézni. Eddig semmi különös... Na, de meg is mutatta!!! Élő példákon keresztül.
Az előadáson végig azt hangoztatta, hogy a tőzsdézés olyan, mint az autóvezetés. Ha ismeri az ember a szabályokat és be is tartja őket, akkor nem kockázatos dolog befektetni. És még csak sokba sem kerül...

Visszakaptam Horváth Andrástól a 20 éve eltemetett álmomat. Jelentkeztem a tanfolyamra és már meg is kaptam az értesítést, hogy felvettek. Jövő héten befizetem az árát és elkezdődik életem eddigi legnagyobb kalandja! Egy teljesen más világba fogok bekerülni, egy olyanba, amit mindig is tisztelettel, csodálattal és nem kevés misztériummal kezeltem.
Megkapom a kulcsot ehhez a világhoz. Bárhogyan is, de most megváltozik az életem, ha másképpen nem, akkor a szemléletemben, bár én leginkább az anyagi helyzetem jelentős javulását várom ettől.

Ha sikerül és ebből élhetek, a világon a legboldogabb ember leszek! Az az ember, aki többé nem aggódik a jövője miatt, aki néhány éven belül teremt annyi pénzt, amennyi elegendő lesz a családja számára, jól lehet, még barátnője sincs jelenleg. (pár jelölt azért akad... :))
Megszabadulok a pénzhiány okozta aggodalomtól és mivel a nagybetűs életbe lépésem óta ez okozza a legtöbb fejfájást és ez okozza a legtöbb gátlást, így tulajdonképpen nagyon sok mindentől szabadulok meg.

Kell ettől több? Hát... majd meglátjuk.

A következő fontos dátum február 21. Ekkor lesz az első előadás. Addig is olvasgatok...