मल्टीपल मूविंग एवरेज व्यापक रणनीति

लेखक:चाओझांग, दिनांकः 2023-12-22 11:56:42
टैगः

img

अवलोकन

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

सिद्धांत

इस रणनीति का मूल विभिन्न अवधियों में कई चलती औसत की गणना और ट्रैक करना है, विशेष रूप से 10-दिवसीय, 20-दिवसीय, 30-दिवसीय और 100-दिवसीय चलती औसत तक। इन चलती औसत को पिछले 10, 20, 30 दिनों आदि में औसत समापन मूल्य के रूप में सेट किया जाता है। उदाहरण के लिए, 20-दिवसीय चलती औसत पिछले 20 दिनों में औसत समापन मूल्य है।

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

लाभ

  1. विभिन्न समय के पैमाने पर अंतर्दृष्टि प्रदान करता है, विभिन्न बाजार वातावरण के अनुकूल

  2. कई पुष्टिकरणों के माध्यम से शोर को फ़िल्टर करता है, जिससे संकेत अधिक विश्वसनीय होते हैं

  3. स्पष्ट व्यापारिक नियम समझने और लागू करने में आसान

  4. व्यक्तिगत आवश्यकताओं को पूरा करने के लिए अत्यधिक अनुकूलन योग्य

  5. प्रविष्टियों, स्टॉप लॉस और लाभ लेने के लिए मार्गदर्शन प्रदान करता है, जोखिम प्रबंधन को सुविधाजनक बनाता है

जोखिम और समाधान

  1. रेंजिंग मार्केट के दौरान कई चलती औसत पार हो सकते हैं, जिससे अस्पष्ट संकेत मिलते हैं। चलती औसत की संख्या और लंबाई को समायोजित करके इसे कम किया जा सकता है।

  2. भावी मूल्य के कई चलती औसत तोड़ने की संभावना कम है, संभावित रूप से कुछ ट्रेडों को याद करना। चलती औसत की संख्या को कम करने के लिए कम तोड़ने की कठिनाई को कम किया जा सकता है।

  3. संकेत पिछड़ रहे हैं, जल्दी से रुझान उलटने को पकड़ने में असमर्थ हैं। एमएसीडी जैसे प्रमुख संकेतकों को शामिल करने से मोड़ बिंदु निर्णय में सुधार हो सकता है।

  4. लगातार आय के लिए उत्पन्न ट्रेडों की संख्या कम हो सकती है। चलती औसत लंबाई को छोटा करना या अन्य रणनीतियों/निर्देशकों के साथ संयोजन करना मदद कर सकता है।

अनुकूलन दिशाएँ

  1. पैरामीटर ट्यूनिंगः अनुकूलित पैरामीटर मिश्रण खोजने के लिए चलती औसत की संख्या और लंबाई को समायोजित करें। उदाहरण के लिए, 5-, 10- और 20-दिवसीय संयोजनों का परीक्षण किया जा सकता है।

  2. अन्य संकेतकों का संयोजनः एमएसीडी और आरएसआई जैसे संकेतकों को जोड़ने से रणनीति की लचीलापन में सुधार हो सकता है। विभिन्न संकेतकों से पूरकता मिलती है।

  3. रणनीतियों का संयोजनः अन्य रणनीतियों जैसे ब्रेकआउट सिस्टम और ट्रेंड ट्रैकिंग के साथ संयोजन मजबूती को बढ़ा सकता है। विभिन्न रणनीतियां जोखिमों को विविध बनाती हैं।

  4. स्वचालित अनुकूलनः उद्देश्य कार्यों को अधिकतम करने और इष्टतम मापदंडों को खोजने के लिए विभिन्न पैरामीटर सेटों का एल्गोरिथम परीक्षण करता है। मैनुअल हस्तक्षेप को कम करता है और दक्षता में सुधार करता है।

निष्कर्ष

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


/*backtest
start: 2022-12-15 00:00:00
end: 2023-12-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Multiple Moving Average Strategy", overlay=true)

// Function to calculate moving average
get_ma(src, length) =>
    ta.sma(src, length)

// Initialize moving average lengths
ma_length_10 = 10
ma_length_20 = 20
ma_length_30 = 30
ma_length_40 = 40
ma_length_50 = 50
ma_length_60 = 60
ma_length_70 = 70
ma_length_80 = 80
ma_length_90 = 90
ma_length_100 = 100

// Calculate 10-day, 20-day, 30-day, 40-day, 50-day, 60-day, 70-day, 80-day, 90-day, and 100-day moving averages
ma_10 = get_ma(close, ma_length_10)
ma_20 = get_ma(close, ma_length_20)
ma_30 = get_ma(close, ma_length_30)
ma_40 = get_ma(close, ma_length_40)
ma_50 = get_ma(close, ma_length_50)
ma_60 = get_ma(close, ma_length_60)
ma_70 = get_ma(close, ma_length_70)
ma_80 = get_ma(close, ma_length_80)
ma_90 = get_ma(close, ma_length_90)
ma_100 = get_ma(close, ma_length_100)

// Generate Buy/Sell signals for the 10 moving averages
buy_signal = close > ma_10
sell_signal = close < ma_10

// Add conditions for each additional moving average length
buy_signal := buy_signal and (close > get_ma(close, ma_length_20))
sell_signal := sell_signal and (close < get_ma(close, ma_length_20))

buy_signal := buy_signal and (close > get_ma(close, ma_length_30))
sell_signal := sell_signal and (close < get_ma(close, ma_length_30))

buy_signal := buy_signal and (close > get_ma(close, ma_length_40))
sell_signal := sell_signal and (close < get_ma(close, ma_length_40))

buy_signal := buy_signal and (close > get_ma(close, ma_length_50))
sell_signal := sell_signal and (close < get_ma(close, ma_length_50))

buy_signal := buy_signal and (close > get_ma(close, ma_length_60))
sell_signal := sell_signal and (close < get_ma(close, ma_length_60))

buy_signal := buy_signal and (close > get_ma(close, ma_length_70))
sell_signal := sell_signal and (close < get_ma(close, ma_length_70))

buy_signal := buy_signal and (close > get_ma(close, ma_length_80))
sell_signal := sell_signal and (close < get_ma(close, ma_length_80))

buy_signal := buy_signal and (close > get_ma(close, ma_length_90))
sell_signal := sell_signal and (close < get_ma(close, ma_length_90))

buy_signal := buy_signal and (close > get_ma(close, ma_length_100))
sell_signal := sell_signal and (close < get_ma(close, ma_length_100))

// Plot Buy/Sell signals on the chart
plotshape(buy_signal, title="Buy Signal", color=color.green, style=shape.triangleup, location=location.belowbar)
plotshape(sell_signal, title="Sell Signal", color=color.red, style=shape.triangledown, location=location.abovebar)

// Execute long buy order when all ten moving averages give a Buy signal
if (buy_signal)
    strategy.entry("Buy", strategy.long)

// Execute sell order when all ten moving averages give a Sell signal
if (sell_signal)
    strategy.close("Buy")

// Execute short sell order when all ten moving averages give a Sell signal
if (sell_signal)
    strategy.entry("Sell", strategy.short)

// Execute buy order when all ten moving averages give a Buy signal
if (buy_signal)
    strategy.close("Sell")

// Plot closing price and moving averages on the chart
plot(close, title="Close", color=color.blue)
plot(ma_10, title="MA 10", color=color.orange)
plot(ma_20, title="MA 20", color=color.purple)
plot(ma_30, title="MA 30", color=color.blue)
plot(ma_40, title="MA 40", color=color.red)
plot(ma_50, title="MA 50", color=color.green)
plot(ma_60, title="MA 60", color=color.yellow)
plot(ma_70, title="MA 70", color=color.fuchsia)
plot(ma_80, title="MA 80", color=color.gray)
plot(ma_90, title="MA 90", color=color.teal)
plot(ma_100, title="MA 100", color=color.maroon)


अधिक