Gjuha algoritmike QPILE për programimin e robotëve tregtarë për QUIK.
Robotët tregtarë mund të shkruhen në një gjuhë specifike, të ngjashme me kodin e programit. QPILE është një prej tyre, artikulli do të shqyrtojë këtë gjuhë, do të krahasojë gjuhët QPILE dhe
LUA dhe gjithashtu do të japë shembuj të robotëve në këtë gjuhë.
- Informacione të përgjithshme rreth QPILE
- Puna me një tryezë
- konstruktet QPILE
- Llojet e të dhënave
- Shprehjet
- Funksione
- Programet e korrigjimit
- QPILE apo LUA?
- Si të krijoni një robot tregtar në QPILE?
- Robotët e tregtimit në QPILE – zgjidhje të gatshme
- Robot mesatar në lëvizje
- Llogaritësi i pozicionit N. Moroshkin
- Filtri i volumit
- Opsionet grekët
- Robot tregtar TRIX për QUIK
- paraprocesor M4
Informacione të përgjithshme rreth QPILE
QPILE është një shkurtim që qëndron për QUIK Programmable Interface and Logic Environment.
Kjo është një seri komandash të interpretuara nga stacioni i punës QUIK. Përdoret kryesisht për llogaritjen e çmimit të portofolit të letrave me vlerë. Gjuha përdoret gjithashtu për:
- rillogaritje dinamike e çmimit të aktiveve të klientëve në desktopin e ndërmjetësit dhe në portofolet e tyre. Në rastin e fundit, çmimi total i tyre gjithashtu rillogaritet;
- gjetjen e treguesve që mungojnë duke përdorur algoritmet dhe të dhënat e tyre për huadhënien me marzh;
- zhvillimin e strategjisë së duhur tregtare.
Gjuha përshkruan strukturën e tabelës: caktimin e kolonave dhe rreshtave, formulat. Në këtë të fundit, për llogaritje mund të përdoren veprime matematikore, variabla, të dhëna nga tabela të tjera. Kodi i programit i ngarkuar nga serveri QUIK ose nga disku i përdoruesit përpunohet nga përkthyesi i gjuhës, i cili llogarit vlerat në formula. Tabelat e një programi kanë një burim të dhënash, por llogaritjet nuk janë të dyfishta dhe nuk ndikojnë në efikasitetin e sistemit. Kur punoni me tabela QUIK, tabelat në QPILE kanë funksione standarde. QUIK në vendin e punës është i pajisur me një korrigjues të kodit QPILE. https://articles.opexflow.com/software-trading/torgovyj-terminal-quik.htm Gjuha ju lejon të përshkruani tabela të reja me një strukturë të caktuar, të nënvizoni qelizat me vlera të caktuara, të llogaritni fushat bazuar në shprehjet matematikore dhe logjike. Përdoruesi do të marrë njoftime në formën e një sinjali zanor ose një mesazhi me tekst. Tabelat në QPILE mund të redaktohen, printohen, kopjohen, eksportohen nëpërmjet serverit ODBC dhe DDE. Të dhënat fillestare janë nga tabelat QUIK:
- transaksione, duke përfshirë për ekzekutim dhe jopersonale;
- urdhra, duke përfshirë urdhrat e ndalimit, për tregtitë pa recetë dhe porositë – raportet për tregtitë në marrëveshjet e shlyerjes;
- “portofoli i klientit”, “blej/shitet”
- të dhëna nga pozicionet e pjesëmarrësve sipas parave, llogarive tregtare, instrumentit.
Tabelat e bazuara në QPILE nuk mund të kopjohen në një skedar teksti përmes menysë së kontekstit dhe të eksportohen në sistemet e analizës teknike dhe grafikët nuk mund të zhvillohen në bazë të tyre. Tabelat e bazuara në QPILE nuk mund të filtrohen ose renditen.
Puna me një tryezë
Për të ngarkuar kodin e programit, duhet të zgjidhni menunë e shërbimeve, më pas skriptet QPILE. Ju gjithashtu mund të përdorni kombinimin Ctrl + F11. Pasi të duhet të klikoni “Shto” dhe zgjidhni skedarin e dëshiruar. Ai ka një shtesë .qpl dhe emri i tij do të shfaqet në listën e skripteve të disponueshme.
- emri i tabelës;
- numri i kolonave dhe klientëve;
- lista e identifikuesve dhe klientëve;
- listën e parametrave dhe kodin burimor të skedarit.
konstruktet QPILE
Llojet e të dhënave
- Varg – varg.
- Double është një numër me pikë lundruese.
- Koleksion – një koleksion.
- Harta – një grup shoqërues – një sekuencë çiftesh që ju lejon të merrni informacion me çelës.
Shprehjet
Zbatohen veprimet aritmetike të mbledhjes, zbritjes, shumëzimit, pjesëtimit. Përdoren gjithashtu shprehjet logjike “dhe”, “ose”, e barabartë, më shumë, më pak, pabarazitë, ndërtimi i kushtëzuar “nëse … atëherë …”.
Funksione
Funksionet mund të vendosen kudo në program dhe të kenë emra të ndryshëm. Në total, 18 grupe funksionesh dhe funksionesh matematikore janë të disponueshme për të marrë vlerat e tabelave dhe parametrave, grupeve shoqëruese, një listë tabelash dhe detyra të tjera. Klasa e parë:
- Funksionet matematikore që ju lejojnë të ktheni vlerën e sinusit, kosinusit, tangjentës, kotangjentës së argumentit, llogaritni eksponentin e argumentit, gjeneroni një numër të rastësishëm, etj.
- Komandat e përgjithshme : NEW_GLOBAL për të inicializuar një ndryshore globale dhe MESSAGE për të hapur mesazhet.
Funksionet për të punuar me:
- Koleksione objektesh (Collection) . Ato ju lejojnë të krijoni një koleksion të ri, të ktheni numrin e kërkuar të elementeve, të zëvendësoni ose futni vlerat e dëshiruara.
- Vargjet asociative (MAP) . Ndihmoni për të krijuar dhe menaxhuar grupin.
- Skedarët – duke punuar me skedarë teksti, duke mbajtur një log-log të programit. Emri i skedarit mund të përmbajë shtegun drejt tij.
- Vargjet .
- Grafikët . Funksionon GET_CANDLE për të hyrë në të dhënat e qiririt dhe GET_CANDLE EX për të kthyer një grup shoqërues.
- Aplikacionet . Krijimi i porosive dhe dërgimi i tyre në sistemin e tregtimit.
- Etiketa . Ndërtimi dhe instalimi i tyre në grafik. Shtimi, fshirja e një ose të gjitha etiketave, marrja dhe vendosja e parametrave për një etiketë specifike.
Ekzistojnë gjithashtu funksione për:
- Për të aksesuar rreshtat e tabelave arbitrare QUIK dhe listat e parametrave të disponueshëm . Qasja në të dhënat e tabelës së vendit të punës. Këto përfshijnë GET_ITEM për të kthyer MAP-in dhe GET_NUMBER_OF për të kthyer numrin e hyrjeve.
- Për të punuar me një tabelë të programueshme . Këto komanda funksionojnë në tabelën OWN. Është i lexueshëm nga funksionet standarde nga paragrafi i mëparshëm dhe nga këto funksione. Ky grup përfshin komanda për shtimin, modifikimin dhe fshirjen e një rreshti me një indeks dhe pastrimin e plotë të tabelës OWN.
Për të marrë vlerat përdorni:
- Tabelat e tregtimeve aktuale . Marrja e parametrave të informacionit të shkëmbimit duke përdorur komandat GET_PARAM (_EX).
- Kuotat e dritareve . Marrja e vlerave të kuotave të instrumenteve.
- Tabelat e pozicioneve sipas instrumenteve dhe parave . Marrja e të dhënave për një klient, firmë, instrument, llogari depo me kod.
Funksionet e shërbimit – kthimi i datës së sesionit aktual të tregtimit, serive shoqëruese, datës dhe kohës aktuale, përcaktimi i gjendjes së lidhjes, ndërprerja e mënyrës së llogaritjes.
Programet e korrigjimit
Kontrolli hap pas hapi mbi funksionimin e programit kryhet në dritaren “Debug”. Hapet nga menyja e kontekstit “Fillimi i llogaritjes në modalitetin e korrigjimit”. Mund të hapet gjithashtu me komandën breakpoint() dhe linja e programit do të theksohet me të kuqe. Dritarja përmban fusha me kodin e programit dhe vlerat e variablave. Në fund të dritares ka butonat “Hapi tjetër”, “Vazhdo ekzekutimin”, “Ndalo llogaritjen”. Shtypja e F5 do të vazhdojë ekzekutimin e programit, kombinimi Shift + F5 do të ndalojë korrigjimin, tasti F10 do të drejtohet në rreshtin tjetër.
QPILE apo LUA?
LUA është një gjuhë e re programimi për krijimin e robotëve tregtarë. Ashtu si QPILE, ai zbatohet në terminalin QUIK. https://articles.opexflow.com/programming/lua.htm Një faqe e dedikuar për zhvillimin e robotëve të tregtimit për tregti tregon avantazhet e gjuhës LUA ndaj QPILE. Pra, mund të funksionojë si një skript dhe bajtkod jo i kompiluar, i pajisur me mjete zhvilluesish dhe mekanizma programimi të orientuar nga objekti. Objektet e shkruara në gjuhë të tjera programimi mund të lidhen me programet LUA. LUA ofron 8 lloje të dhënash, duke përfshirë tabelat meta. Gjuha LUA është me shumë fije, e shpejtë dhe transaksionet dhe ngjarjet e terminalit janë asinkrone. LUA është më e zakonshme se QPILE, dhe shumë shtesa janë shkruar për të.
Gjuha QPILE tani është e vjetëruar. Ekspertët në forume rekomandojnë përdorimin e LUA. Edhe pse programe të dobishme dhe efektive janë ende duke u përdorur.
Sidoqoftë, gjuha QPILE është e thjeshtë në krahasim me LUA, kështu që nëse nuk keni përvojë në programim, është më mirë të zgjidhni QPILE. Në këtë gjuhë, ju mund të shkruani një robot të thjeshtë nëse nuk keni nevojë të bëni llogaritje komplekse.
Si të krijoni një robot tregtar në QPILE?
Për të krijuar një këshilltar tregtar, do t’ju nevojiten programet e mëposhtme:
- E TIJ KUIK.
- Redaktori i kodit të Notepad++.
- Udhëzues për QPILE.
- Shtojca XML për zbulimin e kodit në Notepad++.
Shkarkoni dhe instaloni këto programe. Aktivizo sintaksën e gjuhës duke vendosur userDefineLang.xml në shtegun C:\Users\User\ AppData\Roaming\Notepad++\
Blloku “Cilësimet e përdoruesit” plotësohet me variablat NUMBER dhe INTERVAL, të cilat do të përdoren në funksion të marrjes së shiritave të fundit N. Funksioni DATETIME cakton datën dhe orën e serverit, dhe funksionet aktuale të datës dhe orës CURDATE dhe CURTIME thirren prej tij. Ora aktuale konvertohet në një numër në rreshtin 24. Rreshti 26 cakton kohën që algoritmi të funksionojë nga ora 10:00:01 deri në 18:40:00 UTC.
Robotët e tregtimit në QPILE – zgjidhje të gatshme
Robot mesatar në lëvizje
Roboti demonstrues nuk është i përshtatshëm për tregti reale.
Llogaritësi i pozicionit N. Moroshkin
Një program për llogaritjen e niveleve të tërheqjes maksimale të lejueshme dhe objektivit për pozicionet e gjata dhe të shkurtra me çmimet aktuale të kërkesës dhe ofertës. Nivelet llogariten për 2 vlera të vëllimit të hyrjes së pozicionit. Roboti gjen vëllimin e lejueshëm të pozicionit kur cakton një urdhër ndalimi në një hap nga çmimi i hapjes me llogaritjen e hapjes së një pozicioni në drejtim të rritjes së shiritit. Nivelet e gjetura futen në dritaren e terminalit, të cilat më pas pasqyrohen në grafikun e çmimeve. Transaksionet janë fikse për një instrument të caktuar. Nëse hapet një pozicion, roboti fillon të llogarisë parametrat e tij. Në varësi të ndryshimit të pozicionit, urdhrat e caktuar rregullohen.
Filtri i volumit
Robot portofoli për llogaritjen e mesatares aritmetike të volumit për qirinj dhe krahasimin e tij me produktin mesatar me koeficientin X. Punon saktë me grafikët e vizatuar në periudhën kohore të zgjedhur.
Opsionet grekët
Portofoli për llogaritjen dhe paraqitjen e opsioneve “greke”. Ai ndryshon nga metoda Black-Showers.
Robot tregtar TRIX për QUIK
Programi bazohet në treguesin TRIX. Kur treguesi mbyllet mbi vijën zero, nivelin e specifikuar, roboti merr pozicionin e gjatë. Pozicioni mbyllet nga Take Profit, Stop Loss ose ndalesë pasuese.
paraprocesor M4
Program pune me QPILE dhe Lua. Përfshin arkivat me skedarë të ekzekutueshëm, dokumentacion dhe skedarë DLL me analizim të shprehjeve të rregullta. Për të përdorur programin, duhet të shpaketoni skedarët e ekzekutueshëm dhe të vendosni regexp2 në shtegun C:\Windows. Mësime mbi QPILE për QUIK: https://youtu.be/vMTXwDUujpI Instalimi i një skripti në QPILE në terminalin Quik: https://youtu.be/0B7qL8Svh7I Një seksion në github që përshkruan përdorimin e gjuhës algoritmike QPILE të integruar në Stacioni i punës i sistemit QUIK i vendosur në lidhjen – https://euvgub.github.io/quik_user_manual/ch8.html. QPILE është një gjuhë e vjetëruar, por mjaft e thjeshtë dhe e aksesueshme edhe për tregtarët fillestarë. Robotët e tregtimit dhe programet që e kanë provuar veten për një kohë të gjatë vazhdojnë të punojnë në të. Sidoqoftë, për detyra më komplekse është më mirë të përdorni LUA.
0к