Mire figyelj az MQL4, illetve MQL5 programozás során?
Korábbi bejegyzésemben azt taglaltam, hogy milyen szempontok szerint válassz MetaTrader programozót. Ebben a posztban a saját kezű MetaTrader 4 / MetaTrader 5 expert advisor programozásról fogok beszélni.
Radulovic Attila vagyok, MetaTrader programozó.
2010 óta vállalkozásom fő profilja a MetaTrader programozás. Azóta több száz kereskedővel konzultáltam, dolgoztam együtt, és legalább ugyanennyi egyedi robotot készítettem.
Közel áll hozzám az MQL4 és MQL5 fejlesztés is, és lelkesedéssel tölt el, ha robottá formálhatok egy kereskedési stratégiát.
Szeretek kommunikálni, és a kapcsolatfelvételtől az átadásig csak arra összpontosítok, hogy a lehető legjobb expert advisort készíthessem el számodra.
Radulovic Attila vagyok, MetaTrader programozó.
2010 óta vállalkozásom fő profilja a MetaTrader programozás. Azóta több száz kereskedővel konzultáltam, dolgoztam együtt, és legalább ugyanennyi egyedi robotot készítettem.
Közel áll hozzám az MQL4 és MQL5 fejlesztés is, és lelkesedéssel tölt el, ha robottá formálhatok egy kereskedési stratégiát.
Szeretek kommunikálni, és a kapcsolatfelvételtől az átadásig csak arra összpontosítok, hogy a lehető legjobb expert advisort készíthessem el számodra.
Programozás ma
A 21. században sokan képesek számítógépes szoftvert készíteni, vagyis programozni. Millió programnyelv és fejlesztőkörnyezet áll rendelkezésre, rengeteg ingyenesen és térítés ellenében elérhető programozási oktatóanyag lelhető fel az Interneten. Te magad is képes lehetsz elsajátítani a szükséges programozási tudást, még akkor is, ha nincs korábbról programozási tapasztalatod. Ez persze akkor reális eshetőség, ha nem idegenkedsz a mélyebb számítógépes témáktól és van elegendő rendelkezésre álló szabadidőd. Ha már képben vagy a programozás általános alapjaival, akkor a folyamat valamelyest gyorsabb lehet.
Azonban, véleményem szerint önmagában az, hogy valaki rendelkezik (valamekkora) programozási tudással, nem elegendő. Ennek oka, hogy nem csupán az adott fejlesztési környezet, hanem a szorosan hozzá kapcsolódó terület ismerete is elengedhetetlen. Egy MetaTrader kereskedő robot, vagy indikátor létrehozásához elvárt a devizapiaci kereskedés és a MetaTrader ismerete. E szoftver, és annak végfelhasználói infrastruktúrájának beható ismerete nélkül hiába képes valaki programozni, könnyen elakadhat a platform, illetve a piac által támasztott problémák miatt.
Dolgoztam már együtt olyan szoftverfejlesztővel, aki programozóként a saját területén magasan kvalifikált volt, mégis úgy döntött, hogy inkább rám bízza az MQL4 programozás, vagy MQL5 fejlesztés feladatait.
Te, mint kereskedő jellemzően stratégiák sorát próbálod ki, mielőtt érzelmi, vagy műszaki szempontok miatt megszületik benned az elhatározás, hogy automatizálni szeretnéd valamelyiket. A kérdés az, hogy a stratégiák, elméletek, indikátorok keresése és a velük való kísérletezés során, jut-e elegendő időd a kisebb-nagyobb programozási döccenők kisimítására.
Akadályok, problémák az expert advisor fejlesztése közben
Lássunk egy gyakran előforduló példát a fejlesztés közben felmerülő tipikus akadályra.
Milyen feladatok várnak rád, ha az expert advisor saját kezű kivitelezése mellett döntesz?
Érdemes végig gondolnod, hogy mélységeiben érdekelnek-e téged alábbi témakörök:
Minden tapasztalat időbe kerül
Szeretném leszögezni, hogy amikor saját magad valósítasz meg egy programot, akkor az sem lesz ingyen. A legdrágább dologgal fizetsz érte: a saját időddel. Minden időbe kerül!
Időbe telik, míg megszerzed a programozási alapokat, vagyis képbe kerülsz a programozás általános alapfogalmaival. Hogyan kell ciklust szervezni, feltételeket alkotni, változók típusait kezelni, adatokat összerendelni, ellenőrizni és megjeleníteni. Nem létezik optimális, hibamentes programkód; sokszor előfordul, hogy egy bezáratlan kapcsos zárójel megkeresése órákat vesz el az életedből (akár még egyszerűbb kódok esetén is).
Ugyancsak idő, míg megismerkedsz a MetaTrader programozói oldalával, a MetaEditor szerkesztővel, és képbe kerülsz mind az MQL4, mind az MQL5 fejlesztés világával. A két programozási eléggé hasonló, de nincs köztük teljes átjárás. Ez azt jelenti, hogy ha például a MetaTrader 4 platform MQL4 nyelvében írsz egy kódot, az nem fog automatikusan működni a MetaTrader 5 MQL5 nyelvében, és vica versa. Az átjárhatóság megoldható, de egy alapos és megbízhatóan működő keretrendszer nélkül ez esélytelen (én magam éppen egy ilyen keretrendszeren dolgozom hónapok óta).
Időbe telik a létrejött eszközöd műszaki tesztelése. Figyelem! A műszaki tesztelésnek van köze a stratégia pénzügyi eredményeihez, önmagában azonban egy hibátlan program még nem feltétlenül nyereséges. Te már rég a stratégiára szeretnél fókuszálni, megfelelő instrumentumokat, idősíkokat és beállításokat keresnél, amikor váratlanul felbukkan egy műszaki hiba, amely miatt az addigi működést is felül kell vizsgálnod – újra és újra. Sőt, kiderülhet az is, hogy az eddig jónak gondolt stratégiád egy véletlenül felcserélt paraméter miatt hozott jó eredményeket.
Ha csupán egyszerűbb stratégiákat szeretnél kipróbálni, szóba jöhetnek azok a megoldások, amelyek csupán némi strukturált gondolkodást igényelnek, de programozói gyakorlatot nem. Ezek az eszközök olyan szoftverek, amelyek “összekattintható” módon képesek programkódot generálni. Előnyük, hogy könnyen és gyorsan tudsz velük kódot létrehozni, hátrányuk, hogy általában nem magyar nyelvűek, illetve kötött stratégiai elemeket tartalmaznak, így az egyedi ötletek megvalósítása nehézségekbe ütközik.
Ha van elegendő időd és türelmed
Amennyiben a fenti témakörök ténylegesen érdekesek számodra és elég idő (hónapok, vagy akár évek) áll a rendelkezésedre a tanuláshoz, akkor bátran mozdulj el a saját kezűleg programozott kereskedési expert irányába. Figyelmedbe ajánlom az alábbi forrásokat:
Ha elakadsz, nyugodtan keress meg! Fogalmazd meg és küldd át előzetesen a benned felmerült kérdések listáját, 1 óra alatt sok mindent hatékonyan végig tudunk nézni. E rövid idő alatt lehet, hogy heteket spórolok neked.
Amennyiben az MQL4/MQL5 fejlesztés közben arra a döntésre jutsz, hogy mégis inkább másra bízod az expert advisor létrehozásának feladatát, kattints az alábbi gombra, és foglalj egy konzultációs időpontot, hogy átbeszélhessük, pontosan milyen kereskedőrobotot szeretnél magadnak!