हल मूविंग एवरेज क्रॉसओवर रणनीति


निर्माण तिथि: 2024-03-22 14:57:10 अंत में संशोधित करें: 2024-03-22 14:57:10
कॉपी: 2 क्लिक्स: 1150
1
ध्यान केंद्रित करना
1617
समर्थक

हल मूविंग एवरेज क्रॉसओवर रणनीति

रणनीति अवलोकन

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

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

  1. हल चलती औसत (HMA)

एचएमए की गणना प्रक्रिया इस प्रकार है:

  • मूल्य की पूर्व-गणना की गई भारित चलती औसत (WMA), जो आधे समय के लिए आवर्ती है
  • WMA के लिए WMA की गणना करें, लंबाई
  • सूत्र का उपयोग करेंः HMA = 2 * WMA (लंबाई / 2) - WMA (लंबाई)
  • उपरोक्त परिणामों के लिए फिर से WMA की गणना करें, और अंत में HMA प्राप्त करें
  1. ट्रेडिंग सिग्नल
  • खरीदें सिग्नल उत्पन्न करता है जब HMA को समापन मूल्य पर पहना जाता है
  • जब HMA बंद होने की कीमत से नीचे होता है, तो एक बेचने का संकेत उत्पन्न होता है
  1. ट्रेड सिग्नल के अनुसार ट्रेड निष्पादित करना
  • खरीदें सिग्नलः बहु-प्रमुख स्थिति खोलें
  • बेचने का संकेतः खाली पोजीशन

रणनीतिक लाभ

  1. हल चलती औसत में सरल चलती औसत और भारित चलती औसत की तुलना में कम विलंबता होती है, इसलिए यह मूल्य परिवर्तनों पर अधिक तेजी से प्रतिक्रिया करता है, जिससे रणनीति की संवेदनशीलता बढ़ जाती है।

  2. दो अलग-अलग चक्रों की एचएमए लाइनों के क्रॉसिंग के माध्यम से सिग्नल उत्पन्न करने के लिए, कुछ शोर और झूठे सिग्नल को प्रभावी ढंग से फ़िल्टर करने के लिए, सिग्नल की विश्वसनीयता में सुधार करें।

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

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

  1. हिल मूविंग एवरेज एक पिछड़ा सूचक है जो रुझान में बदलाव के शुरुआती चरणों में गलत संकेत दे सकता है।

  2. अनुचित पैरामीटर चयन से रणनीति खराब हो सकती है। बहुत लंबी अवधि के लिए चुना गया है, तो रणनीति धीमी प्रतिक्रिया देगी, और बहुत कम अवधि के लिए चुना गया है, तो बहुत अधिक झूठे संकेत हो सकते हैं।

  3. एक एकल सूचक पर आधारित सभी रणनीतियों की तरह, यह रणनीति अस्थिर बाजारों में खराब प्रदर्शन कर सकती है, जिससे अधिक झूठे संकेत और घाटे का व्यापार होता है।

अनुकूलन दिशा

  1. एचएमए क्रॉस सिग्नल की प्रभावशीलता को और अधिक पुष्टि करने के लिए अन्य तकनीकी या मौलिक संकेतकों को फ़िल्टरिंग शर्तों के रूप में पेश करने पर विचार किया जा सकता है, जैसे कि ट्रेडिंग वॉल्यूम, ट्रेंड इंडिकेटर आदि।

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

  3. स्टॉप-लॉस और स्टॉप-स्टॉप तंत्र को रणनीति में शामिल करना, जो एक ही लेनदेन के जोखिम और लाभ को नियंत्रित करता है।

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

संक्षेप

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

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

//@version=4
//Basic Hull Ma Pack tinkered by InSilico 
strategy("RKTD BETA - Hull Suite by InSilico", overlay=true)

//INPUT
src = input(close, title="Source")
modeSwitch = input("Ehma", title="Hull Variation", options=["Hma", "Thma", "Ehma"])
length = input(200, title="Length(180-200 for floating S/R , 55 for swing entry)")
lengthMult = input(1.0, title="Length multiplier (Used to view higher timeframes with straight band)")

useHtf = input(false, title="Show Hull MA from X timeframe? (good for scalping)")
htf = input("240", title="Higher timeframe", type=input.resolution)

switchColor = input(true, "Color Hull according to trend?")
candleCol = input(false,title="Color candles based on Hull's Trend?")
visualSwitch  = input(true, title="Show as a Band?")
thicknesSwitch = input(1, title="Line Thickness")
transpSwitch = input(40, title="Band Transparency",step=5)

// Alert Messages
longAlertMessage = '{"base": "BTC", "quote": "USDT", "price": ' + tostring(close) + ', "action": "long", "orderType": "market", "close":true}'
shortAlertMessage = '{"base": "BTC", "quote": "USDT", "price": ' + tostring(close) + ', "action": "short", "orderType": "market", "close":true}'

//FUNCTIONS
//HMA
HMA(_src, _length) =>  wma(2 * wma(_src, _length / 2) - wma(_src, _length), round(sqrt(_length)))
//EHMA    
EHMA(_src, _length) =>  ema(2 * ema(_src, _length / 2) - ema(_src, _length), round(sqrt(_length)))
//THMA    
THMA(_src, _length) =>  wma(wma(_src,_length / 3) * 3 - wma(_src, _length / 2) - wma(_src, _length), _length)
    
//SWITCH
Mode(modeSwitch, src, len) =>
      modeSwitch == "Hma"  ? HMA(src, len) :
      modeSwitch == "Ehma" ? EHMA(src, len) : 
      modeSwitch == "Thma" ? THMA(src, len/2) : na

//OUT
_hull = Mode(modeSwitch, src, int(length * lengthMult))
HULL = useHtf ? security(syminfo.ticker, htf, _hull) : _hull
MHULL = HULL[0]
SHULL = HULL[2]

//COLOR
hullColor = switchColor ? (HULL > HULL[2] ? #00ff00 : #ff0000) : #ff9800

//PLOT
///< Frame
Fi1 = plot(MHULL, title="MHULL", color=hullColor, linewidth=thicknesSwitch, transp=50)
Fi2 = plot(visualSwitch ? SHULL : na, title="SHULL", color=hullColor, linewidth=thicknesSwitch, transp=50)
alertcondition(crossover(MHULL, SHULL), title="Hull trending up.", message="Hull trending up.")
alertcondition(crossover(SHULL, MHULL), title="Hull trending down.", message="Hull trending down.")
///< Ending Filler
fill(Fi1, Fi2, title="Band Filler", color=hullColor, transp=transpSwitch)
///BARCOLOR
barcolor(color = candleCol ? (switchColor ? hullColor : na) : na)

// Define Buy and Sell Conditions based on crossovers
buyCondition = crossover(MHULL, SHULL)
sellCondition = crossunder(MHULL, SHULL)

// Plotting the Hull Moving Average (HMA)
plot(MHULL, title="MHULL", color=hullColor, linewidth=thicknesSwitch)
plot(SHULL, title="SHULL", color=hullColor, linewidth=thicknesSwitch, transp=transpSwitch)
fill(Fi1, Fi2, title="Band Filler", color=hullColor, transp=transpSwitch)

// Execute Strategy based on Buy and Sell Conditions
strategy.entry("Buy", strategy.long, when=buyCondition, alert_message=longAlertMessage)
strategy.entry("Sell", strategy.short, when=sellCondition, alert_message=shortAlertMessage)

// Additional elements like bar coloring remain unchanged
barcolor(color = candleCol ? (switchColor ? hullColor : na) : na)