डबल मूविंग एवरेज क्रॉसओवर रणनीति

लेखक:चाओझांग, दिनांकः 2024-01-31 11:29:45
टैगः

img

अवलोकन

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

रणनीति तर्क

इस रणनीति का मूल तर्क दो चलती औसत के बीच क्रॉसओवर सिद्धांतों में निहित है। एक चलती औसत एक निर्दिष्ट समय अवधि में अंकगणितीय औसत मूल्य है। यह बाजार शोर को फ़िल्टर करने और स्पष्ट मूल्य रुझानों को प्रकट करने में मदद करता है।

इस रणनीति में, अल्पकालिक एमए अल्पकालिक रुझानों को कैप्चर करता है जबकि दीर्घकालिक एमए दीर्घकालिक रुझानों को कैप्चर करता है। चूंकि अल्पकालिक एमए नवीनतम मूल्य परिवर्तनों का जवाब देने में अधिक संवेदनशील है, इसलिए दीर्घकालिक एमए के ऊपर पार करना आगे की प्रवृत्ति उलट का संकेत देता है।

विशेष रूप से, रणनीति उपयोगकर्ताओं द्वारा परिभाषित long_period और short_period पर ta.sma का उपयोग करके एमए की गणना करती है। फिर यह दो एमए के बीच स्वर्ण क्रॉसओवर और मृत्यु क्रॉसओवर का पता लगाने के लिए ta.crossover और ta.crossunder का उपयोग करती है। जब छोटा एमए लंबे एमए के ऊपर से गुजरता है, तो लंबा हो जाता है। जब छोटा एमए नीचे से गुजरता है, तो छोटा हो जाता है।

लाभ

इस रणनीति के मुख्य लाभों में निम्नलिखित शामिल हैंः

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

जोखिम

इसके साथ ही इसके कई जोखिम भी हैंः

  1. एमए के बीच बहुत छोटा अंतर झूठे संकेत देता है।
  2. गलत एमए अवधि प्रमुख रुझानों को याद करती है।
  3. पलटाव का मतलब हमेशा रुझान में बदलाव नहीं होता।
  4. ओवरफिटिंग से बचने के लिए मापदंडों को समायोजित करने की आवश्यकता है।

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

अनुकूलन

आगे अनुकूलन के लिए जगह हैः

  1. अनुकूलनशील एमए अवधि का अनुकूलन करें।
  2. झूठे ब्रेकआउट से बचने के लिए वॉल्यूम फ़िल्टर जोड़ें.
  3. एमएसीडी, केडीजे जैसे अन्य संकेतकों को शामिल करें।
  4. सीमा हानि के लिए स्टॉप लॉस/टेक प्रॉफिट जोड़ें।
  5. बेहतर स्केलेबिलिटी के लिए कोड संरचना में सुधार।

निष्कर्ष

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


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Cross 2 Moving Average Strategy", shorttitle="2MA Cross", overlay=true)

// User-defined input for moving averages
long_period = input(20, title="Long Period")
short_period = input(5, title="Short Period")
type_ma = input.string("SMA", title = "MA type", options = ["SMA", "EMA"])

// Calculating moving averages
long_ma = ta.sma(close, long_period)
short_ma = ta.sma(close, short_period)

// Plot moving averages
plot(long_ma, title="Long Moving Average", color=color.red)
plot(short_ma, title="Short Moving Average", color=color.green)

// Strategy logic for crossing of moving averages
longCondition = ta.crossover(short_ma, long_ma)
shortCondition = ta.crossunder(short_ma, long_ma)

// Entry orders
if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.entry("Short", strategy.short)

// Optional: Add stop loss and take profit
stop_loss_perc = input(1, title="Stop Loss (%)") / 100
take_profit_perc = input(2, title="Take Profit (%)") / 100

strategy.exit("Exit Long", from_entry="Long", stop=close*(1-stop_loss_perc), limit=close*(1+take_profit_perc))
strategy.exit("Exit Short", from_entry="Short", stop=close*(1+stop_loss_perc), limit=close*(1-take_profit_perc))


अधिक