यह रणनीति दोहरी चलती औसत चैनलों के आधार पर एक गतिशील प्रवृत्ति के बाद प्रणाली है, जो जोखिम प्रबंधन तंत्र के साथ संयुक्त है। यह एक ट्रेडिंग चैनल बनाने के लिए दो सरल चलती औसत (एसएमए) का उपयोग करता है, जिसमें ऊपरी बैंड की गणना उच्च मूल्य का उपयोग करके और निचला बैंड कम मूल्य का उपयोग करके की जाती है। यह प्रणाली प्रवेश संकेत उत्पन्न करती है जब समापन मूल्य लगातार पांच बार के लिए ऊपरी बैंड से ऊपर रहता है, और निकास संकेत जब कीमत या तो लगातार पांच बार के लिए निचले बैंड से नीचे गिर जाती है या उच्चतम बिंदु से 25% पीछे हटती है, जिससे गतिशील प्रवृत्ति ट्रैकिंग और जोखिम नियंत्रण प्राप्त होता है।
मूल सिद्धांतों में दोहरी चलती औसत चैनलों के माध्यम से मूल्य रुझानों को पकड़ना और सख्त प्रवेश और निकास तंत्र स्थापित करना शामिल हैः 1. प्रवेश तंत्रः प्रवृत्ति निरंतरता और वैधता सुनिश्चित करने के लिए लगातार पांच दिनों के लिए ऊपरी बैंड से ऊपर मूल्य बनाए रखने की आवश्यकता होती है 2. निकास तंत्र: दो स्तरों पर कार्य करता है - प्रवृत्ति विचलन से बाहर निकलनाः जब कीमत लगातार पांच दिनों के लिए निचले बैंड से नीचे गिरती है, तो यह संभावित प्रवृत्ति उलट का संकेत देती है। - स्टॉप-लॉस एग्जिटः जब कीमत उच्चतम बिंदु से 25% वापस आती है, तो अत्यधिक नुकसान को रोकने के लिए सक्रिय होता है 3. स्थिति प्रबंधन: स्थिति आकार के लिए खाता इक्विटी का एक निश्चित प्रतिशत उपयोग करता है, जिससे प्रभावी पूंजी आवंटन सुनिश्चित होता है
यह रणनीति दोहरी चलती औसत चैनलों के माध्यम से एक पूर्ण प्रवृत्ति के बाद व्यापार प्रणाली का निर्माण करती है, प्रभावी प्रवृत्ति ट्रैकिंग और जोखिम नियंत्रण प्राप्त करने के लिए सख्त प्रवेश पुष्टि और दोहरी निकास तंत्रों को जोड़ती है। रणनीति की ताकत इसके स्पष्ट निष्पादन तर्क और व्यापक जोखिम नियंत्रण में निहित है, हालांकि इसके लिए विभिन्न बाजार वातावरण के लिए पैरामीटर अनुकूलन की आवश्यकता होती है और बाजार वातावरण फ़िल्टरिंग और कई समय सीमा की पुष्टि के माध्यम से आगे सुधार किया जा सकता है। कुल मिलाकर, यह एक संरचनात्मक रूप से पूर्ण और तार्किक रूप से कठोर मात्रात्मक व्यापार रणनीति का प्रतिनिधित्व करता है, जो स्पष्ट रुझानों वाले बाजारों में आवेदन के लिए उपयुक्त है।
/*backtest start: 2025-01-02 00:00:00 end: 2025-01-09 00:00:00 period: 10m basePeriod: 10m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=5 strategy("Moving Average Channel (MAC)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100) // Parameters for Moving Averages upperMALength = input.int(10, title="Upper MA Length") lowerMALength = input.int(8, title="Lower MA Length") stopLossPercent = input.float(25.0, title="Stop Loss (%)", minval=0.1) / 100 // Calculate Moving Averages upperMA = ta.sma(high, upperMALength) lowerMA = ta.sma(low, lowerMALength) // Plot Moving Averages plot(upperMA, color=color.red, title="Upper Moving Average") plot(lowerMA, color=color.green, title="Lower Moving Average") // Initialize variables var int upperCounter = 0 var int lowerCounter = 0 var float entryPrice = na var float highestPrice = na // Update counters based on conditions if (low <= upperMA) upperCounter := 0 else upperCounter += 1 if (high >= lowerMA) lowerCounter := 0 else lowerCounter += 1 // Entry condition: 5 consecutive bars above the Upper MA if (upperCounter == 5 and strategy.position_size == 0) strategy.entry("Long", strategy.long) highestPrice := high // Initialize highest price // Update the highest price after entry if (strategy.position_size > 0) highestPrice := na(highestPrice) ? high : math.max(highestPrice, high) // Exit condition: 5 consecutive bars below the Lower MA if (lowerCounter == 5 and strategy.position_size > 0) strategy.close("Long", comment="Exit: 5 bars below Lower MA") // Stop-loss condition: Exit if market closes below 25% of the highest price since entry stopLossCondition = low < highestPrice * (1 - stopLossPercent) if (stopLossCondition and strategy.position_size > 0) strategy.close("Long", comment="Exit: Stop Loss")