मूविंग एवरेज पर आधारित बैंकनिफ्टी फ्यूचर्स ट्रेडिंग रणनीति


निर्माण तिथि: 2024-03-28 18:15:32 अंत में संशोधित करें: 2024-03-28 18:15:32
कॉपी: 0 क्लिक्स: 605
1
ध्यान केंद्रित करना
1617
समर्थक

मूविंग एवरेज पर आधारित बैंकनिफ्टी फ्यूचर्स ट्रेडिंग रणनीति

अवलोकन

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

रणनीति सिद्धांत

इस रणनीति का मूल एसएमए को एक प्रवृत्ति सूचक के रूप में उपयोग करना है। विशेष रूप से, रणनीति पहले एक निर्दिष्ट अवधि के एसएमए की गणना करती है (डिफ़ॉल्ट 200) और फिर एसएमए के सापेक्ष स्थान के आधार पर प्रवृत्ति की दिशा का न्याय करती है। जब कीमत एसएमए से ऊपर जाती है, तो यह माना जाता है कि एक ऊंची प्रवृत्ति बनाई गई है, इस समय अधिक करें; जब कीमत एसएमए से नीचे जाती है, तो यह माना जाता है कि एक गिरावट की प्रवृत्ति बनाई गई है, इस समय खाली करें। इसके अलावा, रणनीति ने जोखिम को नियंत्रित करने और मुनाफे को लॉक करने के लिए स्टॉप-लॉस और स्टॉप-लॉस शर्तें भी निर्धारित की हैं। स्टॉप-लॉस शर्तों में शामिल हैंः कीमत एसएमए की एक निश्चित सीमा को तोड़ती है (स्टॉप लॉस बफर पैरामीटर द्वारा सेट), कीमत एक निश्चित सीमा को तोड़ती है (स्टॉप लॉस पैरामीटर द्वारा सेट), और व्यापार का समय 15:00 तक समाप्त होता है (स्टॉप-लॉस पैरामीटर द्वारा सेट) ।

रणनीतिक लाभ

  1. सरल और समझने में आसानः यह रणनीति SMA नामक एक क्लासिक तकनीकी सूचक पर आधारित है, जिसका सिद्धांत सरल है और इसे समझना और लागू करना आसान है।
  2. अनुकूलनशीलता: यह रणनीति विभिन्न बाजार स्थितियों और ट्रेडिंग किस्मों के लिए पैरामीटर को समायोजित करके अनुकूलित की जा सकती है।
  3. जोखिम नियंत्रणः इस रणनीति में संभावित नुकसान को प्रभावी ढंग से नियंत्रित करने के लिए कई स्टॉप-लॉस स्थितियां निर्धारित की गई हैं। साथ ही, स्टॉप-लॉस स्थितियों की स्थापना समय पर मुनाफे को लॉक करने में मदद करती है।
  4. रुझान ट्रैकिंग: एसएमए एक पिछड़ा सूचक है, लेकिन इस कारण से, यह अच्छी तरह से प्रवृत्ति के गठन की पुष्टि कर सकता है। यह रणनीति एसएमए की इस विशेषता का उपयोग करती है, जो बाजार के मध्यम और दीर्घकालिक रुझानों को प्रभावी ढंग से पकड़ने में सक्षम है।

रणनीतिक जोखिम

  1. पैरामीटर संवेदनशीलः इस रणनीति का प्रदर्शन काफी हद तक पैरामीटर के चयन पर निर्भर करता है, विभिन्न पैरामीटर सेटिंग्स के परिणामस्वरूप बहुत अलग परिणाम हो सकते हैं। इसलिए, वास्तविक अनुप्रयोगों में पैरामीटर को अनुकूलित और परीक्षण करने की आवश्यकता होती है।
  2. अस्थिर बाजारः अस्थिर बाजार में, कीमतें अक्सर जमीन से नीचे एसएमए को पार करती हैं, जिससे यह रणनीति अक्सर व्यापार करने के लिए प्रेरित हो सकती है, जिससे लेनदेन की लागत और जोखिम बढ़ जाता है।
  3. रुझान उलटाः जब बाजार में रुझान उलटा होता है, तो रणनीति संभावित नुकसान के साथ प्रतिक्रिया में देरी कर सकती है।
  4. स्टॉक में उतार-चढ़ावः यह रणनीति स्टॉक में किसी भी समय ट्रेडिंग सिग्नल को ट्रिगर कर सकती है, जबकि बैंकनिफ्टी फ्यूचर्स में स्टॉक में अधिक उतार-चढ़ाव हो सकता है, जिससे बड़ी स्लाइड और संभावित नुकसान हो सकता है।

रणनीति अनुकूलन दिशा

  1. पैरामीटर अनुकूलन: विभिन्न पैरामीटर संयोजनों पर प्रतिक्रिया और अनुकूलन करके, वर्तमान बाजार की स्थिति के लिए सबसे उपयुक्त पैरामीटर सेटिंग्स का पता लगाया जा सकता है।
  2. अन्य संकेतकों के साथ संयोजनः एसएमए को अन्य तकनीकी संकेतकों (जैसे आरएसआई, एमएसीडी आदि) के साथ संयोजन करने पर विचार किया जा सकता है ताकि रणनीति की विश्वसनीयता और सटीकता में सुधार हो सके।
  3. गतिशील स्टॉप लॉसः जोखिम को बेहतर ढंग से नियंत्रित करने के लिए गतिशील स्टॉप लॉस रणनीति (जैसे स्टॉप लॉस को ट्रैक करना) को अपनाने पर विचार किया जा सकता है।
  4. ट्रेडिंग समय को सीमित करेंः ट्रेडिंग समय को कम उतार-चढ़ाव वाली अवधि तक सीमित करने पर विचार किया जा सकता है (जैसे कि ओपनिंग और ओपनिंग के बाद) ताकि स्टॉक में उतार-चढ़ाव का प्रभाव कम हो सके।

संक्षेप

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

रणनीति स्रोत कोड
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Bhasker_S

//@version=5
strategy("Strategy BankNifty SMA", overlay=true, margin_long=100, margin_short=100)

src = input(close, title="Source")
timeFrame = input.timeframe(defval='5', title = "Select Chart Timeframe")
typeMA = input.string(title = "Method", defval = "SMA", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
len = input.int(200, minval=1, title="Length", step = 10)
alertPrecision = input.float(0, "Alert Precision", minval = 0, maxval = 50, step=1)
slTimeFrame = input.timeframe(defval='1', title = "Select Stoploss Candle Timeframe")
slBuffer = input.float(0, "Stop Loss Buffer", minval = 0, maxval = 50, step = 1)
targetSlab = input.float(150, "Target Price", minval = 1, maxval = 2000, step = 10)
Stoploss  = input.float(20, "Stop Loss", minval = 1, maxval = 2000, step = 5)
offset = input.int(title="Offset", defval=0, minval=-500, maxval=500)

//out = ta.sma(src, len)


ma(source, length, type) =>
    switch type
        "SMA" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        "SMMA (RMA)" => ta.rma(source, length)
        "WMA" => ta.wma(source, length)
        "VWMA" => ta.vwma(source, length)

tfSource = request.security(syminfo.tickerid, timeFrame, src, barmerge.gaps_on, barmerge.lookahead_off)
mySMA = ma(tfSource, len, typeMA)
plot(mySMA, color=color.rgb(243, 33, 89), title="MA", offset=offset, linewidth = 2)

slClose = request.security(syminfo.tickerid, slTimeFrame, src, barmerge.gaps_on, barmerge.lookahead_off)


highTravel = low > mySMA
lowTravel = high < mySMA

touchabove = (((high[1] + alertPrecision) > mySMA[1]) and (low[1] < mySMA[1])) //and (high[2] < mySMA[2])
touchbelow = (((low[1] - alertPrecision) < mySMA[1]) and (high[1] > mySMA[1])) //and (low[2] > mySMA[2])

crossabove = math.min(open, close) > mySMA
crossbelow = math.max(open, close) < mySMA

upalert = (touchabove or touchbelow) and crossabove
downalert = (touchabove or touchbelow) and crossbelow

h=hour(time('1'),"Asia/Kolkata")
m=minute(time('1'),"Asia/Kolkata")
startTime=h*100+m

if upalert and strategy.position_size == 0 
    strategy.entry("buy", strategy.long, 15)
    
if downalert and strategy.position_size == 0
    strategy.entry("sell", strategy.short, 15)

longexit = (slClose < (mySMA - slBuffer)) or (slClose < (strategy.opentrades.entry_price(strategy.opentrades - 1) - Stoploss)) or (slClose > (strategy.opentrades.entry_price(strategy.opentrades - 1) + targetSlab)) or (hour(time) == 15)
shortexit = (slClose > (mySMA + slBuffer)) or (slClose > (strategy.opentrades.entry_price(strategy.opentrades - 1) + Stoploss)) or (slClose < (strategy.opentrades.entry_price(strategy.opentrades - 1) - targetSlab)) or (hour(time) == 15)

if longexit
    strategy.close("buy")

if shortexit
    strategy.close("sell")