Zimanê algorîtmîkî QPILE ji bo bernamekirina robotên bazirganiyê yên ji bo QUIK.
Robotên bazirganî dikarin bi zimanek taybetî, mîna koda bernameyê, bêne nivîsandin. QPILE yek ji wan e, gotar dê vî zimanî binirxîne, zimanên QPILE û
LUA bide ber hev , û di heman demê de nimûneyên robotan ên bi vî zimanî jî bide.
- Agahdariya gelemperî li ser QPILE
- Bi tabloyê dixebitin
- QPILE ava dike
- Cureyên daneyan
- Expressions
- Functions
- bernameyên Debugging
- QPILE an LUA?
- Meriv çawa li ser QPILE robotek bazirganiyê biafirîne?
- Robotên bazirganiyê li ser QPILE – çareseriyên amade
- Robotê navîn diherike
- N. Moroshkin calculator helwesta
- Parzûna Volume
- Vebijêrkên Yewnanî
- Robotê bazirganiyê TRIX ji bo QUIK
- M4 Preprocessor
Agahdariya gelemperî li ser QPILE
QPILE kurtenivîsek e ku tê wateya QUIK Navbera Bernamekirî û Jîngeha Mantiqê.
Ev rêzek ferman e ku ji hêla stasyona xebatê QUIK ve hatî şîrove kirin. Ew bi gelemperî ji bo hesabkirina bihayê portfoliyoyên ewlehiyê tê bikar anîn. Ev ziman jî ji bo:
- ji nû vehesabkirina dînamîk a bihayê hebûnên xerîdar li ser sermaseya broker û di portofolên wan de. Di rewşa paşîn de, bihayê giştî ya wan jî ji nû ve tê hesibandin;
- dîtina nîşaneyên wenda bi karanîna algorîtma û daneyên xwe yên ji bo deyndana marjînal;
- pêşxistina stratejiya bazirganiyê ya rast.
Ziman avahiya tabloyê diyar dike: danîna stûn û rêzan, formul. Di vê paşîn de, operasyonên matematîkî, guhêrbar, daneyên ji tabloyên din dikarin ji bo hesabkirinê werin bikar anîn. Koda bernameyê ku ji servera QUIK an ji dîska bikarhêner hatî barkirin ji hêla wergêra zimanî ve tête hilberandin, ku nirxan di formulan de hesab dike. Tabloyên yek bernameyê yek çavkaniyek daneyê heye, lê hesab nayên dubare kirin û bandorê li karbidestiya pergalê nakin. Dema ku bi tabloyên QUIK re dixebitin, tabloyên li ser QPILE fonksiyonên standard hene. QUIK di cîhê xebatê de bi debugerek koda QPILE ve tê saz kirin. https://articles.opexflow.com/software-trading/torgovyj-terminal-quik.htm Ziman destûrê dide te ku hûn tabloyên nû bi avahiyek diyarkirî vebêjin, şaneyên bi hin nirxan ronî bikin, zeviyan li gorî vegotinên matematîkî û mentiqî hesab bikin. Bikarhêner dê di forma îşaretek deng an peyamek nivîsê de agahdariyan werbigire. Tabloyên li ser QPILE dikarin bi navgîniya servera ODBC û DDE ve werin sererast kirin, çapkirin, kopîkirin, derxistin. Daneyên destpêkê ji tabloyên QUIK ne:
- danûstendinên, di nav de ji bo darvekirinê û neşexsî;
- ferman, di nav de fermanên rawestandinê, ji bo kirrûbirra û fermanan – raporên ji bo kirrûbirên di danûstandinên niştecîbûnê de;
- “portfolio xerîdar”, “kirrîn/firotin”
- daneyên ji pozîsyonên beşdaran ji hêla drav, hesabên bazirganî, amûr.
Tabloyên li ser bingeha QPILE ne dikarin bi navgîniya menuya kontekstê ve li pelek nivîsê werin kopî kirin û ji pergalên analîza teknîkî re bêne şandin, û nexşe li ser bingeha wan nayên pêşve xistin. Tabloyên li ser QPILE-ê nayên fîltrekirin an rêzkirin.
Bi tabloyê dixebitin
Ji bo barkirina koda bernameyê, hûn hewce ne ku menuya karûbaran, dûv re tîpên QPILE hilbijêrin. Her weha hûn dikarin tevliheviya Ctrl + F11 bikar bînin. Piştî ku hûn hewce ne ku “Add” bikirtînin û pelê xwestin hilbijêrin. Pêvekek wê ya .qpl heye û navê wê dê di navnîşa Nivîsarên Berdest de xuya bibe.
- navê maseyê;
- hejmara stûn û xerîdar;
- navnîşa nasname û xerîdaran;
- navnîşa pîvanan û koda çavkaniyê ya pelê.
QPILE ava dike
Cureyên daneyan
- String – string.
- Double jimareyek xala herikînê ye.
- Berhevkirin – berhevokek.
- Nexşe – rêzek hevgirtî – rêzek cotên ku destûrê dide te ku hûn bi kilîtê agahdarî bistînin.
Expressions
Operasyonên hejmarî yên zêdekirin, jêkirin, pirkirin, dabeşkirin têne sepandin. Gotinên mantiqî “û”, “an”, wekhev, zêde, kêm, newekhevî, avakirina şertî “eger … hingê …” jî têne bikar anîn.
Functions
Fonksiyon dikarin li her cîhê bernameyê bi cih bibin û navên cûda hene. Bi tevahî, 18 komên fonksiyon û fonksiyonên matematîkî hene ku ji bo bidestxistina nirxên tablo û parametreyan, rêzikên hevgirtî, navnîşek tabloyan û karên din hene. Pola yekem:
- Fonksiyonên matematîkî yên ku dihêle hûn nirxa sinus, kosînus, tangent, cotangent argûmanê vegerînin, nîşana argumanê hesab bikin, jimareyek rasthatî biafirînin, hwd.
- Fermanên giştî : NEW_GLOBAL ji bo destpêkirina guhêrbarek gerdûnî û MESSAGE ji bo vekirina peyaman.
Fonksiyonên ku bi wan re bixebitin:
- Koleksiyonên tiştan (Collection) . Ew dihêlin ku hûn berhevokek nû biafirînin, hejmareke hewce ya hêmanan vegerînin, nirxên xwestinê biguhezînin an têxin nav xwe.
- Arrayên Hevgirtî (MAP) . Alîkarî ji bo afirandina û birêvebirina array.
- Pelan – bi pelên nivîsê re dixebitin, têketinek bernameyê diparêzin. Navê pelê dibe ku riya wê hebe.
- Strings .
- Graphs . Fonksiyon GET_CANDLE dike ku bigihîje daneyên şemalê û GET_CANDLE EX ji bo vegerandina rêzek hevgirtî.
- Applications . Afirandina fermanan û şandina wan ji bo pergala bazirganiyê.
- Tags . Avakirin û sazkirina wan li ser nexşeyê. Zêdekirin, jêbirina yek an hemî etîketan, wergirtin û danîna parametreyên ji bo etîketek taybetî.
Her weha fonksiyonên ji bo:
- Ji bo gihîştina rêzên tabloyên QUIK yên keyfî û navnîşên parametreyên berdest . Gihîştina daneyên tabloya cîhê kar. Di nav wan de GET_ITEM heye bo vegerandina MAPê û GET_NUMBER_OF ji bo vegerandina jimareya têketinê.
- Ji bo xebatê bi tabloyek bernamekirî . Van fermanan li ser tabloya OWN kar dikin. Ew ji hêla fonksiyonên standard ên paragrafa berê û ji hêla van fonksiyonan ve tê xwendin. Di vê komê de emrên ji bo lê zêdekirin, guherandin û jêbirina rêzek bi indexek, û bi tevahî paqijkirina tabloya OWN dihewîne.
Ji bo bidestxistina nirxan bikar bînin:
- Tabloyên bazirganiyên heyî . Bi karanîna fermanên GET_PARAM (_EX) parametreyên agahdariya danûstendinê digirin.
- Quote windows . Bidestxistina nirxê quotes amûrê.
- Tabloyên pozîsyonan li gorî amûr û drav . Bi kodê daneyên li ser xerîdar, pargîdanî, amûrek, hesabê depoyê digirin.
Fonksiyonên karûbarê – vegerandina dîroka danişîna bazirganiyê ya heyî, rêzikên hevgirtî, tarîx û dema heyî, destnîşankirina rewşa girêdanê, qutkirina moda hesabkirinê.
bernameyên Debugging
Kontrola gav-bi-gav li ser xebata bernameyê di pencereya “Debug” de tête kirin. Ew ji pêşeka kontekstê “Destpêkirina hesabkirinê di moda debugê de” tê vekirin. Di heman demê de ew dikare bi fermana breakpoint() vebe, û rêza bernameyê dê bi sor were ronî kirin. Di pencereyê de qadên bi koda bernameyê û nirxên guhêrbar hene. Li binê pencereyê bişkokên “Gava paşîn”, “Daweşandina darvekirinê”, “Hesabkirinê rawestîne” hene. Zêdekirina F5 dê pêkanîna bernameyê bidomîne, kombînasyona Shift + F5 dê xeletkirinê rawestîne, bişkoka F10 dê berbi rêza din ve bibe.
QPILE an LUA?
LUA ji bo afirandina robotên bazirganiyê zimanek bernameyek nû ye. Mîna QPILE, ew di termînala QUIK de tête bicîh kirin. https://articles.opexflow.com/programming/lua.htm Malperek ku ji bo pêşkeftina robotên bazirganiyê yên ji bo bazirganiyê ve hatî veqetandin avantajên zimanê LUA li ser QPILE nîşan dide. Ji ber vê yekê, ew dikare wekî skrîpt û bytekodek ne-berhevkirî tevbigere, ku bi amûrên pêşdebir û mekanîzmayên bernamesaziyê yên objekt-oriented ve girêdayî ye. Tiştên ku bi zimanên din ên bernamesaziyê hatine nivîsandin dikarin bi bernameyên LUA ve werin girêdan. LUA 8 cûreyên daneyê, tevî metatables, peyda dike. Zimanê LUA pir-mijalek e, bilez e, û danûstandin û bûyerên termînalê asînkron in. LUA ji QPILE bêtir hevpar e, û gelek pêvekirin ji bo wê hatine nivîsandin.
Zimanê QPILE aniha nebihuriye. Pisporên li ser foruman karanîna LUA pêşniyar dikin. Tevî ku bernameyên kêrhatî û bi bandor hîn jî têne bikaranîn.
Lêbelê, zimanê QPILE li gorî LUA hêsan e, ji ber vê yekê heke we di bernamekirinê de ezmûnek tune, çêtir e ku hûn QPILE hilbijêrin. Di vî zimanî de, heke hûn hewce nebin ku hûn hesabên tevlihev bikin, hûn dikarin robotek hêsan binivîsin.
Meriv çawa li ser QPILE robotek bazirganiyê biafirîne?
Ji bo afirandina şêwirmendek bazirganiyê, hûn ê hewceyê bernameyên jêrîn bin:
- ITS Quik.
- Edîtorê kodê Notepad ++.
- Rêberiya QPILE.
- Pêveka XML ji bo tespîtkirina kodê di Notepad ++ de.
Van bernameyan daxin û saz bikin. Bi danîna userDefineLang.xml di riya C:\Bikarhêner\User\ AppData\Roaming\Notepad++\ de hevoksaziya ziman çalak bike
Bloka “Mîhengên Bikarhêner” bi guherbarên HEJMAR û INTERVAL ve tê dagirtin, ku dê di fonksiyona bidestxistina barkên N-ya paşîn de werin bikar anîn. Fonksiyona DATETIME tarîx û demjimêra serverê destnîşan dike, û fonksiyonên tarîx û demjimêra heyî CURDATE û CURTIME jê re têne gazî kirin. Dema niha di rêza 24’an de vediguhere jimarekê. Rêza 26 dema ku algorîtma ji 10:00:01 heta 18:40:00 UTC bimeşe destnîşan dike.
Robotên bazirganiyê li ser QPILE – çareseriyên amade
Robotê navîn diherike
Robotê demo ji bo bazirganiya rastîn ne maqûl e.
N. Moroshkin calculator helwesta
Bernameyek ji bo hesabkirina astên herî zêde vekişîna destûr û mebesta ji bo pozîsyonên dirêj û kurt bi bihayên daxwaz û pêşniyarên heyî. Asta ji bo 2 nirxên volga têketina pozîsyonê têne hesibandin. Robot dema ku fermanek rawestanê di yek gavê de ji bihayê vekirinê bi hesabkirina vekirina pozîsyonê di rêça mezinbûna bar de veqetandek pozîsyona destûr dide dibîne. Asta ku hatine dîtin têkevin pencereya termînalê, ku paşê di nexşeya bihayê de têne xuyang kirin. Danûstandin ji bo amûrek diyarkirî têne rast kirin. Ger pozîsyonek vebe, robot dest bi hesabkirina pîvanên xwe dike. Bi guheztina pozîsyonê ve girêdayî, fermanên hatine destnîşankirin têne sererast kirin.
Parzûna Volume
Robotê portfoliyoyê ji bo hesabkirina navîniya hejmarî ya qebareya mûman û berhevkirina wê bi hilbera navînî re ji hêla hevbera X ve. Di heyama dema hilbijartî de bi nexşeyên xêzkirî re rast dixebite.
Vebijêrkên Yewnanî
Portfolio ji bo hesabkirin û nîşandana “Yûnanan” ya vebijarkan. Ew ji rêbaza Black-Showers cuda ye.
Robotê bazirganiyê TRIX ji bo QUIK
Bername li ser bingeha nîşana TRIX-ê ye. Dema ku nîşanker li ser xeta sifir, asta diyarkirî, digire, robot pozîsyona Dirêj digire. Helwest ji hêla Take Profit, Stop Loss an rawestana paşverû ve tê girtin.
M4 Preprocessor
Bername ji bo xebatê bi QPILE û Lua. Arşîvên bi pelên îcrakar, belgekirin û pelên DLL yên bi parskirina birêkûpêk îfadeyê vedihewîne. Ji bo ku hûn bernameyê bikar bînin, hûn hewce ne ku pelên îcrakar vekin û regexp2 di riya C:\Windows de bi cîh bikin. Dersên li ser QPILE ji bo QUIK: https://youtu.be/vMTXwDUujpI Sazkirina skrîptekê li ser QPILE di termînala Quik de: https://youtu.be/0B7qL8Svh7I Beşek li ser github ku karanîna zimanê algorîtmîkî QPILE di nav de hatî çêkirin diyar dike. Qereqola xebatê ya pergala QUIK ku li ser girêdanê ye – https://euvgub.github.io/quik_user_manual/ch8.html. QPILE zimanek kevnar e, lê ji bazirganên nû re jî pir hêsan û gihîştî ye. Robotên bazirganî û bernameyên ku ji demek dirêj ve xwe îsbat kirine berdewam dikin li ser wê dixebitin. Lêbelê, ji bo karên tevlihevtir çêtir e ku hûn LUA bikar bînin.
0к