यह रणनीति विभिन्न मापदंडों के साथ जेएमए मूविंग एवरेज के कई सेटों के माध्यम से बाजार की प्रवृत्ति का न्याय करके ग्रिड ट्रेडिंग सिस्टम बनाने के लिए मूविंग एवरेज सिद्धांत का उपयोग करती है। इसका उद्देश्य बाजार में दीर्घकालिक प्रवृत्ति उलट के दौरान लाभ प्राप्त करना है।
बाजार की प्रवृत्ति निर्धारित करने के लिए 1-20 अवधि के जेएमए चलती औसत का संयोजन प्रयोग करें। जब अल्पकालिक एमए लंबी अवधि के एमए से ऊपर होता है, तो इसे ऊपर की प्रवृत्ति के रूप में और इसके विपरीत नीचे की प्रवृत्ति के रूप में माना जाता है।
ग्रिड ट्रेडों को ट्रेंड रिवर्स प्वाइंट पर खोलें, जब शॉर्ट एमए लंबी एमए से नीचे या ऊपर पार हो जाए। अपट्रेंड के दौरान धीरे-धीरे शॉर्ट पोजीशन और डाउनट्रेंड के दौरान लंबी पोजीशन स्थापित करें।
मोमबत्ती के रंग के आधार पर फ़िल्टर करने का विकल्प - केवल लाल मोमबत्तियों पर खरीदें और हरे मोमबत्तियों पर बेचें, अन्यथा रंग को अनदेखा करें और केवल रुझान उलटने पर व्यापार करें।
बाहर निकलना या तो स्टॉप लॉस या समय आधारित बाहर निकलना है जब रणनीति अवधि समाप्त होती है।
रुझानों को निर्धारित करने के लिए एमए प्रणाली का उपयोग करने से दीर्घकालिक रुझानों के उलटों की प्रभावी ढंग से पहचान की जा सकती है।
ग्रिड ट्रेडिंग स्पष्ट रुझानों के बिना रेंज-बाउंड बाजारों से लाभ प्राप्त कर सकती है, जोखिमों को नियंत्रित करने के लिए स्टॉप लॉस के साथ।
अनुकूलन योग्य जेएमए पैरामीटर, विभिन्न अवधियों के लिए अनुकूलित कर सकते हैं, उच्च लचीलापन।
मोमबत्ती फ़िल्टर झूठे पलायनों से गुमराह होने से बचाता है।
स्पष्ट रुझानों के बिना उच्च चाबुक वाले बाजारों में स्टॉप लॉस का जोखिम अधिक होता है।
एम.ए. प्रणाली से निर्णय की त्रुटियों से गलत व्यापार संकेत हो सकते हैं।
मोमबत्ती फिल्टर कुछ व्यापारिक अवसरों को खोने का जोखिम उठाता है।
यदि ग्रिड की दूरी बहुत व्यापक है, तो पर्याप्त लाभ नहीं है; बहुत संकीर्ण होने से बहुत अधिक पद और उच्च लागत हो सकती है।
विभिन्न उत्पादों के लिए इष्टतम जेएमए एमए संयोजन खोजने के लिए अधिक पैरामीटर संयोजनों का परीक्षण करें।
सिग्नल की गुणवत्ता में सुधार के लिए अन्य फ़िल्टर जैसे BOLL बैंड, KD आदि को शामिल करें।
ग्रिड कॉन्फ़िगरेशन जैसे ग्रिड स्पेसिंग, एंट्री लॉट आदि का अनुकूलन करें।
अधिक स्टॉप लॉस विधियों जैसे गैप आधारित, ट्रेलिंग स्टॉप आदि पर विचार करें।
यह रणनीति जेएमए सिद्धांत का उपयोग करके उलटफेर का न्याय करती है और लंबी अवधि के रुझान शिफ्ट से लाभ कमाने के लिए मोड़ बिंदुओं पर ग्रिड ट्रेड खोलती है। पैरामीटर अनुकूलन के माध्यम से प्रदर्शन में और सुधार किया जा सकता है। कुल मिलाकर यह मध्यम-लंबी अवधि की होल्डिंग्स के लिए धीरे-धीरे ट्रेंड मूवमेंट से ट्रैक और लाभ के लिए उपयुक्त है।
/*backtest start: 2022-12-27 00:00:00 end: 2024-01-02 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //Noro //2019 //@version=3 strategy(title = "Noro's Fishnet Strategy", shorttitle = "Fishnet str", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot") usecf = input(false, defval = false, title = "Use Color-filter") fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year") toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year") frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month") tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month") fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day") today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day") //JMA jmax(src, len) => beta = 0.45*(len-1)/(0.45*(len-1)+2) alpha = pow(beta, 3) L0=0.0, L1=0.0, L2=0.0, L3=0.0, L4=0.0 L0 := (1-alpha)*src + alpha*nz(L0[1]) L1 := (src - L0[0])*(1-beta) + beta*nz(L1[1]) L2 := L0[0] + L1[0] L3 := (L2[0] - nz(L4[1]))*((1-alpha)*(1-alpha)) + (alpha*alpha)*nz(L3[1]) L4 := nz(L4[1]) + L3[0] L4 ma01 = jmax(close, 10) ma02 = jmax(close, 20) ma03 = jmax(close, 30) ma04 = jmax(close, 40) ma05 = jmax(close, 50) ma06 = jmax(close, 60) ma07 = jmax(close, 70) ma08 = jmax(close, 80) ma09 = jmax(close, 90) ma10 = jmax(close, 100) ma11 = jmax(close, 110) ma12 = jmax(close, 120) ma13 = jmax(close, 130) ma14 = jmax(close, 140) ma15 = jmax(close, 150) ma16 = jmax(close, 160) ma17 = jmax(close, 170) ma18 = jmax(close, 180) ma19 = jmax(close, 190) ma20 = jmax(close, 200) trend = 0 trend := ma01 > ma20 ? 1 : ma01 < ma20 ? -1 : trend[1] col = trend == 1 ? #00FF7F : #DC143C plot(ma01, transp = 0, color = col) plot(ma02, transp = 0, color = col) plot(ma03, transp = 0, color = col) plot(ma04, transp = 0, color = col) plot(ma05, transp = 0, color = col) plot(ma06, transp = 0, color = col) plot(ma07, transp = 0, color = col) plot(ma08, transp = 0, color = col) plot(ma09, transp = 0, color = col) plot(ma10, transp = 0, color = col) plot(ma11, transp = 0, color = col) plot(ma12, transp = 0, color = col) plot(ma13, transp = 0, color = col) plot(ma14, transp = 0, color = col) plot(ma15, transp = 0, color = col) plot(ma16, transp = 0, color = col) plot(ma17, transp = 0, color = col) plot(ma18, transp = 0, color = col) plot(ma19, transp = 0, color = col) plot(ma20, transp = 0, color = col) //Trading lot = 0.0 lot := strategy.equity / close * capital / 100 if trend == 1 and (close < open or usecf == false) strategy.entry("Long", strategy.long, needlong ? lot : na) if trend == -1 and (close > open or usecf == false) strategy.entry("Short", strategy.short, needshort ? lot : na)