QUIK-നുള്ള പ്രോഗ്രാമിംഗ് ട്രേഡിംഗ് റോബോട്ടുകൾക്കുള്ള അൽഗോരിതമിക് ഭാഷ QPILE.
പ്രോഗ്രാം കോഡിന് സമാനമായി ഒരു പ്രത്യേക ഭാഷയിൽ ട്രേഡിംഗ് റോബോട്ടുകൾ എഴുതാം. QPILE അവയിലൊന്നാണ്, ലേഖനം ഈ ഭാഷ പരിഗണിക്കുകയും QPILE,
LUA ഭാഷകൾ താരതമ്യം ചെയ്യുകയും ഈ ഭാഷയിലെ റോബോട്ടുകളുടെ ഉദാഹരണങ്ങളും നൽകുകയും ചെയ്യും.
- QPILE നെക്കുറിച്ചുള്ള പൊതുവായ വിവരങ്ങൾ
- ഒരു മേശയുമായി പ്രവർത്തിക്കുന്നു
- QPILE നിർമ്മാണങ്ങൾ
- ഡാറ്റ തരങ്ങൾ
- ഭാവങ്ങൾ
- പ്രവർത്തനങ്ങൾ
- ഡീബഗ്ഗിംഗ് പ്രോഗ്രാമുകൾ
- QPILE അല്ലെങ്കിൽ LUA?
- QPILE-ൽ ഒരു ട്രേഡിംഗ് റോബോട്ട് എങ്ങനെ സൃഷ്ടിക്കാം?
- QPILE-ൽ റോബോട്ടുകൾ ട്രേഡിംഗ് – റെഡിമെയ്ഡ് പരിഹാരങ്ങൾ
- ചലിക്കുന്ന ശരാശരി റോബോട്ട്
- N. Moroshkin സ്ഥാനം കാൽക്കുലേറ്റർ
- വോളിയം ഫിൽട്ടർ
- ഓപ്ഷനുകൾ ഗ്രീക്കുകാർ
- QUIK-നുള്ള TRIX ട്രേഡിംഗ് റോബോട്ട്
- M4 പ്രീപ്രൊസസ്സർ
QPILE നെക്കുറിച്ചുള്ള പൊതുവായ വിവരങ്ങൾ
QUIK പ്രോഗ്രാമബിൾ ഇന്റർഫേസ്, ലോജിക് എൻവയോൺമെന്റ് എന്നിവയെ സൂചിപ്പിക്കുന്ന ഒരു ചുരുക്കപ്പേരാണ് QPILE.
ഇത് QUIK വർക്ക്സ്റ്റേഷൻ വ്യാഖ്യാനിക്കുന്ന കമാൻഡുകളുടെ ഒരു പരമ്പരയാണ്. സെക്യൂരിറ്റികളുടെ പോർട്ട്ഫോളിയോകളുടെ വില കണക്കാക്കാൻ ഇത് പ്രധാനമായും ഉപയോഗിക്കുന്നു. ഭാഷയും ഇതിനായി ഉപയോഗിക്കുന്നു:
- ബ്രോക്കറുടെ ഡെസ്ക്ടോപ്പിലെയും അവരുടെ പോർട്ട്ഫോളിയോകളിലെയും ക്ലയന്റുകളുടെ ആസ്തികളുടെ വിലയുടെ ചലനാത്മകമായ പുനർ കണക്കുകൂട്ടൽ. പിന്നീടുള്ള സന്ദർഭത്തിൽ, അവയുടെ ആകെ വിലയും വീണ്ടും കണക്കാക്കുന്നു;
- മാർജിൻ ലെൻഡിംഗിനായി സ്വന്തം അൽഗോരിതങ്ങളും ഡാറ്റയും ഉപയോഗിച്ച് കാണാതായ സൂചകങ്ങൾ കണ്ടെത്തൽ;
- ശരിയായ വ്യാപാര തന്ത്രം വികസിപ്പിക്കുന്നു.
ഭാഷ പട്ടികയുടെ ഘടന വിവരിക്കുന്നു: നിരകളുടെയും വരികളുടെയും നിയമനം, സൂത്രവാക്യങ്ങൾ. രണ്ടാമത്തേതിൽ, ഗണിത പ്രവർത്തനങ്ങൾ, വേരിയബിളുകൾ, മറ്റ് പട്ടികകളിൽ നിന്നുള്ള ഡാറ്റ എന്നിവ കണക്കുകൂട്ടാൻ ഉപയോഗിക്കാം. QUIK സെർവറിൽ നിന്നോ ഉപയോക്താവിന്റെ ഡിസ്കിൽ നിന്നോ ലോഡുചെയ്ത പ്രോഗ്രാം കോഡ് ഭാഷാ വ്യാഖ്യാതാവ് പ്രോസസ്സ് ചെയ്യുന്നു, അത് ഫോർമുലകളിലെ മൂല്യങ്ങൾ കണക്കാക്കുന്നു. ഒരു പ്രോഗ്രാമിന്റെ പട്ടികകൾക്ക് ഒരു ഡാറ്റ ഉറവിടമുണ്ട്, എന്നാൽ കണക്കുകൂട്ടലുകൾ തനിപ്പകർപ്പല്ല, മാത്രമല്ല സിസ്റ്റത്തിന്റെ കാര്യക്ഷമതയെ ബാധിക്കുകയുമില്ല. QUIK പട്ടികകളിൽ പ്രവർത്തിക്കുമ്പോൾ, QPILE-ലെ പട്ടികകൾക്ക് സ്റ്റാൻഡേർഡ് ഫംഗ്ഷനുകൾ ഉണ്ട്. ജോലിസ്ഥലത്തെ QUIK ഒരു QPILE കോഡ് ഡീബഗ്ഗർ കൊണ്ട് സജ്ജീകരിച്ചിരിക്കുന്നു. https://articles.opexflow.com/software-trading/torgovyj-terminal-quik.htm നൽകിയിരിക്കുന്ന ഘടനയുള്ള പുതിയ പട്ടികകൾ വിവരിക്കാനും ചില മൂല്യങ്ങളുള്ള സെല്ലുകൾ ഹൈലൈറ്റ് ചെയ്യാനും ഗണിതവും ലോജിക്കൽ എക്സ്പ്രഷനുകളും അടിസ്ഥാനമാക്കി ഫീൽഡുകൾ കണക്കാക്കാനും ഭാഷ നിങ്ങളെ അനുവദിക്കുന്നു. ഒരു ശബ്ദ സിഗ്നലിന്റെയോ വാചക സന്ദേശത്തിന്റെയോ രൂപത്തിൽ ഉപയോക്താവിന് അറിയിപ്പുകൾ ലഭിക്കും. QPILE-ലെ പട്ടികകൾ ODBC, DDE സെർവർ വഴി എഡിറ്റ് ചെയ്യാനും പ്രിന്റ് ചെയ്യാനും പകർത്താനും കയറ്റുമതി ചെയ്യാനും കഴിയും. പ്രാരംഭ ഡാറ്റ QUIK പട്ടികകളിൽ നിന്നുള്ളതാണ്:
- നിർവ്വഹണത്തിനും വ്യക്തിത്വത്തിനും ഉൾപ്പെടെയുള്ള ഇടപാടുകൾ;
- ഓവർ-ദി-കൌണ്ടർ ട്രേഡുകൾക്കും ഓർഡറുകൾക്കുമായി സ്റ്റോപ്പ് ഓർഡറുകൾ ഉൾപ്പെടെയുള്ള ഓർഡറുകൾ – സെറ്റിൽമെന്റ് ഡീലുകളിലെ ട്രേഡുകൾക്കുള്ള റിപ്പോർട്ടുകൾ;
- “ക്ലയന്റ് പോർട്ട്ഫോളിയോ”, “വാങ്ങുക/വിൽക്കുക”
- പണം, ട്രേഡിംഗ് അക്കൗണ്ടുകൾ, ഉപകരണം എന്നിവ പ്രകാരം പങ്കാളിയുടെ സ്ഥാനങ്ങളിൽ നിന്നുള്ള ഡാറ്റ.
QPILE അടിസ്ഥാനമാക്കിയുള്ള പട്ടികകൾ സന്ദർഭ മെനുവിലൂടെ ഒരു ടെക്സ്റ്റ് ഫയലിലേക്ക് പകർത്താനും സാങ്കേതിക വിശകലന സംവിധാനങ്ങളിലേക്ക് കയറ്റുമതി ചെയ്യാനും കഴിയില്ല, അവ അടിസ്ഥാനമാക്കി ചാർട്ടുകൾ വികസിപ്പിക്കാനും കഴിയില്ല. QPILE അടിസ്ഥാനമാക്കിയുള്ള പട്ടികകൾ ഫിൽട്ടർ ചെയ്യാനോ അടുക്കാനോ കഴിയില്ല.
ഒരു മേശയുമായി പ്രവർത്തിക്കുന്നു
പ്രോഗ്രാം കോഡ് ലോഡുചെയ്യുന്നതിന്, നിങ്ങൾ സേവന മെനു, തുടർന്ന് QPILE സ്ക്രിപ്റ്റുകൾ തിരഞ്ഞെടുക്കേണ്ടതുണ്ട്. നിങ്ങൾക്ക് Ctrl+F11 കോമ്പിനേഷനും ഉപയോഗിക്കാം. നിങ്ങൾ “ചേർക്കുക” ക്ലിക്കുചെയ്ത് ആവശ്യമുള്ള ഫയൽ തിരഞ്ഞെടുക്കുക. ഇതിന് ഒരു .qpl വിപുലീകരണമുണ്ട്, കൂടാതെ അതിന്റെ പേര് ലഭ്യമായ സ്ക്രിപ്റ്റ് പട്ടികയിൽ ദൃശ്യമാകും.
പ്രോഗ്രാമിൽ ഒരു പിശക് ഉണ്ടെങ്കിൽ, “സന്ദേശ വിൻഡോ” യിൽ സിസ്റ്റം ഒരു അറിയിപ്പ് ഉണ്ടാക്കും, അതിൽ വികലമായ ഫയലിന്റെ പേരും പിശകുള്ള ലൈൻ നമ്പറും അടങ്ങിയിരിക്കും. ഫയലിൽ പരാജയങ്ങളൊന്നും കണ്ടെത്തിയില്ലെങ്കിൽ, ഇനിപ്പറയുന്ന ഡാറ്റ ഫീൽഡുകളിൽ സൂചിപ്പിക്കും:
- പട്ടികയുടെ പേര്;
- നിരകളുടെയും ക്ലയന്റുകളുടെയും എണ്ണം;
- ഐഡന്റിഫയറുകളുടെയും ക്ലയന്റുകളുടെയും പട്ടിക;
- പരാമീറ്ററുകളുടെ പട്ടികയും ഫയലിന്റെ സോഴ്സ് കോഡും.
“പ്രാദേശികമായി ഡൗൺലോഡ് ചെയ്യുക” ബട്ടൺ ഒരു ഫയലിൽ നിന്ന് പട്ടിക ലഭിക്കാൻ നിങ്ങളെ അനുവദിക്കും, കൂടാതെ “സെർവറിലേക്ക് അപ്ലോഡ് ചെയ്യുക” പ്രോഗ്രാം സെർവറിലേക്ക് അയയ്ക്കും, അതുവഴി എല്ലാ ഉപയോക്താക്കൾക്കും അത് ആക്സസ് ചെയ്യാൻ കഴിയും. ഒരു പട്ടിക സൃഷ്ടിക്കാൻ, പട്ടിക സൃഷ്ടിക്കുക ക്ലിക്കുചെയ്യുക. “ലഭ്യമായ സ്ക്രിപ്റ്റുകൾ” എന്നതിൽ നിങ്ങൾ എക്സിക്യൂട്ട് ചെയ്യേണ്ട പ്രോഗ്രാം തിരഞ്ഞെടുക്കുക, “ക്ലയന്റുകളുടെ ഫിൽട്ടർ” വഴി വരികളുടെ എണ്ണം സജ്ജമാക്കുക, ആവശ്യമായ നിരകളും അവയുടെ ക്രമവും നിർണ്ണയിക്കുക.
കണക്കുകൂട്ടൽ താൽക്കാലികമായി നിർത്തുകയും പുനരാരംഭിക്കുകയും ചെയ്യുക, കണക്കുകൂട്ടൽ വീണ്ടും ആരംഭിക്കുക, ഡീബഗ് മോഡിൽ, വിവരണം ഒരു ഫയലിലേക്ക് സംരക്ഷിക്കുക, ഫോർമുല പ്രദർശിപ്പിക്കുക, സ്ക്രിപ്റ്റ് പാരാമീറ്ററുകൾ എന്നിവ സന്ദർഭ മെനുവിൽ ലഭ്യമാണ്.
QPILE നിർമ്മാണങ്ങൾ
ഡാറ്റ തരങ്ങൾ
- ചരട് – ചരട്.
- ഇരട്ട ഒരു ഫ്ലോട്ടിംഗ് പോയിന്റ് നമ്പറാണ്.
- ശേഖരം – ഒരു ശേഖരം.
- മാപ്പ് – ഒരു അസോസിയേറ്റീവ് അറേ – കീ വഴി വിവരങ്ങൾ ലഭിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്ന ജോഡികളുടെ ഒരു ശ്രേണി.
ഭാവങ്ങൾ
സങ്കലനം, കുറയ്ക്കൽ, ഗുണനം, ഹരിക്കൽ എന്നിവയുടെ ഗണിത പ്രവർത്തനങ്ങൾ പ്രയോഗിക്കുന്നു. ലോജിക്കൽ എക്സ്പ്രഷനുകൾ “ഒപ്പം”, “അല്ലെങ്കിൽ”, തുല്യം, കൂടുതൽ, കുറവ്, അസമത്വങ്ങൾ, സോപാധിക നിർമ്മാണം “എങ്കിൽ … പിന്നെ …” എന്നിവയും ഉപയോഗിക്കുന്നു.
പ്രവർത്തനങ്ങൾ
പ്രോഗ്രാമിൽ എവിടെയും ഫംഗ്ഷനുകൾ സ്ഥാപിക്കാനും വ്യത്യസ്ത പേരുകൾ ഉണ്ടായിരിക്കാനും കഴിയും. മൊത്തത്തിൽ, പട്ടികകളുടെയും പാരാമീറ്ററുകളുടെയും മൂല്യങ്ങൾ, അസോസിയേറ്റീവ് അറേകൾ, പട്ടികകളുടെ ഒരു ലിസ്റ്റ്, മറ്റ് ടാസ്ക്കുകൾ എന്നിവ ലഭിക്കുന്നതിന് 18 ഗ്രൂപ്പുകളുടെ ഗണിത പ്രവർത്തനങ്ങളും പ്രവർത്തനങ്ങളും ലഭ്യമാണ്. ഒന്നാം തരം:
- ആർഗ്യുമെന്റിന്റെ സൈൻ, കോസൈൻ, ടാൻജെന്റ്, കോട്ടാൻജെന്റ് എന്നിവയുടെ മൂല്യം തിരികെ നൽകാനും ആർഗ്യുമെന്റിന്റെ എക്സ്പോണന്റ് കണക്കാക്കാനും റാൻഡം നമ്പർ ജനറേറ്റ് ചെയ്യാനും നിങ്ങളെ അനുവദിക്കുന്ന ഗണിത പ്രവർത്തനങ്ങൾ .
- പൊതുവായ കമാൻഡുകൾ : ഒരു ആഗോള വേരിയബിൾ ആരംഭിക്കാൻ NEW_GLOBAL, സന്ദേശങ്ങൾ തുറക്കാൻ MESSAGE.
പ്രവർത്തിക്കാനുള്ള പ്രവർത്തനങ്ങൾ:
- വസ്തുക്കളുടെ ശേഖരം (ശേഖരം) . ഒരു പുതിയ ശേഖരം സൃഷ്ടിക്കാനും ആവശ്യമായ ഘടകങ്ങൾ തിരികെ നൽകാനും ആവശ്യമുള്ള മൂല്യങ്ങൾ മാറ്റിസ്ഥാപിക്കാനും തിരുകാനും അവ നിങ്ങളെ അനുവദിക്കുന്നു.
- അസോസിയേറ്റീവ് അറേകൾ (MAP) . അറേ സൃഷ്ടിക്കാനും നിയന്ത്രിക്കാനും സഹായിക്കുക.
- ഫയലുകൾ – ടെക്സ്റ്റ് ഫയലുകൾക്കൊപ്പം പ്രവർത്തിക്കുന്നു, പ്രോഗ്രാമിന്റെ ലോഗ്-ലോഗ് പരിപാലിക്കുന്നു. ഫയലിന്റെ പേരിൽ അതിലേക്കുള്ള പാത അടങ്ങിയിരിക്കാം.
- ചരടുകൾ .
- ഗ്രാഫുകൾ . മെഴുകുതിരി ഡാറ്റ ആക്സസ്സുചെയ്യാൻ GET_CANDLE, ഒരു അസോസിയേറ്റീവ് അറേ നൽകുന്നതിന് GET_CANDLE EX എന്നീ ഫംഗ്ഷനുകൾ.
- അപേക്ഷകൾ . ഓർഡറുകൾ സൃഷ്ടിച്ച് അവയെ ട്രേഡിംഗ് സിസ്റ്റത്തിലേക്ക് അയയ്ക്കുന്നു.
- ടാഗുകൾ . ചാർട്ടിൽ അവയുടെ നിർമ്മാണവും ഇൻസ്റ്റാളേഷനും. ഒന്നോ അല്ലെങ്കിൽ എല്ലാ ലേബലുകളും ചേർക്കുക, ഇല്ലാതാക്കുക, ഒരു നിർദ്ദിഷ്ട ലേബലിനായി പാരാമീറ്ററുകൾ നേടുകയും സജ്ജീകരിക്കുകയും ചെയ്യുക.
ഇതിനായുള്ള പ്രവർത്തനങ്ങളും ഉണ്ട്:
- അനിയന്ത്രിതമായ QUIK പട്ടികകളുടെയും ലഭ്യമായ പാരാമീറ്ററുകളുടെ ലിസ്റ്റുകളുടെയും വരികൾ ആക്സസ് ചെയ്യുന്നതിന് . ജോലിസ്ഥലത്തെ പട്ടിക ഡാറ്റയിലേക്കുള്ള ആക്സസ്. ഇതിൽ MAP തിരികെ നൽകുന്നതിന് GET_ITEMഉം എൻട്രികളുടെ എണ്ണം നൽകുന്നതിന് GET_NUMBER_OF ഉം ഉൾപ്പെടുന്നു.
- ഒരു പ്രോഗ്രാമബിൾ പട്ടികയിൽ പ്രവർത്തിക്കാൻ . ഈ കമാൻഡുകൾ സ്വന്തം പട്ടികയിൽ പ്രവർത്തിക്കുന്നു. മുമ്പത്തെ ഖണ്ഡികയിൽ നിന്നുള്ള സ്റ്റാൻഡേർഡ് ഫംഗ്ഷനുകളാലും ഈ ഫംഗ്ഷനുകളാലും ഇത് വായിക്കാനാകും. ഈ ഗ്രൂപ്പിൽ ഒരു സൂചിക ഉപയോഗിച്ച് വരി ചേർക്കുന്നതിനും പരിഷ്ക്കരിക്കുന്നതിനും ഇല്ലാതാക്കുന്നതിനും സ്വന്തം പട്ടിക പൂർണ്ണമായും മായ്ക്കുന്നതിനുമുള്ള കമാൻഡുകൾ ഉൾപ്പെടുന്നു.
മൂല്യങ്ങൾ ലഭിക്കാൻ ഉപയോഗിക്കുക:
- നിലവിലെ ട്രേഡുകളുടെ പട്ടികകൾ . GET_PARAM (_EX) കമാൻഡുകൾ ഉപയോഗിച്ച് എക്സ്ചേഞ്ച് വിവര പാരാമീറ്ററുകൾ നേടുന്നു.
- ഉദ്ധരണി വിൻഡോകൾ . ഉപകരണ ഉദ്ധരണികളുടെ മൂല്യങ്ങൾ നേടുന്നു.
- ഉപകരണങ്ങളും പണവും അനുസരിച്ച് സ്ഥാനങ്ങളുടെ പട്ടികകൾ . ഒരു ക്ലയന്റ്, കമ്പനി, ഇൻസ്ട്രുമെന്റ്, ഡിപ്പോ അക്കൗണ്ട് എന്നിവയിൽ കോഡ് വഴി ഡാറ്റ നേടുന്നു.
സേവന പ്രവർത്തനങ്ങൾ – നിലവിലെ ട്രേഡിംഗ് സെഷന്റെ തീയതി, അസോസിയേറ്റീവ് സീരീസ്, നിലവിലെ തീയതിയും സമയവും തിരികെ നൽകുന്നു, കണക്ഷൻ അവസ്ഥ നിർണ്ണയിക്കുന്നു, കണക്കുകൂട്ടൽ മോഡ് തടസ്സപ്പെടുത്തുന്നു.
ഡീബഗ്ഗിംഗ് പ്രോഗ്രാമുകൾ
പ്രോഗ്രാമിന്റെ പ്രവർത്തനത്തിൽ ഘട്ടം ഘട്ടമായുള്ള നിയന്ത്രണം “ഡീബഗ്” വിൻഡോയിൽ നടപ്പിലാക്കുന്നു. “ഡീബഗ് മോഡിൽ കണക്കുകൂട്ടൽ ആരംഭിക്കുക” എന്ന സന്ദർഭ മെനുവിൽ നിന്ന് ഇത് തുറക്കുന്നു. ബ്രേക്ക്പോയിന്റ്() കമാൻഡ് ഉപയോഗിച്ച് ഇത് തുറക്കാനും കഴിയും, കൂടാതെ പ്രോഗ്രാം ലൈൻ ചുവപ്പ് നിറത്തിൽ ഹൈലൈറ്റ് ചെയ്യും. വിൻഡോയിൽ പ്രോഗ്രാം കോഡും വേരിയബിൾ മൂല്യങ്ങളും ഉള്ള ഫീൽഡുകൾ അടങ്ങിയിരിക്കുന്നു. വിൻഡോയുടെ ചുവടെ “അടുത്ത ഘട്ടം”, “നിർവ്വഹണം തുടരുക”, “കണക്ക് നിർത്തുക” ബട്ടണുകൾ ഉണ്ട്. F5 അമർത്തുന്നത് പ്രോഗ്രാമിന്റെ എക്സിക്യൂഷൻ തുടരും, Shift + F5 കോമ്പിനേഷൻ ഡീബഗ്ഗിംഗ് നിർത്തും, F10 കീ അടുത്ത വരിയിലേക്ക് നയിക്കും.
QPILE അല്ലെങ്കിൽ LUA?
ട്രേഡിംഗ് റോബോട്ടുകൾ സൃഷ്ടിക്കുന്നതിനുള്ള ഒരു പുതിയ പ്രോഗ്രാമിംഗ് ഭാഷയാണ് LUA. QPILE പോലെ, ഇത് QUIK ടെർമിനലിൽ നടപ്പിലാക്കുന്നു. https://articles.opexflow.com/programming/lua.htm ട്രേഡിങ്ങിനായി ട്രേഡിംഗ് റോബോട്ടുകളുടെ വികസനത്തിനായി സമർപ്പിച്ചിരിക്കുന്ന ഒരു സൈറ്റ് QPILE-നേക്കാൾ LUA ഭാഷയുടെ ഗുണങ്ങൾ കാണിക്കുന്നു. അതിനാൽ, ഡവലപ്പർ ടൂളുകളും ഒബ്ജക്റ്റ് ഓറിയന്റഡ് പ്രോഗ്രാമിംഗ് മെക്കാനിസങ്ങളും സജ്ജീകരിച്ചിരിക്കുന്ന ഒരു നോൺ-കംപൈൽ ചെയ്ത സ്ക്രിപ്റ്റും ബൈറ്റ്കോഡും ആയി പ്രവർത്തിക്കാൻ കഴിയും. മറ്റ് പ്രോഗ്രാമിംഗ് ഭാഷകളിൽ എഴുതിയ വസ്തുക്കൾ LUA പ്രോഗ്രാമുകളുമായി ബന്ധിപ്പിക്കാൻ കഴിയും. LUA മെറ്റാറ്റബിളുകൾ ഉൾപ്പെടെ 8 ഡാറ്റ തരങ്ങൾ നൽകുന്നു. LUA ഭാഷ മൾട്ടി-ത്രെഡുള്ളതും വേഗതയുള്ളതും ഇടപാടുകളും ടെർമിനൽ ഇവന്റുകളും അസമന്വിതവുമാണ്. LUA എന്നത് QPILE എന്നതിനേക്കാൾ സാധാരണമാണ്, കൂടാതെ അതിനായി നിരവധി വിപുലീകരണങ്ങളും എഴുതിയിട്ടുണ്ട്.
QPILE ഭാഷ ഇപ്പോൾ ഒഴിവാക്കിയിരിക്കുന്നു. ഫോറങ്ങളിലെ വിദഗ്ധർ LUA ഉപയോഗിക്കാൻ ശുപാർശ ചെയ്യുന്നു. ഉപയോഗപ്രദവും ഫലപ്രദവുമായ പ്രോഗ്രാമുകൾ ഇപ്പോഴും ഉപയോഗിക്കുന്നുണ്ടെങ്കിലും.
എന്നിരുന്നാലും, LUA യുമായി താരതമ്യപ്പെടുത്തുമ്പോൾ QPILE ഭാഷ ലളിതമാണ്, അതിനാൽ നിങ്ങൾക്ക് പ്രോഗ്രാമിംഗിൽ പരിചയമില്ലെങ്കിൽ, QPILE തിരഞ്ഞെടുക്കുന്നതാണ് നല്ലത്. ഈ ഭാഷയിൽ, സങ്കീർണ്ണമായ കണക്കുകൂട്ടലുകൾ നടത്തേണ്ടതില്ലെങ്കിൽ നിങ്ങൾക്ക് ഒരു ലളിതമായ റോബോട്ട് എഴുതാം.
QPILE-ൽ ഒരു ട്രേഡിംഗ് റോബോട്ട് എങ്ങനെ സൃഷ്ടിക്കാം?
ഒരു ട്രേഡിംഗ് ഉപദേശകനെ സൃഷ്ടിക്കുന്നതിന്, നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന പ്രോഗ്രാമുകൾ ആവശ്യമാണ്:
- ITS Quik.
- നോട്ട്പാഡ്++ കോഡ് എഡിറ്റർ.
- QPILE-ലേക്കുള്ള ഗൈഡ്.
- നോട്ട്പാഡ്++-ൽ കോഡ് കണ്ടെത്തുന്നതിനുള്ള XML പ്ലഗിൻ.
ഈ പ്രോഗ്രാമുകൾ ഡൗൺലോഡ് ചെയ്ത് ഇൻസ്റ്റാൾ ചെയ്യുക. C:\Users\User\ AppData\Roaming\Notepad++\ എന്ന പാതയിൽ userDefineLang.xml നൽകി ഭാഷാ വാക്യഘടന പ്രവർത്തനക്ഷമമാക്കുക
ആദ്യം, നമുക്ക് ഇനിപ്പറയുന്ന വ്യാപാര തന്ത്രം സൃഷ്ടിക്കാം. സ്ക്രിപ്റ്റ് ഓരോ മിനിറ്റിലും അവസാനത്തെ കുറച്ച് മെഴുകുതിരികൾക്ക് ഹായ്, ലോ എന്നിവ കണക്കാക്കണം, ഉപകരണത്തിന്റെ നിലവിലെ വില പരിശോധിക്കുക. ഉപകരണത്തിന്റെ വില ഈ കാലയളവിലെ പരമാവധി അല്ലെങ്കിൽ കുറഞ്ഞ മൂല്യത്തിൽ എത്തിയാൽ ആവശ്യമായ ദിശയിൽ ഒരു സ്ഥാനം തുറക്കും. ഷോർട്ട് എന്നതിനുള്ള ഒരു സിഗ്നൽ ലഭിക്കുമ്പോൾ, ലോംഗ് പൊസിഷൻ സ്വയമേവ അടയുന്നു. റോബോട്ട് GAZP ടൂൾ ഉപയോഗിക്കുന്നു, സമയപരിധി 1 മിനിറ്റായി സജ്ജീകരിച്ചിരിക്കുന്നു. ഹൈ-ലോ മെഷർമെന്റ് ഡെപ്ത് 5 മെഴുകുതിരികളായി സജ്ജീകരിച്ചിരിക്കുന്നു. ലോങ്ങിൽ പ്രവേശിക്കാൻ, ഒരു റൂൾ സജ്ജീകരിച്ചിരിക്കുന്നു, ഈ കാലയളവിലെ പരമാവധി മൂല്യത്തിന്റെ നിലവിലെ വിലയുടെ കവല. നിലവിലെ വില ഈ 5 മെഴുകുതിരികളുടെ ഏറ്റവും കുറഞ്ഞ മൂല്യം കവിയുകയാണെങ്കിൽ റോബോട്ട് ഷോർട്ട് എന്ന് രേഖപ്പെടുത്തും. അടിസ്ഥാന ക്രമീകരണങ്ങളും സെർവർ തീയതിയും സമയവും ഉപയോഗിച്ച് നോട്ട്പാഡ്++-ൽ ഒരു ബ്ലോക്ക് കോഡ് എഴുതുക. ഈ കോഡ് ചുവടെയുള്ള ചിത്രത്തിൽ കാണിച്ചിരിക്കുന്നു.
കോഡിന്റെ ആദ്യ 4 വരികൾ പ്രോഗ്രാം ഹെഡറാണ്. 6 നും 44 നും ഇടയിലുള്ള വരികൾ പ്രോഗ്രാമിന്റെ ബോഡിയാണ്, അതിൽ റോബോട്ടിന്റെ ഉള്ളടക്കം അടങ്ങിയിരിക്കുന്നു. 7 – 12 വരികളിൽ ഉപയോക്തൃ ക്രമീകരണങ്ങൾ അടങ്ങിയിരിക്കുന്നു, അതിൽ ഉപകരണത്തിന്റെ കോഡുകൾ, ഗ്രൂപ്പ്, ക്ലയന്റ്, MICEX-ലെ അക്കൗണ്ട് നമ്പർ എന്നിവ ഉൾപ്പെടുന്നു. പ്രോഗ്രാം എക്സിക്യൂഷൻ സമയത്ത് ഈ മൂല്യങ്ങൾ മാറില്ല. 13-16 വരികൾ വേരിയബിളുകളുടെ പ്രാരംഭ മൂല്യങ്ങളാണ്. ഓരോ ആവർത്തന പാസിലും അവ പൂജ്യത്തിലേക്ക് പുനഃസജ്ജീകരിക്കും. 17 – 21 വരികളിൽ സെർവർ തീയതിയും സമയവും ഉപയോഗിക്കുന്നതിനുള്ള ഒരു സൂചന അടങ്ങിയിരിക്കുന്നു. ഈ ഡാറ്റ DATETIME ഫംഗ്ഷനിലേക്ക് കൈമാറുകയും ടെക്സ്റ്റ് ഫോർമാറ്റിലേക്ക് പരിവർത്തനം ചെയ്യുകയും ചെയ്യുന്നു. 22 – 29 വരികൾ സ്വീകരിച്ച ഡാറ്റ പട്ടികയിലേക്ക് അയയ്ക്കുക. കോഡ് സംരക്ഷിക്കുകയും qpl വിപുലീകരണം വ്യക്തമാക്കുകയും വേണം.
Ctrl+F10 അമർത്തി ജനറേറ്റ് ചെയ്ത qpl ഫയൽ തിരഞ്ഞെടുത്ത് QUIK-ൽ പ്രോഗ്രാം തുറക്കുക. “പോർട്ട്ഫോളിയോകൾക്കൊപ്പം പ്രവർത്തിക്കുക” വിൻഡോ തുറന്ന് പോർട്ട്ഫോളിയോ കണക്കുകൂട്ടൽ കാലയളവ് 5 മിനിറ്റായി സജ്ജീകരിക്കാൻ Ctrl+F11 കോമ്പിനേഷൻ ഉപയോഗിക്കുക. പട്ടികയിൽ പ്രദർശിപ്പിക്കുന്നതിന് നിരകൾ സജ്ജമാക്കാൻ Ctrl+F12 അമർത്തുക. റോബോട്ടിന്റെ പ്രവർത്തനത്തിന്റെ ഫലം ചിത്രം കാണിക്കുന്നു.
ഞങ്ങളുടെ പ്രോഗ്രാമിലേക്ക് കുറച്ച് പ്രവർത്തനങ്ങളും വ്യവസ്ഥകളും ചേർക്കാം.
“ഉപയോക്തൃ ക്രമീകരണങ്ങൾ” ബ്ലോക്ക് NUMBER, INTERVAL വേരിയബിളുകൾക്കൊപ്പം സപ്ലിമെന്റ് ചെയ്തിരിക്കുന്നു, അവ അവസാന N ബാറുകൾ നേടുന്നതിനുള്ള പ്രവർത്തനത്തിൽ ഉപയോഗിക്കും. DATETIME ഫംഗ്ഷൻ സെർവർ തീയതിയും സമയവും സജ്ജീകരിക്കുന്നു, നിലവിലെ തീയതിയും സമയ പ്രവർത്തനങ്ങളും CURDATE, CURTIME എന്നിവ അതിൽ നിന്നാണ് വിളിക്കുന്നത്. നിലവിലെ സമയം വരി 24-ലെ ഒരു സംഖ്യയായി പരിവർത്തനം ചെയ്യപ്പെടുന്നു. ലൈൻ 26, 10:00:01 മുതൽ 18:40:00 UTC വരെ അൽഗോരിതം പ്രവർത്തിപ്പിക്കുന്നതിനുള്ള സമയം സജ്ജമാക്കുന്നു.
മിക്കപ്പോഴും, സൂചകങ്ങൾ, ഓസിലേറ്ററുകൾ, സ്റ്റാറ്റിസ്റ്റിക്കൽ കണക്കുകൂട്ടലുകൾ എന്നിവ ചാർട്ടിന്റെ അവസാന N മെഴുകുതിരികൾ ഉപയോഗിച്ച് കണക്കാക്കുന്നു. N കാലയളവുകൾക്ക് മുമ്പ് മെഴുകുതിരികളുടെ എണ്ണം ശേഖരിക്കുന്നതിന് QPILE-ന് ഒരു ഫംഗ്ഷൻ ഇല്ല, എന്നാൽ ടെക്സ്റ്റ് ഫോർമാറ്റിൽ തീയതിയും സമയവും അനുസരിച്ച് ചാർട്ടിലെ മെഴുകുതിരികൾ ആക്സസ് ചെയ്യുന്ന ഒരു GET_CANDLE ഫംഗ്ഷൻ ഉണ്ട്. ഞങ്ങളുടെ കോഡിൽ അവസാനത്തെ N ബാറുകൾ OHLC() ലഭിക്കുന്നതിനുള്ള പ്രവർത്തനം അടങ്ങിയിരിക്കുന്നു. COLLECTION ലിസ്റ്റിൽ നെസ്റ്റ് ചെയ്ത അവസാന മെഴുകുതിരികളുടെ പാരാമീറ്ററുകൾ ഉപയോഗിച്ച് ഇത് ഒരു ശേഖരം സൃഷ്ടിക്കുന്നു. പ്രോഗ്രാം INTERVAL മൂല്യം പരിശോധിക്കുന്നു, അത് 0…60 പരിധിയിൽ വരുന്നില്ലെങ്കിൽ, മൂല്യം അനുവദനീയമായ ശ്രേണിയുമായി പൊരുത്തപ്പെടുന്നില്ലെന്ന് ഒരു സന്ദേശം പ്രദർശിപ്പിക്കും. വരി 88-ൽ മെഴുകുതിരികളുള്ള ഒരു MAP ശേഖരം സൃഷ്ടിക്കപ്പെട്ടിരിക്കുന്നു. പുതിയതിൽ നിന്ന് പഴയ മെഴുകുതിരിയിലേക്കുള്ള INTERVAL ഘട്ടത്തിലൂടെ ആവശ്യമായ ആഴത്തിലേക്ക് ചാർട്ട് പോളിംഗ് ചെയ്യുന്നതിനുള്ള ഒരു ഫോർ ലൂപ്പ്. 90 വരിയിൽ, സൈക്കിൾ പ്രഖ്യാപിച്ചതിന് ശേഷം, റോബോട്ട് ഒരു ഇടവേള പിന്നോട്ട് പോകുന്നു. നിങ്ങൾക്ക് GET_CANDLE ഉള്ള ഒരു മെഴുകുതിരി ലഭിക്കുമ്പോൾ, INSERT_COLLECTION_TEAM ഫംഗ്ഷൻ ഉപയോഗിച്ച് ഇത് BARLIST ശേഖരത്തിൽ സ്ഥാപിക്കുക. OHLC() കമാൻഡിന്റെ പ്രവർത്തനത്തിന്റെ ഫലമായി, ഇൻസ്ട്രുമെന്റ് ചാർട്ടിൽ നിന്നുള്ള അവസാന മെഴുകുതിരികൾ NUMBER എന്ന തുകയിൽ BARLIST വീണ്ടും നിറയ്ക്കുന്നു. ശേഖരത്തിലെ ഘടകങ്ങളുടെ എണ്ണം GET_COLLECTION_COUNT() കമാൻഡ് അഭ്യർത്ഥിക്കുകയും BARCOUNT വേരിയബിൾ റിപ്പോർട്ട് ചെയ്യുകയും ചെയ്യുന്നു. സെർവർ തീയതി, സമയം, INSTRUMENT എന്നിവയുടെ മൂല്യങ്ങളും BARCOUNT വേരിയബിളുകളും OUTPUT-ൽ SET_VALUE() ഫംഗ്ഷൻ റിപ്പോർട്ട് ചെയ്യുന്നു. CREATE_MAP() കമാൻഡ് ഉപയോഗിച്ചാണ് ഈ അറേ സൃഷ്ടിച്ചിരിക്കുന്നത്. ഡാറ്റ ഇഷ്ടാനുസൃത പട്ടികയിലേക്ക് വീഴുന്നു, അത് ചുവടെയുള്ള ഫോട്ടോയിൽ കാണാൻ കഴിയും. INSTRUMENT, BARCOUNT വേരിയബിളുകളുടെ മൂല്യങ്ങൾ OUTPUT-ലെ SET_VALUE() ഫംഗ്ഷൻ റിപ്പോർട്ട് ചെയ്യുന്നു. CREATE_MAP() കമാൻഡ് ഉപയോഗിച്ചാണ് ഈ അറേ സൃഷ്ടിച്ചിരിക്കുന്നത്. ഡാറ്റ ഇഷ്ടാനുസൃത പട്ടികയിലേക്ക് വീഴുന്നു, അത് ചുവടെയുള്ള ഫോട്ടോയിൽ കാണാൻ കഴിയും. INSTRUMENT, BARCOUNT വേരിയബിളുകളുടെ മൂല്യങ്ങൾ OUTPUT-ലെ SET_VALUE() ഫംഗ്ഷൻ റിപ്പോർട്ട് ചെയ്യുന്നു. CREATE_MAP() കമാൻഡ് ഉപയോഗിച്ചാണ് ഈ അറേ സൃഷ്ടിച്ചിരിക്കുന്നത്. ഡാറ്റ ഇഷ്ടാനുസൃത പട്ടികയിലേക്ക് വീഴുന്നു, അത് ചുവടെയുള്ള ഫോട്ടോയിൽ കാണാൻ കഴിയും.
QPILE-ൽ റോബോട്ടുകൾ ട്രേഡിംഗ് – റെഡിമെയ്ഡ് പരിഹാരങ്ങൾ
ചലിക്കുന്ന ശരാശരി റോബോട്ട്
ഡെമോ റോബോട്ട് യഥാർത്ഥ വ്യാപാരത്തിന് അനുയോജ്യമല്ല.
റോബോട്ടിൽ 5 പാരാമീറ്ററുകൾ ഉൾപ്പെടുന്നു. DATE, TIME, PRICE ഐഡന്റിഫയർ മൂല്യങ്ങൾ ലെവൽ 30 ആയി സജ്ജീകരിച്ചിരിക്കുന്നു. MOVING, TP ഐഡന്റിഫയറുകൾ പൂജ്യം കൃത്യതയിൽ സജ്ജീകരിച്ചിരിക്കുന്നു. ചലിക്കുന്ന ശരാശരിയിൽ റോബോട്ട് കോഡ് QPILE-ന് കീഴിൽ എഴുതിയിരിക്കുന്നു: [ഗാലറി കോളങ്ങൾ = “5” ids = “14896,14897,14898,14899,14900,14901,14902,14903,14904,14905,14906,14907”]
N. Moroshkin സ്ഥാനം കാൽക്കുലേറ്റർ
അനുവദനീയമായ പരമാവധി ഡ്രോഡൗണിന്റെ ലെവലുകളും ദൈർഘ്യമേറിയതും ഹ്രസ്വവുമായ സ്ഥാനങ്ങൾക്കുള്ള ലക്ഷ്യവും നിലവിലെ ചോദിക്കുന്നതും ബിഡ് വിലകളും കണക്കാക്കുന്നതിനുള്ള ഒരു പ്രോഗ്രാം. സ്ഥാന എൻട്രി വോളിയത്തിന്റെ 2 മൂല്യങ്ങൾക്കായി ലെവലുകൾ കണക്കാക്കുന്നു. ബാർ വളർച്ചയുടെ ദിശയിൽ ഒരു സ്ഥാനം തുറക്കുന്നതിന്റെ കണക്കുകൂട്ടലിനൊപ്പം ഓപ്പണിംഗ് വിലയിൽ നിന്ന് ഒരു ഘട്ടത്തിൽ ഒരു സ്റ്റോപ്പ് ഓർഡർ നൽകുമ്പോൾ റോബോട്ട് അനുവദനീയമായ സ്ഥാന വോളിയം കണ്ടെത്തുന്നു. കണ്ടെത്തിയ ലെവലുകൾ ടെർമിനൽ വിൻഡോയിൽ നൽകിയിട്ടുണ്ട്, അത് പിന്നീട് വില ചാർട്ടിൽ പ്രതിഫലിക്കുന്നു. നൽകിയിരിക്കുന്ന ഉപകരണത്തിന് ഇടപാടുകൾ നിശ്ചയിച്ചിരിക്കുന്നു. ഒരു സ്ഥാനം തുറന്നാൽ, റോബോട്ട് അതിന്റെ പാരാമീറ്ററുകൾ കണക്കാക്കാൻ തുടങ്ങുന്നു. സ്ഥാനത്തെ മാറ്റത്തെ ആശ്രയിച്ച്, നിയുക്ത ഓർഡറുകൾ ക്രമീകരിക്കപ്പെടുന്നു.
വോളിയം ഫിൽട്ടർ
മെഴുകുതിരികൾക്കുള്ള വോളിയത്തിന്റെ ഗണിത ശരാശരി കണക്കാക്കുന്നതിനും X കോഫിഫിഷ്യന്റ് ഉപയോഗിച്ച് ശരാശരി ഉൽപ്പന്നവുമായി താരതമ്യം ചെയ്യുന്നതിനുമുള്ള പോർട്ട്ഫോളിയോ റോബോട്ട്. തിരഞ്ഞെടുത്ത കാലയളവിൽ പ്ലോട്ട് ചെയ്ത ചാർട്ടുകൾക്കൊപ്പം ശരിയായി പ്രവർത്തിക്കുന്നു.
ഓപ്ഷനുകൾ ഗ്രീക്കുകാർ
ഓപ്ഷനുകളുടെ “ഗ്രീക്കുകാർ” കണക്കാക്കുന്നതിനും പ്രദർശിപ്പിക്കുന്നതിനുമുള്ള പോർട്ട്ഫോളിയോ. ഇത് ബ്ലാക്ക്-ഷവർ രീതിയിൽ നിന്ന് വ്യത്യസ്തമാണ്.
QUIK-നുള്ള TRIX ട്രേഡിംഗ് റോബോട്ട്
പ്രോഗ്രാം TRIX ഇൻഡിക്കേറ്റർ അടിസ്ഥാനമാക്കിയുള്ളതാണ്. സൂചകം പൂജ്യം ലൈനിന് മുകളിൽ അടയ്ക്കുമ്പോൾ, നിർദ്ദിഷ്ട ലെവൽ, റോബോട്ട് നീണ്ട സ്ഥാനം എടുക്കുന്നു. ടേക്ക് പ്രോഫിറ്റ്, സ്റ്റോപ്പ് ലോസ് അല്ലെങ്കിൽ ട്രെയിലിംഗ് സ്റ്റോപ്പ് വഴി ഈ സ്ഥാനം അടച്ചിരിക്കുന്നു.
M4 പ്രീപ്രൊസസ്സർ
QPILE, Lua എന്നിവയിൽ പ്രവർത്തിക്കുന്നതിനുള്ള പ്രോഗ്രാം. എക്സിക്യൂട്ടബിൾ ഫയലുകളുള്ള ആർക്കൈവുകൾ, ഡോക്യുമെന്റേഷൻ, പതിവ് എക്സ്പ്രഷൻ പാഴ്സിങ് ഉള്ള DLL ഫയലുകൾ എന്നിവ ഉൾപ്പെടുന്നു. പ്രോഗ്രാം ഉപയോഗിക്കുന്നതിന്, നിങ്ങൾ എക്സിക്യൂട്ടബിൾ ഫയലുകൾ അൺപാക്ക് ചെയ്യുകയും C:\Windows പാതയിൽ regexp2 സ്ഥാപിക്കുകയും വേണം. QUIK-നുള്ള QPILE-ലെ പാഠങ്ങൾ: https://youtu.be/vMTXwDUujpI Quik ടെർമിനലിൽ QPILE-ൽ ഒരു സ്ക്രിപ്റ്റ് ഇൻസ്റ്റാൾ ചെയ്യുന്നു: https://youtu.be/0B7qL8Svh7I ഗിത്തബിനെക്കുറിച്ചുള്ള ഒരു വിഭാഗം QPILE അൽഗോരിതം ഭാഷയുടെ ഉപയോഗത്തെ വിവരിക്കുന്നു. QUIK സിസ്റ്റം വർക്ക്സ്റ്റേഷൻ ലിങ്കിൽ സ്ഥിതിചെയ്യുന്നു – https://euvgub.github.io/quik_user_manual/ch8.html. QPILE ഒരു കാലഹരണപ്പെട്ട ഭാഷയാണ്, എന്നാൽ വളരെ ലളിതവും പുതിയ വ്യാപാരികൾക്ക് പോലും ആക്സസ് ചെയ്യാവുന്നതുമാണ്. വളരെക്കാലമായി സ്വയം തെളിയിച്ചിട്ടുള്ള ട്രേഡിംഗ് റോബോട്ടുകളും പ്രോഗ്രാമുകളും അതിൽ പ്രവർത്തിക്കുന്നത് തുടരുന്നു. എന്നിരുന്നാലും, കൂടുതൽ സങ്കീർണ്ണമായ ജോലികൾക്ക് LUA ഉപയോഗിക്കുന്നതാണ് നല്ലത്.
0к