4
ध्यान केंद्रित करना
1271
समर्थक

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

में बनाया: 2019-07-17 10:22:20, को अपडेट: 2023-10-24 21:40:50
comments   3
hits   4351

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

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

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

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

पिछले अध्ययनों और परीक्षणों में, हम कई “लेनदेन श्रेणी” मॉड्यूल के संपर्क में आए हैं। उदाहरण के लिए: “एक्सचेंज कोट्स” मॉड्यूल “एक्सचेंज ऑबटेन के-लाइन” मॉड्यूल …

मैं उन चीजों के बारे में विस्तार से नहीं बताऊंगा जो पहले से इस्तेमाल हो चुकी हैं।

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

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

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

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

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

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

    आइये इस संयुक्त मॉड्यूल को चलाने के परिणामों पर नज़र डालें: ट्रेडिंग रणनीति बनाने के लिए विज़ुअलाइज़ेशन मॉड्यूल - उन्नत

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

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

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

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

    आइए पहले से सशर्त निर्णय मॉड्यूल सीखें: ट्रेडिंग रणनीति बनाने के लिए विज़ुअलाइज़ेशन मॉड्यूल - उन्नत निर्णय की स्थिति इस प्रकार लिखी जा सकती है: ट्रेडिंग रणनीति बनाने के लिए विज़ुअलाइज़ेशन मॉड्यूल - उन्नत

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

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

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

    जावास्क्रिप्ट रणनीति कोड की तरह:

    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. एक्सचेंज की वर्तमान ट्रेडिंग जोड़ी प्राप्त करें

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

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

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

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

    function main () {
        var text = exchange.GetCurrency()
        Log(text)
    }
    
  • 4. ऑर्डर मॉड्यूल

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

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

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

    निम्नलिखित जावास्क्रिप्ट नीति कोड की तरह:

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

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

    यह मॉड्यूल मौजूदा ट्रेडिंग जोड़ी के लिए सभी अधूरे ऑर्डर लौटाएगा। लौटाई गई संरचना एक सूची (सरणी) है, जिसे सूची प्रकार के मॉड्यूल (ट्रैवर्सल ऑपरेशन, आदि) द्वारा संसाधित किया जा सकता है। उदाहरण के लिए: हम ऊपर दिए गए ऑर्डर मॉड्यूल उदाहरण [4] को थोड़ा संशोधित करते हैं और ऑर्डर देते समय जोड़े गए 10 युआन मूल्य को 10 युआन के मूल्य घटाव में बदल देते हैं। आदेश का निष्पादन तुरंत नहीं किया जाएगा, बल्कि खरीद और बिक्री की गहराई में लंबित रहेगा (अर्थात, खरीद 1, खरीद 2 और खरीद एन के बीच एक निश्चित स्तर पर), ताकि आदेश निष्पादन के लिए प्रतीक्षारत एक लंबित आदेश में रहे। फिर हम लंबित स्थिति (निष्पादन की प्रतीक्षा में) में ऑर्डरों की सूची प्राप्त करने के लिए “वर्तमान ट्रेडिंग जोड़ी के सौंपे गए ऑर्डर प्राप्त करें” मॉड्यूल का उपयोग करते हैं। आगामी बाजार स्थितियों में आदेशों के निष्पादन से बचने और बैकटेस्ट के अंतिम अवलोकन को प्रभावित करने के लिए, “वर्तमान ट्रेडिंग जोड़ी के सौंपे गए आदेश प्राप्त करें” मॉड्यूल के निष्पादित होने और ऑर्डर सूची के प्रिंट आउट होने के बाद, हम तुरंत “अपवाद फेंको” का उपयोग करते हैं “ मॉड्यूल का उपयोग कर प्रोग्राम को रोक सकते हैं।

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

    बैकटेस्टिंग से पता चलता है: ट्रेडिंग रणनीति बनाने के लिए विज़ुअलाइज़ेशन मॉड्यूल - उन्नत

    खरीद आदेश मूल्य उस समय की नवीनतम कीमत से 10 युआन कम है, इसलिए लेनदेन तुरंत पूरा नहीं होगा। फिर उन आदेशों को प्राप्त करें जो निष्पादन के लिए प्रतीक्षारत हैं और उन्हें प्रिंट करें। अंत में, प्रोग्राम को रोकने के लिए एक अपवाद फेंका जाता है।

    संपूर्ण संयोजित मॉड्यूल एक जावास्क्रिप्ट रणनीति को कॉल करने जैसा है:

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

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

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

    ऐसे कई परिदृश्य हैं जहां नीतियां लिखते समय इसकी आवश्यकता होती है:

    वर्तमान में लंबित सभी ऑर्डर रद्द करें।

    निस्संदेह, इसके लिए “ऑर्डर कैंसलेशन मॉड्यूल” के उपयोग की आवश्यकता होगी। ऑर्डर कैंसलेशन मॉड्यूल सीखते समय, हम वर्तमान ट्रेडिंग जोड़ी के सौंपे गए ऑर्डर के लिए मॉड्यूल प्राप्त करने के लिए [5] का उपयोग कर सकते हैं और इस फ़ंक्शन को प्राप्त करने के लिए उन्हें संयोजित कर सकते हैं।

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

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

    वर्तमान लंबित ऑर्डर सूची में ऑर्डर को पार करने के लिए लूप प्रकार मॉड्यूल में “सूची में प्रत्येक तत्व को पार करें” मॉड्यूल का उपयोग करें। ट्रेडिंग रणनीति बनाने के लिए विज़ुअलाइज़ेशन मॉड्यूल - उन्नत ट्रैवर्सल के दौरान, प्रत्येक प्राप्त ऑर्डर को वेरिएबल मॉड्यूल ऑर्डर (वेरिएबल मॉड्यूल प्रकार में बनाया गया, जैसा कि नीचे दिखाया गया है:) को सौंपा जाता है। ट्रेडिंग रणनीति बनाने के लिए विज़ुअलाइज़ेशन मॉड्यूल - उन्नत उपकरण प्रकार मॉड्यूल का उपयोग करें: ट्रेडिंग रणनीति बनाने के लिए विज़ुअलाइज़ेशन मॉड्यूल - उन्नत ऑर्डर आईडी निकालें और इसे कैंसल ऑर्डर मॉड्यूल की टेनन (अवतल) स्थिति में पास करें, और कैंसल ऑर्डर मॉड्यूल कैंसल ऑर्डर को निष्पादित करता है।

    बैकटेस्ट रन: ट्रेडिंग रणनीति बनाने के लिए विज़ुअलाइज़ेशन मॉड्यूल - उन्नत

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

    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. ऑर्डर आईडी के आधार पर ऑर्डर की विस्तृत जानकारी प्राप्त करने के लिए एक मॉड्यूल

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

    यह मॉड्यूल ऑर्डर आईडी वेरिएबल मॉड्यूल को मोर्टिस और टेनन स्थिति से जोड़कर विस्तृत ऑर्डर जानकारी लौटा सकता है।

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

    चलाने के बाद लौटे आदेश पर ध्यान दें: ट्रेडिंग रणनीति बनाने के लिए विज़ुअलाइज़ेशन मॉड्यूल - उन्नत

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

    उपरोक्त उदाहरण जावास्क्रिप्ट नीति को निष्पादित करने के समतुल्य है:

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

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

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

    • सीटीपी कमोडिटी फ्यूचर्स और फ्यूचर्स कंपनी सर्वर के बीच कनेक्शन की स्थिति का आकलन करने के लिए मॉड्यूल

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

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

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

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

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

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

    • वायदा कारोबार आदेश दिशा मॉड्यूल सेट अप करें

    निष्पादन आदेश मॉड्यूल में ट्रेडिंग रणनीति बनाने के लिए विज़ुअलाइज़ेशन मॉड्यूल - उन्नत
    ऑर्डर दिशा को निर्दिष्ट करना आवश्यक है क्योंकि वायदा में: खरीदें: एक लंबी स्थिति खोलें बेचना : छोटी स्थिति खोलना क्लोजबाय : लंबी स्थिति को बंद करें क्लोजसेल : शॉर्ट पोजीशन बंद करना चार दिशाएं (कमोडिटी वायदा की दो और दिशाएं हैं: closebuy_today आज लॉन्ग पोजीशन बंद करता है, closesell_today आज शॉर्ट पोजीशन बंद करता है)।

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

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

    बैकटेस्टिंग से पता चलता है: ट्रेडिंग रणनीति बनाने के लिए विज़ुअलाइज़ेशन मॉड्यूल - उन्नत

    जावास्क्रिप्ट रणनीति कोड की तरह:

      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 : इस सप्ताह
      • अगला_सप्ताह : अगले सप्ताह
      • तिमाही : तिमाही
      • स्वैप : शाश्वत
    • BitMEX :

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

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

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

      # 注意 : 回测不支持。
    

    जावास्क्रिप्ट रणनीति के अनुसार:

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

विज़ुअलाइज़ेशन उदाहरण रणनीति:

अधिक रणनीतियाँ यहां उपलब्ध हैं: https://www.fmz.com/square

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

बिल्डिंग ब्लॉक्स का उपयोग करके बोरिंग प्रोग्रामिंग को आसानी से पूरा किया जा सकता है। इसे आज़माएँ, यह बहुत दिलचस्प है!