सुपरट्रेंड रणनीति में सुधार

लेखक:चाओझांग, दिनांकः 2024-01-17 15:55:15
टैगः

img

अवलोकन

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

रणनीति तर्क

सुपरट्रेंड गणना

सबसे पहले, True Range (TR) और Average True Range (ATR) की गणना की जाती है। फिर ATR का उपयोग करके ऊपरी और निचले बैंड की गणना की जाती हैः

ऊपरी बैंड = एसएमए ((बंद, एटीआर अवधि) + एटीआर गुणक * एटीआर निचला बैंड = एसएमए ((करीब, एटीआर अवधि) - एटीआर गुणक * एटीआर

ऊपर की ओर रुझान तब पहचाना जाता है जब नीचे का बैंड बंद हो जाता है। नीचे की ओर रुझान तब पहचाना जाता है जब ऊपर का बैंड बंद हो जाता है।

अपट्रेंड के दौरान, सुपरट्रेंड को निचले बैंड पर सेट किया जाता है। डाउनट्रेंड के दौरान, सुपरट्रेंड को ऊपरी बैंड पर सेट किया जाता है।

फ़िल्टरिंग तंत्र

झूठे संकेतों को कम करने के लिए, सुपरट्रेंड को फ़िल्टर किए गए सुपरट्रेंड प्राप्त करने के लिए चलती औसत का उपयोग करके चिकना किया जाता है।

स्टोकैस्टिक आरएसआई

आरएसआई मान की गणना की जाती है, फिर स्टोकैस्टिक सूचक स्टोकैस्टिक आरएसआई उत्पन्न करने के लिए उस पर लागू किया जाता है। यह दर्शाता है कि आरएसआई ओवरबॉट या ओवरसोल्ड है या नहीं।

प्रवेश और निकास की शर्तें

लंबी प्रविष्टिः अपट्रेंड और स्टोकैस्टिक आरएसआई < 80 में फ़िल्टर्ड सुपरट्रेंड से ऊपर के क्रॉस को बंद करें लघु प्रविष्टिः घटते रुझान और स्टोकैस्टिक आरएसआई में फ़िल्टर किए गए सुपरट्रेंड से नीचे के क्रॉस को बंद करें > 20

लंबा बाहर निकलनाः ऊपर की ओर बढ़ते समय फ़िल्टर किए गए सुपरट्रेंड से नीचे के क्रॉस को बंद करें
शॉर्ट एक्जिटः डाउनट्रेंड में फ़िल्टर किए गए सुपरट्रेंड से ऊपर के क्रॉस को बंद करें

रणनीति के फायदे

सरल चलती औसत के मुकाबले इस बेहतर ट्रेंड फॉलो करने वाली रणनीति के निम्नलिखित लाभ हैंः

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

जोखिम और अनुकूलन

संभावित जोखिम

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

जोखिम प्रबंधन

  1. स्टॉप लॉस को उचित रूप से समायोजित करें या ट्रेलिंग स्टॉप लॉस का उपयोग करें।
  2. ट्यूनिंग पैरामीटर जैसे एटीआर अवधि और फिल्टर अवधि को संतुलित करने के लिए।
  3. स्टोकैस्टिक आरएसआई मापदंडों का परीक्षण और अनुकूलन करें।

अनुकूलन के अवसर

  1. इष्टतम मापदंडों को खोजने के लिए विभिन्न मापदंड संयोजनों का परीक्षण करें।
  2. विभिन्न फ़िल्टरिंग तंत्र जैसे ईएमए चिकनाई आदि का प्रयोग करें।
  3. मापदंडों को स्वतः अनुकूलित करने के लिए मशीन लर्निंग लागू करें.
  4. प्रवेश की शर्तों को पूरक करने के लिए अन्य संकेतकों को शामिल करें।

निष्कर्ष

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


/*backtest
start: 2024-01-09 00:00:00
end: 2024-01-16 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Improved SuperTrend Strategy with Stochastic RSI", shorttitle="IST+StochRSI", overlay=true)

// Input parameters
atr_length = input(14, title="ATR Length")
atr_multiplier = input(1.5, title="ATR Multiplier")
filter_length = input(5, title="Filter Length")
stoch_length = input(14, title="Stochastic RSI Length")
smooth_k = input(3, title="Stochastic RSI %K Smoothing")

// Calculate True Range (TR) and Average True Range (ATR)
tr = ta.rma(ta.tr, atr_length)
atr = ta.rma(tr, atr_length)

// Calculate SuperTrend
upper_band = ta.sma(close, atr_length) + atr_multiplier * atr
lower_band = ta.sma(close, atr_length) - atr_multiplier * atr

is_uptrend = close > lower_band
is_downtrend = close < upper_band

super_trend = is_uptrend ? lower_band : na
super_trend := is_downtrend ? upper_band : super_trend

// Filter for reducing false signals
filtered_super_trend = ta.sma(super_trend, filter_length)

// Calculate Stochastic RSI
rsi_value = ta.rsi(close, stoch_length)
stoch_rsi = ta.sma(ta.stoch(rsi_value, rsi_value, rsi_value, stoch_length), smooth_k)

// Entry conditions
long_condition = ta.crossover(close, filtered_super_trend) and is_uptrend and stoch_rsi < 80
short_condition = ta.crossunder(close, filtered_super_trend) and is_downtrend and stoch_rsi > 20

// Exit conditions
exit_long_condition = ta.crossunder(close, filtered_super_trend) and is_uptrend
exit_short_condition = ta.crossover(close, filtered_super_trend) and is_downtrend

// Plot SuperTrend and filtered SuperTrend
plot(super_trend, color=color.orange, title="SuperTrend", linewidth=2)
plot(filtered_super_trend, color=color.blue, title="Filtered SuperTrend", linewidth=2)

// Plot Buy and Sell signals
plotshape(series=long_condition, title="Buy Signal", color=color.green, style=shape.triangleup, location=location.belowbar)
plotshape(series=short_condition, title="Sell Signal", color=color.red, style=shape.triangledown, location=location.abovebar)

// Output signals to the console for analysis
plotchar(long_condition, "Long Signal", "▲", location.belowbar, color=color.green, size=size.small)
plotchar(short_condition, "Short Signal", "▼", location.abovebar, color=color.red, size=size.small)

// Strategy entry and exit
strategy.entry("Long", strategy.long, when=long_condition)
strategy.entry("Short", strategy.short, when=short_condition)
strategy.close("Long", when=exit_long_condition)
strategy.close("Short", when=exit_short_condition)


अधिक