विज़ुअलाइज़ेशन मॉड्यूल ट्रेडिंग रणनीति का निर्माण - प्रगति

लेखक:छोटे सपने, बनाया गयाः 2019-07-17 10:22:20, अद्यतनः 2023-10-24 21:40:50

img

विज़ुअलाइज़ेशन मॉड्यूल ट्रेडिंग रणनीतियों का निर्माण करने के लिए आगे बढ़ रहा है

विज़ुअलाइज़ेशन मॉड्यूल बनाने के लिए ट्रेडिंग रणनीतियों को सीखना एक शुरुआती पाठ है, विज़ुअलाइज़ेशन मॉड्यूल बनाने, जोड़ने के लिए एक वैचारिक समझ है, और एक बहुत ही सरल तरीका है। इसके बाद, अन्य मॉड्यूल का उपयोग करना सीखना आसान हो जाता है। कुछ अधिक जटिल कार्यों को एक साथ जोड़ा जा सकता है।

  • लेन-देन श्रेणी मॉड्यूल

    पिछले अध्ययनों और परीक्षणों में, हम कुछ "लेनदेन श्रेणियों" के मॉड्यूल से संपर्क कर चुके हैं। उदाहरण के लिएः "एक्सचेंज एक्सेस मार्केट" मॉड्यूल "एक्सचेंजों को K-लाइन प्राप्त करें" मॉड्यूल ...

    ये सभी पहले से ही इस्तेमाल किए गए हैं, लेकिन इनका वर्णन नहीं किया गया है।

    • 1. एक्सचेंजों की संख्या प्राप्त करें

      img

      रोबोट ट्रेडिंग का उपयोग करके रणनीति लिखने में, एक से अधिक एक्सचेंज ऑब्जेक्ट जोड़े जा सकते हैं, जैसे कि हेजिंग की रणनीति। या फिर आपको एक्सचेंज के ऑब्जेक्ट्स पर एक बार जाने की आवश्यकता है, जब आप बाजार में जाते हैं। इस बिंदु पर, आपको एक्सचेंज नंबर प्राप्त करने के लिए मॉड्यूल का उपयोग करना होगा।

      हम पहले एक सरल संरचना का उपयोग करके वर्तमान में कॉन्फ़िगर किए गए एक्सचेंजों की संख्या प्रिंट कर सकते हैंःimg

      वास्तव में, यह जावास्क्रिप्ट नीति कोड को कॉल करने जैसा हैः

      function main () {
          Log(exchanges.length)
      }
      

      हम इस संयोजन मॉड्यूल को चलाने के परिणामों को देखते हैंःimg

      जैसा कि आप देख सकते हैं कि हमने 3 एक्सचेंज ऑब्जेक्ट्स जोड़े हैं, जो तीन अलग-अलग एक्सचेंज खातों का प्रतिनिधित्व करते हैं, और लॉग आउटपुट को 3 के रूप में पुनः परीक्षण करते हैं।

    • 2. एक्सचेंज का नाम प्राप्त करें

      img

      जब तीन एक्सचेंज ऑब्जेक्ट जोड़े जाते हैं, तो ड्रॉपडाउन बॉक्स तीन विकल्प दिखाता है। एक लूपिंग मॉड्यूल को पहले से सीखें, लूपिंग प्रकार में।img

      एक और मॉड्यूल जो हम पहले से सीखते हैं वह है:imgइस तरह के एक बयान में कहा गया है,img

      हम एक घुमावदार मॉड्यूल के माध्यम से जोड़े गए एक्सचेंज नामों का उपयोग करते हैं एक मॉड्यूल का उपयोग करके यह निर्धारित किया जाता है कि क्या वर्तमान चक्र की गिनती उस एक्सचेंज के नाम से मेल खाती है जिसे आप प्रिंट करना चाहते हैं।

      img

      रजिस्ट्रेशन के बादःimg

      उदाहरण के लिए, जावास्क्रिप्ट नीति कोडः

      function main () {
          for (var i = 1 ; i <= exchanges.length ; i++) {
              if (i == 1) {
                  Log(exchanges[0].GetName())
              } else if (i == 2) {
                  Log(exchanges[1].GetName())
              } else {
                  Log(exchanges[2].GetName())
              }
          }
      }
      
    • 3। एक्सचेंज के वर्तमान लेनदेन जोड़े का अधिग्रहण करें

      img

      एक सरल उदाहरण वर्तमान सेट के पहले एक्सचेंज ऑब्जेक्ट के लेनदेन जोड़े को प्राप्त करता है और text चर को मान देता है (विभिन्न श्रेणी में पहले से बनाया गया) ।

      imgपरीक्षण के परिणामःimg

      यदि आप जावास्क्रिप्ट नीति कोड को कॉल करते हैंः

      function main () {
          var text = exchange.GetCurrency()
          Log(text)
      }
      
    • 4. नीचे दिए गए मॉड्यूल

      imgयह मॉड्यूल बहुत महत्वपूर्ण है, ऑर्डर ऑपरेशन के लिए, पहला पिन (पिन) स्थान मूल्य चर को एम्बेड करता है, जो ऑर्डर मूल्य को निर्दिष्ट करने के लिए उपयोग किया जाता है, या सीधे एक निश्चित संख्या दर्ज कर सकता है। दूसरा () स्थान एक मात्रा चर के नीचे एम्बेडेड है, जिसका उपयोग मात्रा को निर्दिष्ट करने के लिए किया जाता है।

      उदाहरण के लिए, हम एक उदाहरण लिखते हैं कि वर्तमान टिकट लेन-देन डेटा के आधार पर नवीनतम मूल्य, 10 यूरो के साथ भुगतान किया गया है, और आदेश आईडी प्रिंट किया गया है।img

      रजिस्ट्रेशन के बादःimg

      उदाहरण के लिए, निम्नलिखित जावास्क्रिप्ट नीति कोडः

      function main () {
          var id = exchange.Buy(_C(exchange.GetTicker).Last + 10, 0.1)
          Log(id)
      }
      
    • 5. वर्तमान लेनदेन के लिए मॉड्यूल प्राप्त करें

      img

      यह मॉड्यूल उन सभी असाइनमेंट ऑर्डरों को वापस करता है जो वर्तमान लेन-देन के लिए अपूर्ण हैं, जो एक सूची संरचना (एरे) को वापस करते हैं जिसे सूची प्रकार के मॉड्यूल (सर्किट ऑपरेशन आदि) के साथ संसाधित किया जा सकता है। उदाहरण के लिए, हम ऊपर दिए गए पैटर्न को थोड़ा संशोधित करते हैं, आदेश देने के समय 10 डॉलर के मूल्य को घटाकर 10 डॉलर में बदल देते हैं। आदेश तुरंत समाप्त नहीं होता है, लेकिन खरीद और बिक्री की गहराई में लटका होता है (यानी, खरीदें, खरीदें, खरीदें, खरीदें) । फिर हम "ऑर्डर के लिए वर्तमान लेनदेन प्राप्त करें" मॉड्यूल का उपयोग करते हैं, जो PENDING स्थिति में ऑर्डर की सूची प्राप्त करता है। आदेशों के बाद के लेनदेन को प्रभावित करने से बचने के लिए, हम "वर्तमान लेनदेन को प्राप्त करें" मॉड्यूल को निष्पादित करने के बाद आदेशों की सूची प्रिंट करते हैं और तुरंत "असामान्यताओं को फेंकने" मॉड्यूल का उपयोग करके प्रक्रिया को रोकते हैं।

      img

      इस तरह की एक तस्वीर सामने आई।img

      इस मामले में, यह स्पष्ट है कि इस तरह के एक छोटे से लेनदेन के लिए, यह केवल एक बार होगा जब आप एक नए लेनदेन के लिए भुगतान करेंगे। इसके बाद वे ऑर्डर प्राप्त करते हैं जो लेनदेन के लिए प्रतीक्षा कर रहे हैं और उन्हें प्रिंट करते हैं। अंत में, एक असामान्यता छोड़ दें और कार्यक्रम को रोक दें।

      यह पूरी तरह से एक साथ रखा गया मॉड्यूल है जो जावास्क्रिप्ट नीति को कॉल करता हैः

      function main () {
          var id = exchange.Buy(_C(exchange.GetTicker).Last - 10, 0.1)
          Log(id)
          Log(exchange.GetOrders())
          throw "stop"
      }
      
    • 6. ऑर्डर मॉड्यूल को रद्द करें

      img

      इस मॉड्यूल का उपयोग ऑर्डर रद्द करने के लिए किया जाता है।

      कई परिदृश्यों में रणनीति बनाने के लिए इस तरह के संचालन की आवश्यकता होती हैः

      इस तरह से, हम अपने ग्राहकों के लिए एक नया विकल्प चुनते हैं।

      यह निश्चित रूप से "वसूली मॉड्यूल" का उपयोग करता है, और जब हम वसूली मॉड्यूल सीखते हैं, तो हम वर्तमान लेनदेन के लिए ऑर्डर प्राप्त करने के लिए टायर 5 टायर का उपयोग कर सकते हैं।

      सबसे पहले, सभी आदेशों को रद्द करने के लिए परीक्षण करने के लिए, एक आदेश को लटका देना स्पष्ट नहीं है, हम दो बार आदेश देना शुरू करते हैं, दोनों आदेशों को अलग करने के लिए कीमतों की संख्या अलग होती है।

      img

      वर्तमान लंबित सूची में आदेशों को देखने के लिए "लिस्ट में प्रत्येक तत्व पर जाएं" मॉड्यूल का उपयोग करें।imgजब क्रॉस किया जाता है, तो प्रत्येक निकाले गए ऑर्डर को चर मॉड्यूल order ((में बनाया जाता है, जैसा कि चित्र में दिखाया गया है) के लिए असाइन किया जाता है।imgउपकरण प्रकार मॉड्यूल का उपयोग करकेःimgऑर्डर आईडी निकालें, इसे रद्द करने के लिए ऑर्डर मॉड्यूल पर भेजें और रद्द करने के लिए ऑर्डर मॉड्यूल को निष्पादित करें।

      पुनः परीक्षण चल रहा हैःimg

      जावास्क्रिप्ट नीति का उपयोग करके वर्णन करेंः

      function main () {
          var id = exchange.Buy(_C(exchange.GetTicker).Last - 10, 0.1)
          Log(id)
          var id2 = exchange.Buy(_C(exchange.GetTicker).Last - 12, 0.2)
          Log(id2)
          var orders = exchange.GetOrders()
          Log(orders)
          for (var i in orders) {
              var order = orders[i]
              Log(exchange.CancelOrder(order.Id))
          }
      }
      
    • 7. आदेश आईडी के आधार पर एक आदेश के बारे में विस्तृत जानकारी प्राप्त करने के लिए मॉड्यूल

      img

      इस मॉड्यूल का स्थान एक ऑर्डर आईडी चर मॉड्यूल तक पहुंचता है, जो ऑर्डर विवरण वापस कर सकता है।

      img

      यहां देखें कि कौन से ऑर्डर वापस आ गएःimg

      और 5 टन के उदाहरण में चलने वाले परिणामों का तुलना करके यह पाया जा सकता है कि प्रिंट किए गए ऑर्डर एक अलग ऑर्डर सूचना है, जिसमें कोई भी नहीं है[]मध्य कोष्ठक में पैकेज। चूंकि उदाहरण में कंक्रीट 5 कंक्रीट में सूची लौटाता है, इसलिए यह उदाहरण एक अलग आदेश सूचना लौटाता है ((मॉड्यूल द्वारा भेजे गए कंक्रीट के स्थान पर आईडी चर के आधार पर मॉड्यूल प्राप्त करना) ।)

      उपरोक्त उदाहरण जावास्क्रिप्ट नीति को निष्पादित करने के समान हैंः

      function main () {
          var id = exchange.Buy(_C(exchange.GetTicker).Last - 10, 0.1)
          Log(exchange.GetOrder(id))
      }
      
    • 8। वायदा व्यापार मॉड्यूल

      उपरोक्त मॉड्यूल में हम एक-एक करके सीखते हैं, एक्सचेंजों का परीक्षण करते हैं जिन्हें हम कमोडिटी फ्यूचर्स के रूप में सेट करते हैं।

      रीसेट सेटिंग्सःimgनिम्नलिखित उदाहरणों में, इस सेटिंग के अनुसार पुनः परीक्षण किया जाता है।

      • सीटीपी कमोडिटी फ्यूचर्स और फ्यूचर्स कंपनी सर्वर कनेक्टिविटी स्टेटस मॉड्यूल का निर्धारण करें

        img

        कमोडिटी फ्यूचर्स के बाजार में खुलने का समय बंद होने का समय होता है, और बंद होने पर, कनेक्शन नहीं हो सकता है।

      • अनुबंध मॉड्यूल सेट करें

        img

        जब एक्सचेंज के ऑब्जेक्ट को वायदा एक्सचेंज के रूप में कॉन्फ़िगर किया जाता है, तो अनुबंध सेट नहीं किया जाता है, सीधे बाजार तक पहुंच जाता है, तो त्रुटि दर्ज की जाती हैःimg

        हम MA909 के लिए एक अनुबंध स्थापित करते हैं, मेथॉल वर्तमान में मुख्य अनुबंध है।imgइस प्रकार MA909 अनुबंध के लिए वर्तमान टिक मूल्य का नवीनतम मूल्य प्राप्त होता है।

      • फ्यूचर्स ट्रेडिंग के लिए एकतरफा मॉड्यूल सेट करें

        निष्पादित करने के लिए उपशीर्षकimg
        एक ही दिशा निर्दिष्ट करने की आवश्यकता है, क्योंकि वायदा हैः खरीदेंः अधिक शेयर sell: खाली भंडारण closebuy: एक ही स्थान पर closesell: रिक्त भंडारण चार दिशाएँ (कमोडिटी वायदा दो और दिशाएँः closebuy_today, closeesell_today, और closebuy_today) ।

        उदाहरण के लिए, यदि आप एक मॉड्यूल को खरीदने के लिए सेट करते हैं, तो आप दो अर्थों के साथ एक बहु-स्थान और एक खाली स्थान बनाते हैं, जिससे द्विआधारीकरण होता है। इसलिए, एक स्पष्ट दिशा निर्धारित करने के लिए "फ्यूचर्स ट्रेडिंग के नीचे एक दिशा निर्धारित करें" मॉड्यूल की आवश्यकता होती है।

        img

        एक बार फिर से जांच में पाया गयाःimg

        उदाहरण के लिए, जावास्क्रिप्ट नीति कोडः

        function main () {
            while (true) {
                if (exchange.IO("status")) {
                    exchange.SetContractType("MA909")
                    Log(exchange.GetTicker().Last)
                    exchange.SetDirection("buy")
                    Log(exchange.Buy(1000, 1))
                    throw "stop"
                } else {
                    Log("未连接商品期货前置机")
                }
                Sleep(1000)
            }
        }
        
    • 9. डिजिटल मुद्रा वायदा व्यापार मॉड्यूल

      डिजिटल मुद्राओं के लिए वायदा का उपयोग मूल रूप से समान है जैसा कि ऊपर दिए गए 8 में है।

      • अनुबंध कोड OKEX के उदाहरण के रूप में हो सकता हैः

        • this_week: उस सप्ताह
        • next_week: अगले सप्ताह
        • quarter: तिमाही
        • swap: स्थायी
      • बिटकॉइनः

        • XBTUSD
        • ETHUSD
      • लीवर मॉड्यूल सेट करें

        img

        डिजिटल मुद्राओं के लिए वायदा लाभ उठाने के लिए प्रयोग किया जाता है।

        # 注意 : 回测不支持。
        

        उदाहरण के लिए, जावास्क्रिप्ट नीतिः

        function main () {
            exchange.SetMarginLevel(10)
        }
        

विज़ुअलाइज़ेशन पैटर्न रणनीतियाँः

अधिक रणनीतियों के लिएःhttps://www.fmz.com/square

इस श्रृंखला के अन्य लेख

यह बहुत ही मजेदार है, और यह बहुत ही सरल है, लेकिन यह बहुत आसान है, और यह बहुत आसान है।


संबंधित

अधिक

अलिनएक महीने से अधिक समय तक प्रोग्रामिंग करने के बाद, मैं अभी भी रणनीति नहीं लिख सकता, और अब यह सभी ब्लॉक पर निर्भर है!

छोटे सपनेइस लेख की श्रृंखला को जारी रखने के लिए धन्यवाद। वास्तव में, प्रत्येक उदाहरण के पीछे संबंधित जावास्क्रिप्ट नीति कोड के आधार पर, जेएस में नीति लिखने में आसानी होती है।