डबल मूविंग एवरेज गोल्डन क्रॉस और डेथ क्रॉस रणनीति के आधार पर


निर्माण तिथि: 2024-02-27 16:21:02 अंत में संशोधित करें: 2024-02-27 16:21:02
कॉपी: 0 क्लिक्स: 686
1
ध्यान केंद्रित करना
1617
समर्थक

डबल मूविंग एवरेज गोल्डन क्रॉस और डेथ क्रॉस रणनीति के आधार पर

अवलोकन

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

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

इस रणनीति का मुख्य तर्क दो समूहों के क्रॉसिंग पर आधारित है, जो एक धीमी गति से औसत रेखा के साथ प्रवेश और बाहर निकलने का समय निर्धारित करता है।

सबसे पहले, हम औसत रेखाओं के दो समूहों की गणना करते हैं:

  • पहला समूह, 8 दिनों का एक त्वरित ईएमए
  • दूसरा समूह, फास्ट ईएमए, 21 दिनों तक
  • 50 दिनों के लिए धीमी गति से एसएमए
  • धीमी गति एसएमए का दूसरा सेट, 200 दिनों का

फिर, यह निर्धारित करें कि क्या फास्ट ईएमए गोल्डफ़ॉर्क है या धीमी गति से एसएमएः

  • यदि 8 दिन ईएमए 50 दिन एसएमए के माध्यम से जाता है, तो गोल्डफोर्क संकेत है
  • यदि 8 दिन ईएमए नीचे 50 दिन एसएमए, एक मृत कांटा के लिए संकेत

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

  • ट्रेडिंग सिग्नल केवल तभी जारी किया जाता है जब 21 वें ईएमए भी 50 वें दिन के एसएमए के ऊपर या नीचे होता है

इस प्रकार, दो सेटों की धीमी और समान रेखा की पुष्टि के माध्यम से, कई झूठे संकेतों को फ़िल्टर किया जा सकता है, जिससे संकेतों की विश्वसनीयता में सुधार होता है।

जब निर्णय एक खरीद संकेत उत्पन्न करता है, तो अधिक प्रविष्टि करें; जब निर्णय एक बेचने का संकेत उत्पन्न करता है, तो शून्य प्रविष्टि करें।

इसके अलावा, इस रणनीति में एक स्टॉप-स्टॉप लॉजिक भी है। जब कोई स्थिति रखता है, तो स्टॉप-स्टॉप और स्टॉप-लॉस की कीमतों को ट्रैक किया जाता है, जो सेट किए गए लाभ और हानि अनुपात के आधार पर होता है।

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

इस रणनीति के कुछ फायदे हैंः

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

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

इस रणनीति के कुछ जोखिम भी हैं:

  1. औसत रेखा रणनीतियों में छोटे लाभ और छोटे नुकसान के लिए अधिक उतार-चढ़ाव हो सकते हैं
  2. जब रुझान में भारी बदलाव होता है, तो अधिक नुकसान हो सकता है
  3. गलत पैरामीटर से लाभ कम हो सकता है

जोखिम को नियंत्रित करने के लिए, यह सलाह दी जाती है किः

  1. विभिन्न बाजार स्थितियों के लिए पैरामीटर के संयोजन को ठीक से समायोजित करना
  2. रणनीति को लक्षित बाजार के लिए अनुकूलित करने के लिए परिणामों के आधार पर पैरामीटर का अनुकूलन करें
  3. एकल हानि के आकार को नियंत्रित करने के लिए स्टॉप लॉस सेट करें

अनुकूलन दिशा

इस रणनीति को निम्नलिखित पहलुओं से भी अनुकूलित किया जा सकता हैः

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

संक्षेप

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

रणनीति स्रोत कोड
/*backtest
start: 2023-02-20 00:00:00
end: 2024-02-26 00:00:00
period: 1d
basePeriod: 1h
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/
// © JMLSlop

//@version=4

src = close
strategy("Crossover moving averages", shorttitle="Cross MA-EMA", overlay=true, calc_on_order_fills=false)

// first fast EMA
len = input(8, "Length", type=input.integer, minval=1)
doma1 = input(true, title="EMA")
out1 = ema(src, len) 

//Second fast EMA
len2 = input(21, minval=1, title="Length")
doma2 = input(true, title="EMA")
out2 = ema(src, len2)

//First slow MA
len3 = input(50, minval=1, title="Length")
doma3 = input(true, title="SMA")
out3 = sma(src, len3)

//Second slow MA
len4 = input(200, minval=1, title="Length")
doma4 = input(true, title="SMA")
out4 = sma(src, len4)

// Profit
profit = input(8, "Profit/lost %", type=input.float, minval=1) * 0.01


plot(doma1 and out1 ? out1: na, color=color.blue, linewidth=1, title="1st EMA")
plot(doma2 and out2 ? out2: na, color=color.red, linewidth=1, title="2nd EMA")
plot(doma3 and out3 ? out3: na, color=color.green, linewidth=2, title="1st MA")
plot(doma4 and out4 ? out4: na, color=color.orange, linewidth=3, title="2nd MA")

// Orders config
takeProfitPrice =
     (strategy.position_size > 0) ? strategy.position_avg_price + open*profit : (strategy.position_size < 0) ? strategy.position_avg_price - (open*profit) : na

longStopPrice  = strategy.position_avg_price * (1 - profit)
shortStopPrice = strategy.position_avg_price * (1 + profit)

longCondition2 = (out2>out3 and (crossover(out1, out4) or crossover(out1[1], out4[1]) or crossover(out1[2], out4[2]) or (crossover(out1[3], out4[3]))) or (out2>out3 and (crossover(out1, out3) or crossover(out1[1], out3[1]) or crossover(out1[2], out3[2]) or crossover(out1[3], out3[3]))))
if (longCondition2)
    strategy.entry("Enter L", strategy.long)

shortCondition2 = (out2<out3 and (crossunder(out1, out4) or crossunder(out1[1], out4[1]) or crossunder(out1[2], out4[2]) or crossunder(out1[3], out4[3]))) or (out2<out3 and (crossunder(out1, out3) or crossunder(out1[1], out3[1]) or crossunder(out1[2], out3[2]) or crossunder(out1[3], out3[3])))
if (shortCondition2)
    strategy.entry("Enter S", strategy.short)


if (strategy.position_size > 0)
    strategy.exit("Exit L", limit=takeProfitPrice, stop=longStopPrice)

if (strategy.position_size < 0)
    strategy.exit("Exit S", limit=takeProfitPrice, stop=shortStopPrice)