एसएमए और आरएसआई संयोजन ट्रेडिंग रणनीति

लेखक:चाओझांग, दिनांक: 2023-10-08 11:40:49
टैगः

अवलोकन

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

रणनीति तर्क

  1. समग्र प्रवृत्ति दिशा निर्धारित करने के लिए एसएमए (200 अवधि) का उपयोग करें। जब मूल्य एसएमए से नीचे हो तो शॉर्टिंग के अवसर की तलाश करें।

  2. ओवरबॉट/ओवरसोल्ड स्थितियों की पहचान करने के लिए आरएसआई (14 अवधि) का प्रयोग करें। आरएसआई 51 से ऊपर के संकेतों को पार करने से बिक्री की गति बढ़ जाती है, जिससे शॉर्ट में प्रवेश की अनुमति मिलती है।

  3. शॉर्ट पोजीशन खोलने के बाद, सबसे कम क्लोजिंग प्राइस पर ट्रेलिंग स्टॉप लॉस सेट करें। यदि आरएसआई 54 से ऊपर या 32 से नीचे पार करता है, तो बंद पोजीशन।

  4. तीन प्रकार के स्टॉप लॉस हैंः प्राइस स्टॉप, आरएसआई स्टॉप और प्रॉफिट स्टॉप।

ताकत

  1. ट्रेंड फॉलो करने वाले और ओवरबॉट/ओवरसोल्ड संकेतकों का संयोजन प्रविष्टियों के लिए समय की सटीकता में सुधार करता है।

  2. ट्रेलिंग स्टॉप लॉस वास्तविक समय में मूल्य परिवर्तन के अनुसार मुनाफे की रक्षा कर सकता है, कठोर स्टॉप लॉस से बचता है।

  3. आरएसआई दो तरफा ट्रिगर लाभ में लॉक करने और अत्यधिक पॉलबैक नुकसान को रोकने में मदद करता है।

  4. निश्चित मापदंडों वाले सरल संकेतकों का प्रयोग मध्यम अवधि के व्यापार के लिए लागू करना आसान बनाता है।

जोखिम

  1. एसएमए और आरएसआई मापदंड सभी उत्पादों और समय सीमाओं के लिए उपयुक्त नहीं हो सकते हैं, अनुकूलन की आवश्यकता है।

  2. स्लिप और कमीशन जैसी ट्रेडिंग लागतों को नजरअंदाज कर दिया जाता है, जिससे वास्तविक पीएनएल प्रभावित होता है।

  3. अन्य कारकों जैसे कि मात्रा और बाजार संरचना पर विचार नहीं किया जाता है, जिससे अविश्वसनीय संकेत मिलते हैं।

  4. संकेतकों पर अत्यधिक भरोसा करना और मूल्य क्रिया को नजरअंदाज करना पलटने के समय को याद कर सकता है।

  5. स्टॉप लॉस पद्धति अपेक्षाकृत कठोर है, जो बाजार के बड़े बदलावों के अनुकूल नहीं हो सकती है।

सुधार

  1. सर्वोत्तम संयोजन खोजने के लिए एसएमए अवधि और आरएसआई मापदंडों का परीक्षण और अनुकूलन।

  2. कम वॉल्यूम के साथ झूठे ब्रेकआउट से बचने के लिए वॉल्यूम संकेतक जोड़ने पर विचार करें।

  3. एमएसीडी, बोलिंगर बैंड आदि जैसे अन्य संकेतकों के साथ परीक्षण संयोजन

  4. मशीन लर्निंग एल्गोरिदम जोड़ें, ऐतिहासिक डेटा के साथ प्रशिक्षण द्वारा संकेत सटीकता में सुधार।

  5. स्टॉप लॉस को अनुकूलित करना ताकि यह अधिक लचीला हो सके और बाजार के बदलावों के अनुकूल हो सके।

  6. एकल व्यापार हानि राशि को नियंत्रित करने के लिए जोखिम प्रबंधन जोड़ें।

निष्कर्ष

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


/*backtest
start: 2022-10-01 00:00:00
end: 2023-10-07 00:00:00
period: 2d
basePeriod: 1d
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/
// © abdllhatn

//@version=5
// strategy("Alpha Short SMA and RSI Strategy", overlay=true, initial_capital=10000, default_qty_value=100)

// Inputs
sma_length = input(200, title="SMA Length")
rsi_length = input(14, title="RSI Length")
rsi_entry = input(51, title="RSI Entry Level")
rsi_stop = input(54, title="RSI Stop Level")
rsi_take_profit = input(32, title="RSI Take Profit Level")

// Indicators
sma_value = ta.sma(close, sma_length)
rsi_value = ta.rsi(close, rsi_length)

var float trailingStop = na
var float lastLow = na

// Conditions
shortCondition = ta.crossover(rsi_value, rsi_entry) and close < sma_value
if (shortCondition)
    strategy.entry("Sell", strategy.short)
    trailingStop := na
    lastLow := na

if (strategy.position_size < 0)
    if (na(lastLow) or close < lastLow)
        lastLow := close
        trailingStop := close

if not na(trailingStop) and close > trailingStop
    strategy.close("Sell")

if (rsi_value >= rsi_stop)
    strategy.close("Sell")

if (rsi_value <= rsi_take_profit)
    strategy.close("Sell")

// Plot
plot(sma_value, color=color.red, linewidth=2)




अधिक