द्विदिश हॉल मूविंग एवरेज ट्रेडिंग रणनीति


निर्माण तिथि: 2023-12-11 11:30:15 अंत में संशोधित करें: 2023-12-11 11:30:15
कॉपी: 0 क्लिक्स: 826
1
ध्यान केंद्रित करना
1621
समर्थक

द्विदिश हॉल मूविंग एवरेज ट्रेडिंग रणनीति

अवलोकन

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

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

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

मध्य ट्रैक:Mode{modeSwitch, src, len) ट्रैक पर: HULL[0] नीचे ट्रैकः HULL[2]

यहाँ Mode फ़ंक्शन Hull Moving Average के विभिन्न रूपों को चुनता है, जिसमें HMA, EHMA और THMA शामिल हैं।src मूल्य स्रोत को दर्शाता है और len चक्र की लंबाई को दर्शाता है।

यह रणनीति द्वि-दिशात्मक हॉल चलती औसत के मध्य-रेखा को आधार बनाती है, मूल्य और मध्य-रेखा के बीच संबंध का आकलन करती है और व्यापारिक संकेतों को तैयार करती हैः

  • जब कीमतें ऊपर की ओर जाती हैं, तो अधिक करें
  • जब कीमतें मध्य-रेखा पार कर जाती हैं, तो बंद करें

यही है, यदि वर्तमान K लाइन का समापन मूल्य मध्यरेखा के मूल्य से अधिक है, तो अगले K लाइन के उद्घाटन पर अधिक करें; यदि वर्तमान K लाइन का समापन मूल्य मध्यरेखा के मूल्य से कम है, तो अगले K लाइन के उद्घाटन पर बराबरी करें।

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

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

  1. एक एकल रेखीय रेखा के बजाय द्वि-दिशात्मक बैंड क्षेत्र का उपयोग करना बेहतर समर्थन और प्रतिरोध प्रभाव है, और यह प्रवृत्ति को ट्रैक करने के लिए भी अधिक अनुकूल है।

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

  3. पारंपरिक तकनीकी विश्लेषण के तरीकों का लाभ उठाना, समझने में आसान, स्वचालित लेनदेन के लिए उपयुक्त।

  4. रणनीति तर्क सरल और स्पष्ट है, इसे लागू करना आसान है और यह उच्च आवृत्ति एल्गोरिथ्म ट्रेडिंग के लिए उपयुक्त है।

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

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

हालांकि द्वि-दिशात्मक हॉल चलती औसत ट्रेडिंग रणनीतियों के कई फायदे हैं, कुछ जोखिमों के बारे में भी ध्यान देने की आवश्यकता हैः

  1. जब कीमतों में उतार-चढ़ाव होता है, तो अधिक स्टॉप लॉस हो सकता है। पैरामीटर को उचित रूप से समायोजित किया जा सकता है, कुछ शोर व्यापार को फ़िल्टर किया जा सकता है।

  2. यह रणनीति मुख्य रूप से ट्रेंड फॉलो करने पर आधारित होती है और कीमतों के क्षैतिज होने पर बहुत कम प्रभावी होती है।

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

  4. ट्रेडिंग सिग्नल अक्सर होते हैं और ओवर-ट्रेडिंग की संभावना होती है। स्थिति प्रबंधन और ट्रेडिंग आवृत्ति को ठीक से नियंत्रित करें।

अनुकूलन दिशा

द्वि-दिशात्मक हल चलती औसत ट्रेडिंग रणनीतियों के कुछ प्रमुख अनुकूलन हैंः

  1. हल चलती औसत के प्रकार और मापदंडों का अनुकूलन करें, विभिन्न व्यापारिक किस्मों के लिए मध्य-रेखा की संवेदनशीलता को समायोजित करें।

  2. ट्रेलिंग स्टॉप या इंक्रीमेंटल स्टॉप, एकल नुकसान को प्रभावी ढंग से नियंत्रित करने के लिए।

  3. अन्य संकेतकों के साथ संयोजन में, प्रवृत्ति की दिशा और ताकत का आकलन करें, ताकि आप फंसने से बच सकें। जैसे कि MACD, KD आदि।

  4. ट्रेडों की संख्या या रिटर्न दर के आधार पर रणनीति सक्रियण शर्तों को जोड़ना। क्लोज-आउट की संख्या को नियंत्रित करना और पोजीशन को कम करना।

  5. बहु-समय फ़्रेम संयोजन उच्च समय फ़्रेम का उपयोग करके प्रवृत्ति की दिशा निर्धारित करें, शोर से भ्रामक होने से बचें

  6. प्रवेश लॉजिक को अनुकूलित करें. प्रवेश निश्चितता को बढ़ाने के लिए कैंडल के आकार के आधार पर।

संक्षेप

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

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

//@version=4
//Basic Hull Ma Pack tinkered by InSilico 
//Converted to Strategy by DashTrader
strategy("Hull Suite Strategy", overlay=true, pyramiding=1, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills=false, slippage=0,commission_type=strategy.commission.percent,commission_value=0)
//////////////////////////////////////////////////////////////////////
// Testing Start dates
testStartYear = input(2016, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
//Stop date if you want to use a specific range of dates
testStopYear = input(2030, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)


testPeriod() =>
    time >= testPeriodStart and time <= testPeriodStop ? true : false
// Component Code Stop
//////////////////////////////////////////////////////////////////////
//INPUT
HAClose = security(heikinashi(syminfo.tickerid), timeframe.period, close)
src = input(close, title="Source")
modeSwitch = input("Hma", title="Hull Variation", options=["Hma", "Thma", "Ehma"])
length = input(55, title="Length(180-200 for floating S/R , 55 for swing entry)")
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)

//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, length)
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)
///< Ending Filler
fill(Fi1, Fi2, title="Band Filler", color=hullColor, transp=transpSwitch)
///BARCOLOR
barcolor(color = candleCol ? (switchColor ? hullColor : na) : na)


if HULL[0] > HULL[2] and testPeriod()
    strategy.entry("long", strategy.long)
if HULL[0] < HULL[2] and testPeriod()
    strategy.close("long")