तीव्र गतिमान औसत और धीमी गतिमान औसत पर आधारित मात्रात्मक ट्रेडिंग रणनीति


निर्माण तिथि: 2024-01-24 14:49:29 अंत में संशोधित करें: 2024-01-24 14:49:29
कॉपी: 0 क्लिक्स: 484
1
ध्यान केंद्रित करना
1617
समर्थक

तीव्र गतिमान औसत और धीमी गतिमान औसत पर आधारित मात्रात्मक ट्रेडिंग रणनीति

अवलोकन

डबल मूविंग एवरेज ब्रेकआउट रणनीति एक मात्रात्मक ट्रेडिंग रणनीति है जो तेजी से चलती औसत और धीमी गति से चलती औसत पर आधारित है। यह दो अलग-अलग चक्रों के सूचकांक चलती औसत (ईएमए) का उपयोग करता है। यह एक व्यापार संकेत के रूप में कार्य करता है। जब यह तेजी से चलती औसत पर धीमी गति से चलती औसत को पार करता है, तो यह एक खरीद संकेत उत्पन्न करता है; जब यह तेजी से चलती औसत के नीचे धीमी गति से चलती औसत को पार करता है, तो यह एक बिक्री संकेत उत्पन्न करता है।

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

इस रणनीति का मूल तर्क यह है कि तेजी से चलती औसत और धीमी गति से चलती औसत का उपयोग करके ट्रेडिंग सिग्नल बनाया जाता है। रणनीति में तेजी से चलती औसत की अवधि 12 दिन और धीमी गति से चलती औसत की अवधि 26 दिन के रूप में परिभाषित की गई है। गणना निम्नानुसार हैः

  1. 2 दिन की अवधि के साथ मूल्य सरणी के सूचकांक चलती औसत एपी की गणना करें
  2. एपी के आधार पर त्वरित चलती औसत की गणना करें
  3. धीमी गति से चलती औसत की गणना एपी के आधार पर की जाती है
  4. तेज चलती औसत रेखा और धीमी चलती औसत रेखा की तुलना करेंः
    1. धीमी गति पर फास्ट के साथ मल्टीहेड सिग्नल
    2. धीमी गति के लिए गति संकेत
  5. मूल्य और चलती औसत के बीच संबंध के आधार पर विशिष्ट व्यापारिक संकेतों का आकलन करेंः
    1. मल्टीहेड सिग्नल: फास्ट> स्लो && एपी> फास्ट
    2. हेड सिग्नलः फास्ट <स्लो && एपी <फास्ट

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

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

दोहरी गतिशील सम-रेखा तोड़ने की रणनीति के निम्नलिखित फायदे हैंः

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

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

दोहरी गतिशील सम-रेखा रणनीति के साथ कुछ जोखिम भी हैं:

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

समाधान:

  1. वर्तमान बाजार स्थितियों के अनुरूप चलती औसत की आवृत्ति का अनुकूलन
  2. अन्य संकेतकों के साथ संयोजन में जैसे कि लेनदेन की मात्रा की पुष्टि करने के लिए संकेत, झूठी दरार से बचने के लिए
  3. ट्रेंड ट्रैकिंग रणनीति का उपयोग करें, लाभ और हानि अनुपात को नियंत्रित करें, जोखिम को कम करें

अनुकूलन दिशा

दोहरी गतिशील समरेखा तोड़ने की रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः

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

संक्षेप

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

रणनीति स्रोत कोड
/*backtest
start: 2023-01-17 00:00:00
end: 2024-01-23 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("CDC Action Zone V.2", overlay=true)

// CDC ActionZone V2 29 Sep 2016
// CDC ActionZone is based on a simple 2MA and is most suitable for use with medium volatility market
// 11 Nov 2016 : Ported to Trading View with minor UI enhancement
LSB = input(title="Long/Short", defval="Long only", options=["Long only", "Short only" , "Both"])
src = input(title="Data Array",type=input.source,defval=ohlc4)
prd1=input(title="Short MA period", type=input.integer,defval=12)
prd2=input(title="Long MA period",type=input.integer,defval=26)
AP = ema(src,2)
Fast = ema(AP,prd1)
Slow = ema(AP,prd2)


Bullish = Fast>Slow
Bearish = Fast<Slow

Green = Bullish and AP>Fast
Red = Bearish and AP<Fast
Yellow = Bullish and AP<Fast
Blue = Bearish and AP>Fast

Buy = Bullish and Bearish[1]
Sell = Bearish and Bullish[1]


alertcondition(Buy,"Buy Signal","Buy")
alertcondition(Sell,"Sell Signal","Sell")


//Plot

l1=plot(Fast,"Fast", linewidth=1,color=color.red)
l2=plot(Slow,"Slow", linewidth=2,color=color.blue)
bcolor = Green ? color.lime : Red ? color.red : Yellow ? color.yellow : Blue ? color.blue : na
barcolor(color=bcolor)
fill(l1,l2,bcolor)

// === INPUT BACKTEST RANGE ===
FromYear  = input(defval = 2000, title = "From Year", minval = 1920)
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
ToYear    = input(defval = 9999, title = "To Year", minval = 1921)
ToMonth   = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 31, title = "To Day", minval = 1, maxval = 31)

// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => true // create function "within window of time"


if LSB == "Long only" and Buy and window()
    strategy.entry("L",true)
if LSB == "Long only" and Sell and window()
    strategy.close("L",qty_percent=100,comment="TP Long")
if LSB == "Both" and Buy and window()
    strategy.entry("L",true)
if LSB == "Both" and Sell and window()
    strategy.entry("S",false)
if LSB == "Short only" and Sell and window()
    strategy.entry("S",false)
if LSB == "Short only" and Buy and window()
    strategy.close("S",qty_percent=100,comment="TP Short")