यह रणनीति VIDYA (वैरिएबल इंडेक्स डायनेमिक एवरेज) संकेतक पर आधारित एक ट्रेंड फॉलो ट्रेडिंग सिस्टम है। यह रणनीति चंदे के मोमेंटम ऑसिलेटर (CMO) और मानक विचलन (StDev) गणना विधियों को जोड़कर गतिशील रूप से वजन समायोजित करके बाजार की अस्थिरता के अनुकूल है। यह प्रणाली अधिक सटीक ट्रेंड पहचान और ट्रेडिंग सिग्नल पीढ़ी प्राप्त करने के लिए एक अनुकूलन तंत्र पेश करती है। यह प्रणाली पारंपरिक चलती औसत के ऊपर एक अनुकूलन तंत्र पेश करती है, जो बाजार की स्थिति के आधार पर संवेदनशीलता को स्वचालित रूप से समायोजित करती है।
इस रणनीति का मूल बिंदु VIDYA संकेतक है, जिसकी गणना प्रक्रिया में निम्नलिखित प्रमुख चरण शामिल हैंः
यह रणनीति उपयोगकर्ताओं को अस्थिरता गुणांक की गणना के लिए सीएमओ या मानक विचलन के बीच चयन करने की अनुमति देती है, जिससे लचीलापन बढ़ जाता है। सीएमओ मोड एक निश्चित 9-अवधि चक्र का उपयोग करता है, जबकि स्टडीव मोड आधार अवधि के साथ स्थिरता बनाए रखता है।
VIDYA रणनीति अभिनव अनुकूली वजन तंत्र के माध्यम से समाधान के बाद अपेक्षाकृत विश्वसनीय प्रवृत्ति प्रदान करती है। सरलता और उपयोग में आसानी बनाए रखते हुए, रणनीति गतिशील समायोजन के माध्यम से बाजार परिवर्तनों के लिए अनुकूलन क्षमता में सुधार करती है। हालांकि कुछ अंतर्निहित सीमाएं मौजूद हैं, प्रदान की गई अनुकूलन दिशाएं रणनीति स्थिरता और विश्वसनीयता को और बढ़ा सकती हैं। दोहरी गणना विधियां विभिन्न बाजार वातावरण में आवेदन के लिए अधिक लचीलापन प्रदान करती हैं।
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-04 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © GriffinJames //@version=5 strategy("VIDYA Strategy", overlay=true, initial_capital=25000) // Inputs src = input(close, title="Source") pds = input.int(21, title="Length") fixCMO = input.bool(true, title="Fixed CMO Length (9)?") select = input.bool(true, title="Calculation Method: CMO/StDev?") alpha = 2 / (pds + 1) momm = ta.change(src) // Functions to calculate MOM f1(m) => m >= 0.0 ? m : 0.0 f2(m) => m >= 0.0 ? 0.0 : -m m1 = f1(momm) m2 = f2(momm) sm1 = fixCMO ? math.sum(m1, 9) : math.sum(m1, pds) sm2 = fixCMO ? math.sum(m2, 9) : math.sum(m2, pds) percent(nom, div) => 100 * nom / div chandeMO = na(percent(sm1 - sm2, sm1 + sm2)) ? 0 : percent(sm1 - sm2, sm1 + sm2) // Select calculation method k = select ? math.abs(chandeMO) / 100 : ta.stdev(src, pds) // Calculate VIDYA var float VIDYA = na VIDYA := na(VIDYA[1]) ? src : alpha * k * src + (1 - alpha * k) * VIDYA[1] // Conditions for long and short col12 = VIDYA > VIDYA[1] col32 = VIDYA < VIDYA[1] // Plot VIDYA with dynamic colors color2 = col12 ? color.new(color.blue, 0) : col32 ? color.new(color.maroon, 0) : color.new(color.blue, 0) plot(VIDYA, "VAR", color=color2, linewidth=2) // Long and Short Strategy if (col12) strategy.entry("Go Long", strategy.long) if (col32) strategy.entry("Go Short", strategy.short) // Alert for VIDYA color change alertcondition(ta.cross(VIDYA, VIDYA[1]), title="Color ALARM!", message="VIDYA has changed color!")