QUIK का लागि प्रोग्रामिङ ट्रेडिंग रोबोटहरूको लागि एल्गोरिदमिक भाषा QPILE।
ट्रेडिंग रोबोटहरू प्रोग्राम कोड जस्तै एक विशिष्ट भाषामा लेख्न सकिन्छ। QPILE ती मध्ये एक हो, लेखले यो भाषालाई विचार गर्नेछ, QPILE र
LUA भाषाहरू तुलना गर्नेछ , र यस भाषामा रोबोटहरूको उदाहरणहरू पनि प्रदान गर्नेछ।
- QPILE को बारेमा सामान्य जानकारी
- टेबुलसँग काम गर्दै
- QPILE निर्माण गर्दछ
- डाटा प्रकारहरू
- अभिव्यक्तिहरू
- कार्यहरू
- डिबगिङ कार्यक्रमहरू
- QPILE वा LUA?
- QPILE मा ट्रेडिंग रोबोट कसरी बनाउने?
- QPILE मा रोबोट ट्रेडिंग – तयार समाधान
- चलिरहेको औसत रोबोट
- N. Moroshkin स्थिति क्यालकुलेटर
- भोल्युम फिल्टर
- विकल्प ग्रीक
- QUIK को लागि TRIX ट्रेडिंग रोबोट
- M4 प्रीप्रोसेसर
QPILE को बारेमा सामान्य जानकारी
QPILE एउटा संक्षिप्त नाम हो जुन QUIK प्रोग्रामेबल इन्टरफेस र तर्क वातावरणको लागि खडा हुन्छ।
यो 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 एक सहयोगी array फर्काउन।
- अनुप्रयोगहरू । अर्डरहरू सिर्जना गर्दै र तिनीहरूलाई व्यापार प्रणालीमा पठाउँदै।
- ट्यागहरू । चार्टमा तिनीहरूको निर्माण र स्थापना। एक वा सबै लेबलहरू थप्दै, मेटाउने, विशेष लेबलको लागि प्यारामिटरहरू प्राप्त गर्ने र सेट गर्ने।
यसका लागि कार्यहरू पनि छन्:
- स्वेच्छाचारी QUIK तालिकाहरू र उपलब्ध प्यारामिटरहरूको सूचीहरूको पङ्क्तिहरू पहुँच गर्नका लागि । कार्यस्थल तालिका डेटा पहुँच। यसमा MAP फिर्ता गर्न GET_ITEM र प्रविष्टिहरूको संख्या फिर्ता गर्न GET_NUMBER_OF समावेश छ।
- एक प्रोग्रामेबल तालिका संग काम गर्न । यी आदेशहरू OWN तालिकामा काम गर्छन्। यो अघिल्लो अनुच्छेदबाट मानक प्रकार्यहरू र यी कार्यहरू द्वारा पढ्न योग्य छ। यो समूहले अनुक्रमणिकाको साथ पङ्क्ति थप्ने, परिमार्जन गर्ने र मेटाउने र OWN तालिकालाई पूर्ण रूपमा खाली गर्ने आदेशहरू समावेश गर्दछ।
मानहरू प्राप्त गर्न प्रयोग गर्नुहोस्:
- हालको कारोबारको तालिका । 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 प्रयोग गर्न सिफारिस गर्छन्। यद्यपि उपयोगी र प्रभावकारी कार्यक्रमहरू अझै पनि प्रयोग भइरहेका छन्।
यद्यपि, QPILE भाषा LUA को तुलनामा सरल छ, त्यसैले यदि तपाइँसँग प्रोग्रामिङमा कुनै अनुभव छैन भने, QPILE छनौट गर्नु राम्रो हुन्छ। यस भाषामा, यदि तपाइँ जटिल गणनाहरू गर्न आवश्यक छैन भने, तपाइँ सरल रोबोट लेख्न सक्नुहुन्छ।
QPILE मा ट्रेडिंग रोबोट कसरी बनाउने?
व्यापार सल्लाहकार सिर्जना गर्न, तपाईंलाई निम्न कार्यक्रमहरू चाहिन्छ:
- ITS Quik।
- नोटप्याड ++ कोड सम्पादक।
- QPILE को लागि गाइड।
- Notepad++ मा कोड पत्ता लगाउनको लागि XML प्लगइन।
यी प्रोग्रामहरू डाउनलोड र स्थापना गर्नुहोस्। C:\Users\User\ AppData\Roaming\Notepad++\ मा userDefineLang.xml राखेर भाषा सिन्ट्याक्स सक्षम गर्नुहोस्।
“प्रयोगकर्ता सेटिङहरू” ब्लक NUMBER र INTERVAL चरहरूसँग पूरक छ, जुन अन्तिम N बारहरू प्राप्त गर्ने कार्यमा प्रयोग गरिनेछ। DATETIME प्रकार्यले सर्भर मिति र समय सेट गर्दछ, र हालको मिति र समय प्रकार्यहरू CURDATE र CURTIME यसबाट बोलाइन्छ। हालको समय लाइन 24 मा संख्यामा रूपान्तरण गरिएको छ। रेखा 26 ले 10:00:01 देखि 18:40:00 UTC सम्म चल्ने एल्गोरिदमको लागि समय सेट गर्दछ।
QPILE मा रोबोट ट्रेडिंग – तयार समाधान
चलिरहेको औसत रोबोट
डेमो रोबोट वास्तविक व्यापारको लागि उपयुक्त छैन।
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 github मा बनाइएको QPILE एल्गोरिदमिक भाषाको प्रयोगको वर्णन गर्ने खण्ड। लिंकमा अवस्थित QUIK प्रणाली कार्यस्थान – https://euvgub.github.io/quik_user_manual/ch8.html। QPILE पुरानो भाषा हो, तर एकदम सरल र नौसिखिया व्यापारीहरूको लागि पनि पहुँचयोग्य। ट्रेडिंग रोबोट र प्रोग्रामहरू जसले आफूलाई लामो समयको लागि प्रमाणित गरेको छ यसमा काम गर्न जारी छ। यद्यपि, थप जटिल कार्यहरूको लागि LUA प्रयोग गर्नु राम्रो छ।
0к