यह रणनीति ट्रेंड को निर्धारित करने और ट्रैक करने के लिए एक ट्रेंड ट्रैकिंग इंडिकेटर के साथ संयुक्त दोहरी चलती औसत क्रॉसओवर सिद्धांत का उपयोग करती है। मुख्य विचार यह है कि जब छोटी अवधि चलती औसत लंबी अवधि चलती औसत से ऊपर जाती है और जब छोटी अवधि चलती औसत लंबी अवधि चलती औसत से नीचे जाती है तो लंबी अवधि चलती औसत से ऊपर जाती है। झूठे ब्रेकआउट से बचने के लिए समग्र प्रवृत्ति दिशा 100 दिनों के चलती औसत द्वारा भी निर्धारित की जाती है।
इस रणनीति में मुख्य रूप से एक दोहरी चलती औसत क्रॉसओवर प्रणाली और एक ट्रेंड ट्रैकिंग प्रणाली शामिल है।
दोहरी चलती औसत क्रॉसओवर प्रणाली में एक तेज ईएमए1 और धीमी ईएमए2 होती है। ईएमए1 के लिए डिफ़ॉल्ट अवधि 10 दिन और ईएमए2 के लिए 20 दिन होती है। जब ईएमए1 ईएमए2 से ऊपर पार हो जाता है तो एक खरीद संकेत उत्पन्न होता है। जब ईएमए1 ईएमए2 से नीचे पार हो जाता है तो एक बिक्री संकेत उत्पन्न होता है।
100 दिन की ईएमए (ईएमए100) को समग्र प्रवृत्ति दिशा निर्धारित करने के लिए जोड़ा जाता है। खरीद संकेत केवल तब उत्पन्न होते हैं जब कीमत ऊपर की ओर प्रवृत्ति में होती है (कीमत 100 दिन की ईएमए से ऊपर होती है) । बिक्री संकेत केवल तब उत्पन्न होते हैं जब कीमत नीचे की ओर प्रवृत्ति में होती है (कीमत 100 दिन की ईएमए से नीचे होती है) । यह अधिकांश झूठी ब्रेकआउट स्थितियों को फ़िल्टर करता है।
मोमबत्तियों पर खरीदारी और बिक्री के तीर भी दिखाए जाते हैं ताकि व्यापार संकेतों को दृश्य रूप से प्रदर्शित किया जा सके।
ट्रेंड ट्रैकिंग सिस्टम ट्रेंड की दिशा को फिर से पुष्टि करने के लिए इंट्राडे और साइकिल डे लाइनों का उपयोग करता है। इंट्राडे 5-मिनट और 60-मिनट हेकिन-अशी मूविंग एवरेज का उपयोग करता है जबकि साइकिल दैनिक लाइन के 8-दिवसीय और 12-दिवसीय मूविंग एवरेज का उपयोग करता है।
ट्रेडिंग सिग्नल केवल तभी उत्पन्न होते हैं जब इंट्राडे और साइकिल जजमेंट एक साथ आते हैं। इससे गैर-मुख्य ट्रेंड दिशाओं में अधिकांश शोर फ़िल्टर हो जाता है।
इस रणनीति का सबसे बड़ा लाभ ट्रेंड ट्रैकिंग और मूविंग एवरेज क्रॉसओवर दोनों प्रणालियों का एकीकरण है, जो प्रभावी रूप से झूठे संकेतों को फ़िल्टर करता है और स्वीकार्य स्तरों के भीतर ड्रॉडाउन रखता है।
विशेष रूप से दोहरी चलती औसत क्रॉसओवर प्रणाली के फायदे हैंः
सरल तर्क और समझने में आसान, शुरुआती के लिए उपयुक्त।
प्रवृत्ति का अनुसरण करना, प्रवृत्ति के विरुद्ध व्यापार करने से बचता है।
अनुकूलन योग्य तेज और धीमी ईएमए अवधि, विभिन्न चक्रों के अनुकूल।
प्रमुख रुझानों में मजबूत लाभप्रदता।
ईएमए100 जोड़ने के फायदे हैंः
रुझान के विरुद्ध व्यापार करने से बचें, घाटे को कम करें।
प्रवृत्ति का पालन करना, और उपयोग को नियंत्रित रखना।
प्रवृत्ति ट्रैकिंग प्रणाली के निम्नलिखित फायदे हैंः
एकाधिक समय सीमा विश्लेषण, एक ही अवधि से शोर से बचने के लिए।
मुख्य रुझान की दिशा के अनुरूपता सुनिश्चित करना, ड्रॉडाउन को कम करना।
हेकिन-अशी शोर को सुचारू करता है, केवल रुझानों को कैप्चर करता है।
इस रणनीति के लिए कुछ जोखिमों पर ध्यान देंः
लंबे समय तक समेकन के दौरान लगातार क्रॉसओवर और अतिरिक्त ट्रेडिंग लागतें।
विलंबित संकेत, शुरुआती प्रवृत्ति चरणों को याद करना।
जब प्रमुख रुझान उलट जाता है तो भारी नुकसान होता है।
प्रदर्शन पैरामीटर अनुकूलन पर निर्भर करता है।
समाधान:
समेकन के दौरान व्यापारिक आवृत्ति को कम करना।
शुरुआती रुझान संकेत प्राप्त करने के लिए ईएमए अवधि को छोटा करें।
एकल हानि को नियंत्रित करने के लिए स्टॉप लॉस का प्रयोग करें.
विभिन्न उत्पादों और बाजार स्थितियों के लिए मापदंडों का अनुकूलन करना।
इस रणनीति को निम्नलिखित क्षेत्रों में अनुकूलित किया जा सकता हैः
ईएमए अवधि अनुकूलन. इष्टतम अवधि खोजने के लिए अधिक संयोजनों का परीक्षण करें.
अधिक समय-सीमा निर्णय जोड़ें, जैसे मासिक या त्रैमासिक लाइनें।
स्टॉप लॉस तंत्र जैसे चलती या घातीय स्टॉप को शामिल करें।
वॉल्यूम संकेतकों के साथ संयोजन करें जैसे कि बैलेंस वॉल्यूम पर।
एमएसीडी जैसे तेज़ ऑसिलेटरों का उपयोग करके प्रवेश समय में सुधार करें।
अधिक उत्पादों और परिसंपत्तियों के लिए पैरामीटर अनुकूलन।
यह रणनीति दोहरी चलती औसत क्रॉसओवर और प्रवृत्ति ट्रैकिंग प्रणालियों की ताकतों को जोड़ती है, एकल प्रणालियों की कमजोरियों से बचती है। कई समय सीमा विश्लेषण सही व्यापार दिशा सुनिश्चित करता है जबकि ड्रॉडाउन नियंत्रण उत्कृष्ट है। आगे के अनुकूलन इसे व्यावहारिक उपयोग के लिए अधिक बाजार वातावरण में अनुकूलित कर सकते हैं।
/*backtest start: 2023-09-20 00:00:00 end: 2023-09-27 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © askkuldeeprandhawa //@version=4 strategy("KSR Strategy", overlay=true) par1=input(10) par2=input(20) ema1=ema(close,par1) ema2=ema(close,par2) buy=ema1>ema2 sell=ema2<ema1 mycolor= iff(buy,color.green,iff(sell,color.blue,color.red)) barcolor(color=mycolor) ema100=ema(close,100) ibuy=crossover(ema1,ema2) iSell=crossunder(ema1,ema2) varp=tostring(close[1]) plotshape(ibuy, "Up Arrow", shape.triangleup, location.belowbar, color.green, 0, 0,"Buy" , color.green, true, size.tiny) plotshape(iSell, "Down Arrow", shape.triangledown, location.abovebar, color.red, 0, 0, "Sell", color.red, true, size.tiny) crossed =crossover(ema(close,par1), ema(close,par2)) // if crossed // l = label.new(bar_index, na, tostring(close), // color=color.green, // textcolor=color.white, // style=label.style_labelup, yloc=yloc.belowbar) crossed2 =crossunder(ema(close,par1), ema(close,par2)) // if crossed2 // l = label.new(bar_index, na, tostring(close), // color=color.red, // textcolor=color.white, // style=label.style_labeldown, yloc=yloc.abovebar) plot(ema(close,par1),"EMA Short",color=color.white) plot(ema(close,par2),"EMA Long",color=color.orange) longCondition = crossover(ema(close, par1), ema(close, par2)) if (longCondition) strategy.entry("My Long Entry Id", strategy.long) shortCondition = crossunder(ema(close, par1), ema(close, par2)) if (shortCondition) strategy.entry("My Short Entry Id", strategy.short) ma1_len = input(title="MA1", type=input.integer, defval=8, minval=1, maxval=100, step=1) ma2_len = input(title="MA2", type=input.integer, defval=12, minval=1, maxval=100, step=1) o = ema(open, ma1_len) c = ema(close, ma1_len) h = ema(high, ma1_len) l = ema(low, ma1_len) tim1=input('D',"Short Time") tim2=input('W',"Long Time") ema_p=input(title="EMA Period", type=input.integer, defval=16, minval=1, maxval=100, step=1) refma = ema(close, ema_p) plot(refma, title="EMA" , linewidth=1, color=close < refma ? color.orange : color.blue) ha_t = heikinashi(syminfo.tickerid) ha_o = security(ha_t, tim2, o) ha_c = security(ha_t, tim2, c) ha_h = security(ha_t, tim2, h) ha_l = security(ha_t, tim2, l) o2 = ema(ha_o, ma2_len) c2 = ema(ha_c, ma2_len) h2 = ema(ha_h, ma2_len) l2 = ema(ha_l, ma2_len) ha_col = ha_c > ha_o ? color.red : color.green plotshape(true, style=shape.circle, color=ha_c > ha_o ? color.green : color.red, location=location.bottom) ha_t1 = heikinashi(syminfo.tickerid) ha_o1 = security(ha_t1, tim1, o) ha_c1 = security(ha_t1, tim1, c) ha_h1 = security(ha_t1, tim1, h) ha_l1 = security(ha_t1, tim1, l) o3 = ema(ha_o1, ma2_len) c3 = ema(ha_c1, ma2_len) h3 = ema(ha_h1, ma2_len) l3 = ema(ha_l1, ma2_len) ha_col1 = ha_c1 > ha_o1 ? color.red : color.green plotshape(true, style=shape.circle, color=ha_c1 > ha_o1 ? color.green : color.red, location=location.top)