संसाधन लोड हो रहा है... लोड करना...

3.4 दृश्य प्रोग्रामिंग त्वरित प्रारंभ

लेखक:अच्छाई, बनाया गयाः 2019-04-23 15:00:14, अद्यतन किया गयाः 2019-04-27 11:54:05

सारांश

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

पूर्ण रणनीति

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

  • खुलने वाली लंबी स्थिति: यदि वर्तमान में कोई स्थिति नहीं है और समापन मूल्य 50 अवधि के चलती औसत से अधिक है।

  • खुलने वाली शॉर्ट पोजीशनः यदि वर्तमान में कोई पोजीशन नहीं है, और बंद होने की कीमत 50 अवधि के चलती औसत से कम है।

  • समापन लंबी स्थितिः यदि वर्तमान में लंबी स्थिति है, और समापन मूल्य 50 अवधि के चलती औसत से कम है।

  • बंद शॉर्ट पोजीशनः यदि वर्तमान में शॉर्ट पोजीशन रखी जाती है और बंद होने की कीमत 50 अवधि के चलती औसत से अधिक होती है।

यदि आप उपरोक्त रणनीति तर्क को दृश्य प्रोग्रामिंग में लिखते हैं, जैसा कि नीचे दिखाया गया हैः

img

जैसा कि ऊपर दिखाया गया है, पूरी डिजाइन प्रक्रिया हैः बाजार की किस्मों को निर्धारित करना, K-लाइन का एक सरणी प्राप्त करना, पिछले K-लाइन की 50-अवधि की औसत कीमत प्राप्त करना, पिछले K-लाइन की समापन मूल्य प्राप्त करना, होल्डिंग पदों का एक सरणी प्राप्त करना, होल्डिंग स्थिति की स्थिति निर्धारित करना, यह निर्णय लेना कि समापन मूल्य चलती औसत से अधिक या कम है, और अंत में, उद्घाटन या समापन स्थिति निष्पादित करना।

यहाँ आपको array की अवधारणा पर ध्यान देने की आवश्यकता है, जो हर प्रोग्रामिंग भाषा के लिए महत्वपूर्ण डेटा संरचनाओं में से एक है। एक सरणी एक कंटेनर की तरह है, जिसमें मानों की एक श्रृंखला होती है। उदाहरण के लिएः एपीआई को कॉल करें जो के-लाइन सरणी प्राप्त करता है, और परिणाम लौटाया जाता हैः

//This is a K-line array. There are 3 data in it: the data of the one before pervious K line, the data of the pervious K line, the data of the current K line, and assigned these values to the "arr" variable.

arr = [{"Time":1540137600000,"Open":4013,"High":4116,"Low":4013,"Close":4085,"Volume":4124040}, 
{"Time":1540224000000,"Open":4087,"High":4106,"Low":4068,"Close":4076,"Volume":3252216},
{Time":1540310400000,"Open":4064,"High":4123,"Low":4050,"Close":4120,"Volume":3642856}]

उपरोक्त कोड कुल तीन डेटा का एक K-लाइन सरणी है, इसमें 3 डेटा हैंः एक से पहले पारगम्य K रेखा का डेटा, पारगम्य K रेखा का डेटा, वर्तमान K रेखा का डेटा, और इन मानों को arr चर को सौंपा गया। यदि हम इस सरणी (वर्तमान K रेखा डेटा) का अंतिम मान प्राप्त करना चाहते हैं तो हम इसे इस तरह लिख सकते हैं (पंक्तियों 4 और 5 देखें):

//This is a K-line array. There are 3 data in it: the data of the one before pervious K line, the data of the pervious K line, the data of the current K line, and assigned these values to the "arr" variable.

arr = [{"Time":1540137600000,"Open":4013,"High":4116,"Low":4013,"Close":4085,"Volume":4124040}, 
{"Time":1540224000000,"Open":4087,"High":4106,"Low":4068,"Close":4076,"Volume":3252216},
{Time":1540310400000,"Open":4064,"High":4123,"Low":4050,"Close":4120,"Volume":3642856}]

k0_1 = arr[2]; // get the data of current k line, this is the first method
k0_2 = arr[arr.length - 1]; // get the data of current k line, this is the second method
k1 = arr[arr.length - 2]; // get the data of pervious k line

हमें दूसरी (पांचवीं पंक्ति) विधि का उपयोग करना चाहिए, क्योंकि वास्तविकता में सैकड़ों के-लाइन डेटा हैं, और नई के-लाइन लगातार बढ़ रही है। तो आपको पहले सरणी की लंबाई प्राप्त करनी चाहिए, arr.length का अर्थ है सरणी की लंबाई प्राप्त करना, और फिर घटाना 1, जो कि नवीनतम के-लाइन डेटा है। यदि आप पिछले के-लाइन के डेटा प्राप्त करना चाहते हैं, घटाना 2.

आप पा सकते हैं कि इन डेटा में {} अंग्रेजी नाम के साथ क्रमशः अर्थ के अनुरूप हैंः समय, उद्घाटन मूल्य, उच्चतम मूल्य, सबसे कम मूल्य, समापन मूल्य, व्यापार मात्रा। यदि आप पिछले K लाइन का समापन मूल्य प्राप्त करना चाहते हैं, तो . जोड़ें। फिर आवश्यक मान का पालन करें। नीचे दिए गए कोड में लाइनों 8 ~ 10 का संदर्भ लें।

//This is a K-line array. There are 3 data in it: the data of the one before pervious K line, the data of the pervious K line, the data of the current K line, and assigned these values to the "arr" variable.

arr = [{"Time":1540137600000,"Open":4013,"High":4116,"Low":4013,"Close":4085,"Volume":4124040}, 
{"Time":1540224000000,"Open":4087,"High":4106,"Low":4068,"Close":4076,"Volume":3252216},
{Time":1540310400000,"Open":4064,"High":4123,"Low":4050,"Close":4120,"Volume":3642856}]

k0_1 = arr[2]; // get the data of current k line, this is the first method
k0_2 = arr[arr.length - 1]; // get the data of current k line, this is the second method
k1 = arr[arr.length - 2]; // get the data of pervious k line

k1.Close; // get the pervious k line closing price
k2.Time; // get the pervious k line time
k1.Volume; // get the pervious k line trading volume

एक दृश्य प्रोग्रामिंग भाषा का उपयोग क्यों करें?

उपरोक्त अवधारणाओं के साथ, आइए एक आउटपुट hello, world प्रोग्राम लिखें जावा प्रोग्रामिंग भाषा के साथ, पारंपरिक प्रोग्रामिंग को महसूस करने के लिए, जैसा कि नीचे दिखाया गया हैः

public class HelloWorld {
    public static void main(string[] ages) {
        system.out.println("hello world!");
    }
}

आउटपुट सिर्फ एक hello world! स्ट्रिंग प्रोग्राम, कोड की पांच पंक्तियों की जरूरत है. मेरा मानना है कि ज्यादातर शुरुआती केवल कोष्ठक में अंग्रेजी शब्द "hello, दुनिया! " जानते हैं, और अन्य सिर्फ नरक के रूप में भ्रमित हैं. इसलिए, यह एक प्रारंभिक बिंदु के रूप में दृश्य प्रोग्रामिंग का उपयोग करने के लिए बेहतर है.

विजुअल प्रोग्रामिंग क्या है?

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

img

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

विजुअल प्रोग्रामिंग भाषाओं की विशेषताएं क्या हैं?

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

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

img

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

हालांकि वाक्यविन्यास सरल है और प्रदर्शन नहीं खोता है। यह लगभग सभी सरल मात्रात्मक व्यापार रणनीति विकास को संतुष्ट कर सकता है। कोई फर्क नहीं पड़ता कि कार्य या गति में, यह नियमित प्रोग्रामिंग भाषाओं जैसे पायथन और जावास्क्रिप्ट के रूप में अच्छा है। भविष्य में, यह तार्किक रूप से जटिल वित्तीय अनुप्रयोगों का समर्थन करेगा।

उपयोग कैसे करें

img img

एक नमस्कार लिखें, विश्व कार्यक्रम

img img

दौड़ो, प्रिंट "हैलो, दुनिया"

img

संक्षेप में

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

अगला अनुभाग सूचना

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

स्कूल के बाद व्यायाम

  1. FMZ क्वांट प्लेटफॉर्म पर दृश्य प्रोग्रामिंग इंटरफ़ेस, एपीआई का उपयोग करें और समझें कि उनका क्या मतलब है।

  2. विजुअल प्रोग्रामिंग भाषा द्वारा नवीनतम उद्घाटन मूल्य प्राप्त करें और लॉग में इसे आउटपुट करें.


अधिक