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


निर्माण तिथि: 2023-12-22 14:17:34 अंत में संशोधित करें: 2023-12-22 14:17:34
कॉपी: 0 क्लिक्स: 717
1
ध्यान केंद्रित करना
1623
समर्थक

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

अवलोकन

यह रणनीति तेजी से चलती औसत, धीमी गति से चलती औसत और MACD सूचकांक की गणना करके कीमतों के रुझान के बारे में निर्णय लेने के लिए, सोने के कांटे और मृत कांटे के व्यापारिक संकेतों का निर्माण करने के लिए, और स्टॉप-स्टॉप-लॉस ट्रैकिंग स्टॉप-लॉस के संयोजन के साथ लाभ को लॉक करने के लिए, प्रवृत्ति की निरंतर ट्रैकिंग को सक्षम करने के लिए।

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

यह रणनीति मुख्य रूप से तीन सूचकांकों पर आधारित है:

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

दूसरा, MACD संकेतकों की गणना करें, जिसमें MACD लाइन, सिग्नल लाइन और रेक्टोग्राम शामिल हैं। जब MACD रेक्टोग्राम> 0 है तो मल्टीहेड सूचक; जब MACD रेक्टोग्राम < 0 है तो खाली हेड सूचक। इस प्रकार, गोल्डन फोर्क डेड फोर्क सिग्नल की विश्वसनीयता का आकलन करने में मदद मिलती है।

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

रणनीतिक लाभ

इस रणनीति के निम्नलिखित फायदे हैं:

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

रणनीतिक जोखिम

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

  1. कीमतों में उतार-चढ़ाव के दौरान, स्टॉप लॉस को ट्रिगर करने का जोखिम हो सकता है;
  2. लंबे समय तक चलने वाले ट्रैक किए गए नुकसान की निरंतर निगरानी और समय पर समायोजन की आवश्यकता होती है;
  3. अनुचित पैरामीटर सेट करने से लेन-देन की आवृत्ति या छूट हो सकती है।

जोखिम के लिए समाधानः

  1. अनावश्यक क्षति को रोकने के लिए उचित रूप से स्टॉप पॉइंट्स सेट करें;
  2. समय-समय पर जाँच और अनुकूलन पैरामीटर सेटिंग्स;
  3. मानव हस्तक्षेप और स्थिति की निगरानी।

रणनीति अनुकूलन दिशा

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

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

संक्षेप

इस रणनीति के लिए कुल मिलाकर एक सरल और प्रभावी रणनीति है कि प्रवृत्ति का उपयोग करें सोने का कांटा और MACD सूचक का निर्णय, ट्रैक रोक को लागू करने के लिए. यह प्रवृत्ति ट्रैकिंग और मुनाफा तालाबंदी, अनुकूलन के लिए मजबूत है, कई किस्मों के लिए उपयुक्त है, एक सार्वभौमिक पैरामीटर अनुकूलित रणनीति है. वहाँ कुछ जोखिम और अनुकूलन के लिए जगह है, लेकिन कुल मिलाकर एक विश्वसनीय व्यावहारिक व्यापार रणनीति है.

रणनीति स्रोत कोड
/*backtest
start: 2023-12-14 00:00:00
end: 2023-12-21 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy('The Puria Method', shorttitle = 'Puria',overlay = true)

//=== GENERAL INPUTS ===

// short ma
maFastSource   = input(defval = close, title = "Fast MA Source")
maFastLength   = input(defval = 5, title = "Fast MA Period", minval = 1)

// long ma 1
maSlow1Source   = input(defval = low, title = "Slow MA1 Source")
maSlow1Length   = input(defval = 85, title = "Slow MA Period", minval = 1)

// long ma 2
maSlow2Source   = input(defval = low, title = "Slow MA2 Source")
maSlow2Length   = input(defval = 75, title = "Slow MA Period", minval = 1)

//macd
macdFastLength   = input(defval = 12, title = "Fast MACD Period", minval = 1)
macdSlowLength   = input(defval = 26, title = "Slow MACD Period", minval = 1)
macdSmaLength   = input(defval = 9, title = "SMA MACD Period", minval = 1)

// the risk management inputs
inpTakeProfit   = input(defval = 30, title = "Take Profit", minval = 0)
inpStopLoss     = input(defval = 10, title = "Stop Loss", minval = 0)
inpTrailStop    = input(defval = 5, title = "Trailing Stop Loss", minval = 0)
inpTrailOffset  = input(defval = 0, title = "Trailing Stop Loss Offset", minval = 0)

// if an input is less than 1, assuming not wanted so we assign 'na' value to disable it.
useTakeProfit   = inpTakeProfit  >= 1 ? inpTakeProfit  : na
useStopLoss     = inpStopLoss    >= 1 ? inpStopLoss    : na
useTrailStop    = inpTrailStop   >= 1 ? inpTrailStop   : na
useTrailOffset  = inpTrailOffset >= 1 ? inpTrailOffset : na

// === SERIES SETUP ===
maFast = ema(maFastSource, maFastLength)
maSlow1 = wma(maSlow1Source, maSlow1Length)
maSlow2 = wma(maSlow2Source, maSlow2Length)
[_, signal, histLine] = macd(close, macdFastLength, macdSlowLength, macdSmaLength)

// === PLOTTING ===
fast = plot(maFast, title = "Fast MA", color = green, linewidth = 2, style = line, transp = 50)
slow1 = plot(maSlow1, title = "Slow MA1", color = red, linewidth = 2, style = line, transp = 50)
slow2 = plot(maSlow2, title = "Slow MA2", color = red, linewidth = 2, style = line, transp = 50)

// === LOGIC ===
signalUp = crossover(maFast, maSlow1) and crossover(maFast, maSlow2) and histLine > 0
signalDown = crossunder(maFast, maSlow1) and crossunder(maFast, maSlow2) and histLine < 0

// ===STRATEGY===
strategy.entry(id = "Long", long = true, when = signalUp) 
strategy.entry(id = "Short", long = false, when = signalDown)
strategy.exit("Exit Long", from_entry = "Long", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)
strategy.exit("Exit Short", from_entry = "Short", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)