ट्रेडिंग स्टॉप लॉस के साथ ईएमए और एमएसीडी ट्रेडिंग रणनीति

लेखक:चाओझांग, दिनांकः 2023-09-20 11:21:14
टैगः

अवलोकन

यह रणनीति ट्रेडिंग संकेत उत्पन्न करने के लिए घातीय चलती औसत (ईएमए) और चलती औसत अभिसरण विचलन (एमएसीडी) संकेतकों को जोड़ती है, और जोखिमों को नियंत्रित करने के लिए ट्रैलिंग स्टॉप लॉस को अपनाती है। यह रणनीति ट्रेंडिंग बाजारों के लिए उपयुक्त है और इसका उद्देश्य दीर्घकालिक होल्डिंग के लिए मध्यम अवधि के रुझानों का पालन करना है।

रणनीति तर्क

जब तेजी से ईएमए रेखा धीमी ईएमए रेखा के ऊपर से पार करती है और एमएसीडी हिस्टोग्राम मंदी की ओर मुड़ जाता है, तो रणनीति लंबी हो जाती है। जब एक लंबी स्थिति मौजूद होती है, तो एक नीचे की ओर ट्रेलिंग स्टॉप लॉस लाइन सेट की जाती है। यदि कीमत एक निश्चित प्रतिशत से स्टॉप लॉस लाइन से नीचे गिर जाती है, तो लंबी स्थिति को रोक दिया जाएगा।

विशेष रूप से, रणनीति तेजी से और धीमी ईएमए के निर्माण के लिए 7-दिवसीय ईएमए और 14-दिवसीय ईएमए का उपयोग करती है। एमएसीडी मूल्य 12-दिवसीय ईएमए से 26-दिवसीय ईएमए को घटाकर प्राप्त किया जाता है, और सिग्नल लाइन एमएसीडी के 9-दिवसीय ईएमए के साथ प्राप्त की जाती है। जब 7-दिवसीय ईएमए 14-दिवसीय ईएमए से ऊपर पार हो जाती है और एमएसीडी मूल्य सिग्नल लाइन से ऊपर पार हो जाता है, तो एक लंबी स्थिति खोली जाती है। फिर एक डाउनलाइटिंग स्टॉप लॉस लाइन सेट की जाती है। यदि कीमत एक निश्चित प्रतिशत से उच्च स्तर से गिरती है, तो लंबी स्थिति को रोक दिया जाएगा।

लाभ विश्लेषण

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

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

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

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

ईएमए अवधि का उचित विस्तार झूठे संकेतों को कम कर सकता है। अन्य संकेतकों को फ़िल्टर संकेतों के लिए भी जोड़ा जा सकता है, जैसे कि वॉल्यूम या अस्थिरता संकेतक। इसके अलावा, स्टॉप लॉस प्रतिशत को बाजार की स्थितियों के आधार पर समायोजित किया जा सकता है, स्टॉप लॉस और व्हिपसा जोखिमों को संतुलित करने के लिए।

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

  1. अधिक उपयुक्त मापदंडों को खोजने के लिए विभिन्न ईएमए अवधि संयोजनों का परीक्षण किया जा सकता है।

  2. सिग्नल फ़िल्टरिंग और गुणवत्ता में सुधार के लिए आरएसआई, केडी जैसे अन्य संकेतक जोड़े जा सकते हैं।

  3. स्टॉप लॉस प्रतिशत को गतिशील ट्रेलिंग स्टॉप के साथ विभिन्न उत्पादों के आधार पर समायोजित किया जा सकता है।

  4. अधिक अनुकूलन योग्य प्रवेश और निकास नियमों के लिए ब्रेकआउट, पैटर्न मान्यता और अन्य तकनीकों को शामिल किया जा सकता है।

  5. मशीन लर्निंग ईएमए की सहायता के लिए समग्र रुझान की दिशा की भविष्यवाणी करने में मदद कर सकती है।

सारांश

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


/*backtest
start: 2023-09-12 00:00:00
end: 2023-09-19 00:00:00
period: 10m
basePeriod: 1m
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/
// © Coinrule

//@version=5
strategy('EMA and MACD with Trailing Stop Loss',
         overlay=true,
         initial_capital=1000,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=30,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = time >= timestamp(syminfo.timezone, 2022, 1, 1, 0, 0)
notInTrade = strategy.position_size <= 0

// EMAs 
fastEMA = ta.ema(close, 7)
slowEMA = ta.ema(close, 14)
plot(fastEMA, color = color.blue)
plot(slowEMA, color = color.green)
//buyCondition1 = ta.crossover(fastEMA, slowEMA)
buyCondition1 = fastEMA > slowEMA


// DMI and MACD inputs and calculations
[macd, macd_signal, macd_histogram] = ta.macd(close, 12, 26, 9)
buyCondition2 = ta.crossover(macd_signal, macd)


// Configure trail stop level with input options
longTrailPerc = input.float(title='Trail Long Loss (%)', minval=0.0, step=0.1, defval=3) * 0.01
shortTrailPerc = input.float(title='Trail Short Loss (%)', minval=0.0, step=0.1, defval=1) * 0.01

// Determine trail stop loss prices
longStopPrice = 0.0
shortStopPrice = 0.0

longStopPrice := if strategy.position_size > 0
    stopValue = close * (1 - longTrailPerc)
    math.max(stopValue, longStopPrice[1])
else
    0

shortStopPrice := if strategy.position_size < 0
    stopValue = close * (1 + shortTrailPerc)
    math.min(stopValue, shortStopPrice[1])
else
    999999
    

if (buyCondition1 and buyCondition2 and notInTrade and timePeriod)
    strategy.entry(id="Long", direction = strategy.long)

strategy.exit(id="Exit", stop = longStopPrice, limit = shortStopPrice)


//if (sellCondition1 and sellCondition2 and notInTrade and timePeriod)
//strategy.close(id="Close", when = sellCondition1 or sellCondition2)


अधिक