सुपर ट्रेंड और एमएसीडी पर आधारित जोखिम नियंत्रण रणनीति


निर्माण तिथि: 2024-03-11 11:24:20 अंत में संशोधित करें: 2024-03-11 11:24:20
कॉपी: 0 क्लिक्स: 699
1
ध्यान केंद्रित करना
1617
समर्थक

सुपर ट्रेंड और एमएसीडी पर आधारित जोखिम नियंत्रण रणनीति

अवलोकन

यह रणनीति सुपरट्रेंड सूचक और MACD सूचक को जोड़ती है, जो छोटे रुझानों को पकड़कर मुनाफा कमाता है। रणनीति सुपरट्रेंड सूचक का उपयोग वर्तमान बाजार की प्रवृत्ति का न्याय करने के लिए करती है, जबकि MACD सूचक को प्रवेश और निकास के लिए सहायक शर्त के रूप में उपयोग करती है। रणनीति तर्क स्पष्ट, समझने में आसान और लागू करने योग्य है।

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

  1. सुपरट्रेंड सूचकांक की गणना करने के लिए ta.supertrend फ़ंक्शन का उपयोग करें, एटीआर चक्र और गुणांक कारक के साथ।
  2. सुपरट्रेंड सूचकांक की दिशा में परिवर्तन के आधार पर बहुआयामी प्रवृत्ति का न्याय करें, जब दिशा 0 से अधिक से 0 से कम हो जाती है, तो इसे ऊपर की ओर प्रवृत्ति के रूप में माना जाता है; इसके विपरीत, इसे नीचे की ओर प्रवृत्ति के रूप में माना जाता है।
  3. request.security फ़ंक्शन का उपयोग करके 30 मिनट की अवधि के लिए MACD सूचकांक प्राप्त करें, जिसमें MACD लाइन, सिग्नल लाइन और स्तंभ रेखा शामिल हैं।
  4. एक ऊपर की ओर प्रवृत्ति में, यदि MACD स्तंभ 0 से बड़ा है, तो एक अतिरिक्त स्थिति खोलें, और पहले के खाली पदों को खाली करें।
  5. नीचे जाने के दौरान, यदि MACD स्तंभ 0 से कम है, तो एक खाली स्थिति खोलें, और अपने पूर्व के अधिक पदों को खाली करें।

श्रेष्ठता विश्लेषण

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

जोखिम विश्लेषण

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

अनुकूलन दिशा

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

संक्षेप

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

रणनीति स्रोत कोड
/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Samsuga supertrend", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)


atrPeriod = input.int(7,    "ATR Length", minval = 1)
factor =    input.float(1.0, "Factor",     minval = 0.01, step = 0.01)

[supertrend, direction] = ta.supertrend(factor, atrPeriod)

supertrend := barstate.isfirst ? na : supertrend
upTrend =    plot(direction <= 0 ? supertrend : na, "Up Trend",   color = color.green, style = plot.style_linebr)
downTrend =  plot(direction <= 0 ? na : supertrend, "Down Trend", color = color.red,   style = plot.style_linebr)
bodyMiddle = plot(barstate.isfirst ? na : (open + close) / 2, "Body Middle",display = display.none)
longcondition = direction[1] > direction 
shortCondition = direction[1] < direction 

macdp1 = 3
macdp2=10
macdp3=6

[macdLine, signalLine, histLine] =request.security(symbol = syminfo.tickerid, timeframe = "30",expression = ta.macd(close,macdp1,macdp2,macdp3),lookahead=barmerge.lookahead_on)
// plot(macdLine,   title = "MACD",   color = #2962FF)
// plot(signalLine, title = "Signal", color = #FF6D00)
// 8, 21, 5
// 8,13,9
// 12,26,9
//  1--> 3, 17, 5
// 3, 10, 16
// log.info(str.tostring(syminfo.tickerid)+str.tostring(histLine[0]))
//  /////////----------------METHOD 1-----------------////////////////
// if(longcondition)
//     if(strategy.opentrades>0)
//         strategy.close("Long","Prev Exit", immediately = true)
//     if( histLine[0] > 0.1)
//         strategy.entry(id= "Long", direction=strategy.long,  comment = "update long")

    
// else if(shortCondition and strategy.openprofit<=0.1) 
//     strategy.close("Long",comment = "Close",immediately = true)
//  /////////----------------METHOD 2-----------------////////////////
// if(longcondition)
//     if(histLine[0] > 0)
//         strategy.entry(id= "Long", direction=strategy.long,  comment = "update long" )
//         strategy.exit("Long", loss = close*0.2)


    
// else if(shortCondition ) 
//     strategy.close("Long",comment = "Close",immediately = true)
//  /////////----------------METHOD 3-----------------////////////////
// log.info(str.tostring(syminfo.tickerid)+str.tostring(histLine[0]))
if(longcondition)
    if(histLine[0] > 0)    
        strategy.close("Short",comment = "E-S", alert_message = "E-S",disable_alert = true)
        strategy.entry(id= "Long", direction=strategy.long,  comment = "L",alert_message = "L")
else if(shortCondition) 
    if(histLine[0] < 0)    
        strategy.close("Long",comment = "E-L",alert_message = "E-L",disable_alert = true)
        strategy.entry(id= "Short", direction=strategy.short,  comment = "S",alert_message = "S")