यह रणनीति स्वर्ण क्रॉसओवर पर खरीदने और मृत्यु क्रॉसओवर पर बेचने की ट्रेडिंग रणनीति को लागू करने के लिए एक कस्टम शुद्ध मात्रा संकेतक की गणना करती है। यह रणनीति प्रवृत्ति के बाद की रणनीति से संबंधित है।
रणनीति का मुख्य तर्क एक कस्टम शुद्ध मात्रा (एनवी) संकेतक की गणना करना है। एनवी संकेतक मूल्य परिवर्तन की दिशा का न्याय करता है। यदि सकारात्मक है, तो यह दैनिक मात्रा लेता है। यदि नकारात्मक है, तो यह दैनिक मात्रा का नकारात्मक मूल्य लेता है। यदि अपरिवर्तित है, तो यह 0 लेता है। यह मूल्य परिवर्तन और मात्रा के बीच संबंध को अधिक स्पष्ट रूप से दर्शा सकता है।
रणनीति फिर क्रमशः एनवी संकेतक की 3 दिन की सरल चलती औसत रेखा की गणना सुनहरी क्रॉस लाइन और मृत्यु क्रॉस लाइन के रूप में करती है। जब एनवी संकेतक नीचे से ऊपर तक सुनहरी क्रॉस लाइन को तोड़ता है, तो लंबा हो जाता है। जब एनवी ऊपर से नीचे तक मृत्यु क्रॉस लाइन को तोड़ता है, तो छोटा हो जाता है।
इसके अतिरिक्त, रणनीति व्यापार घंटों को नियंत्रित करने के लिए पैरामीटरित प्रारंभ और समाप्ति समय भी निर्धारित करती है।
इस रणनीति का सबसे बड़ा लाभ यह है कि यह रणनीति सरल और स्पष्ट, समझने में आसान, लचीली पैरामीटर सेटिंग्स, अनुकूलन योग्य ट्रेडिंग किस्मों, ट्रेडिंग घंटों, आदि है। इसके अलावा, यह रणनीति एक प्रवृत्ति-अनुसरण रणनीति से संबंधित है जो प्रभावी रूप से मूल्य रुझानों को पकड़ सकती है, व्यापार आवृत्ति को कम कर सकती है, और उच्च रिटर्न प्राप्त कर सकती है।
इस रणनीति के मुख्य जोखिम निम्नलिखित हैंः
दैनिक अनुसरण रणनीति कीमतों के रुझानों में परिवर्तनों का तुरंत जवाब नहीं दे सकती है। यह कुछ व्यापारिक अवसरों को याद कर सकती है या समय पर नुकसान को रोकने में विफल हो सकती है।
मात्रात्मक स्वर्ण क्रॉस में ही एक निश्चित हिस्टेरिसिस होता है, जिससे देर से प्रवेश और बढ़े हुए नुकसान हो सकते हैं।
बाजार के शोर को प्रभावी ढंग से फ़िल्टर करने में असमर्थ और जाल के प्रति संवेदनशील।
जोखिम को कम करने के लिए अन्य संकेतकों के साथ गतिशील औसत का उपयोग किया जा सकता है।
इस रणनीति को निम्नलिखित पहलुओं में अनुकूलित किया जा सकता हैः
एकल हानि को नियंत्रित करने के लिए स्टॉप लॉस रणनीतियों को बढ़ाना, चलती स्टॉप लॉस, ओवरनाइट स्टॉप लॉस विधियों के साथ।
फ़िल्टरिंग संकेतकों को बढ़ाएं और गलत संकेतों को फ़िल्टर करने और रणनीति की स्थिरता में सुधार के लिए MACD, KDJ और अन्य संकेतकों का उपयोग करें।
पैरामीटर अनुकूलन, आनुवंशिक एल्गोरिदम, मार्कोव श्रृंखला और अन्य विधियों के माध्यम से इष्टतम पैरामीटर संयोजन के लिए पुनरावर्ती खोज।
रणनीतिक पोर्टफोलियो को जोखिमों में और विविधता लाने और समग्र प्रतिफल बढ़ाने के लिए अन्य असंबंधित रणनीतियों के साथ जोड़ा जा सकता है।
यह रणनीति मात्रात्मक स्वर्ण क्रॉस के माध्यम से सरल और प्रभावी प्रवृत्ति को लागू करती है। हालांकि एक निश्चित डिग्री की हिस्टेरिसिस है, पैरामीटर सेटिंग्स लचीली और समझने में आसान हैं। यह शुरुआती लोगों के लिए अभ्यास करने के लिए उपयुक्त रणनीति है। निरंतर अनुकूलन के माध्यम से, रणनीति प्रभाव में धीरे-धीरे सुधार किया जा सकता है और जोखिम कम हो सकते हैं।
/*backtest start: 2023-11-14 00:00:00 end: 2023-11-15 03:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy(title="@DankCoins - Customized Net Volume") src = input(defval = close, title = "VA Source") nv = change(src) > 0 ? volume : change(src) < 0 ? -volume : 0*volume // Inputs // VHigh = input(defval = 50, title = "VHigh Amount") VLow = input(defval = -50, title = "VLow Amount") // === INPUT BACKTEST RANGE === FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) FromYear = input(defval = 2018, title = "From Year", minval = 2012) ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12) ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31) ToYear = input(defval = 9999, title = "To Year", minval = 2012) MAV1 = sma(volume, 3) MAV2 = -sma(volume, 3) enterShort = crossunder(nv, MAV1) exitShort = crossunder(nv, MAV2) enterLong = crossover(nv, MAV2) exitLong = crossover(nv, MAV1) // Time Function start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window window() => time >= start and time <= finish ? true : false // create function "within window of time" strategy.entry(id="Long Entry", long=true, when=enterLong and window()) strategy.entry(id="Short Entry", long=false, when=enterShort and window()) strategy.exit("Exit Long", from_entry = "Long Entry", when=exitLong and window()) strategy.exit("Exit Short", from_entry = "Short Entry", when=exitShort and window()) // Plot plot(nv, color=blue, title="NV") plot(VHigh, color=red) plot(VLow, color=red) plot(MAV1, color=green) plot(MAV2, color=green)