गति सुचारू चलती औसत रेखा और चलती औसत रेखा क्रॉसओवर रणनीति

लेखक:चाओझांग, दिनांकः 2023-11-27 17:35:09
टैगः

img

अवलोकन

यह रणनीति ट्रेडिंग सिग्नल उत्पन्न करने के लिए मोमेंटम स्मूथ मूविंग एवरेज लाइन (एएलएमए) और दो एक्सपोनेंशियल मूविंग एवरेज लाइन (ईएमए) के क्रॉसओवर का उपयोग करती है।

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

गति ALMA रेखा

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

तेज और धीमी ईएमए क्रॉसओवर

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

स्टोकैस्टिक आरएसआई

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

लाभ विश्लेषण

रुझानों के अनुसार व्यापार करना

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

समायोज्य मापदंड

ईएमए और एएलएमए मापदंडों की अवधि समायोज्य स्थान प्रदान करती है। उपयोगकर्ता अपनी आवश्यकताओं के अनुसार मापदंडों को अनुकूलित कर सकते हैं ताकि रणनीति को विभिन्न बाजार वातावरणों के अनुकूल बनाया जा सके।

स्टॉप लॉस और ले लाभ तंत्र

इस रणनीति में अंतर्निहित स्टॉप लॉस और टेक प्रॉफिट सेटिंग्स हैं। फ्लोटिंग स्टॉप लॉस का उपयोग करने से स्टॉप लॉस का पीछा करने की संभावना कम हो सकती है; लाभ लेने की सेटिंग्स लाभ में लॉक कर सकती हैं और लाभ को बाहर निकालने से बच सकती हैं।

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

गलत रुझान

जटिल बाजारों में, ईएमए और एएलएमए लाइनें गलत संकेत दे सकती हैं। नुकसान को नियंत्रित करने के लिए स्टॉप लॉस पर भरोसा करें।

अनुचित पैरामीटर सेटिंग्स

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

रणनीति अनुकूलन

  1. इष्टतम मापदंडों का चयन करने के लिए ईएमए और एएलएमए की पैरामीटर सेटिंग्स का परीक्षण और अनुकूलन करें।

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

  3. जोखिम नियंत्रण और लाभप्रदता के बीच संतुलन खोजने के लिए स्टॉप लॉस परिमाण को अनुकूलित करें।

  4. अधिक बाजारों में रणनीति लागू करने के लिए विभिन्न किस्मों और चक्र मापदंडों का परीक्षण करें।

सारांश

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


/*backtest
start: 2022-11-20 00:00:00
end: 2023-11-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5

////Arranged by @ClassicScott
//Strategy Created by @CheatCode1


strategy('ALMA/EMA Strategy', shorttitle='ALMA/EMA Strategy', overlay=true )



////Source Selection & ALMA Variables

//Dominant Momentum ALMA
dsource = input.source(close, title='Source', group='Dominant ALMA')
dperiod = input.int(title='Period', defval=130, group='Dominant ALMA')
doffset = input.float(title='Offset', step=0.025, defval=0.775, group='Dominant ALMA')
dsigma = input.float(title='Sigma', step=0.5, defval=4.5, group='Dominant ALMA')

dalma = ta.alma(dsource, dperiod, doffset, dsigma)

dalma_up_color = input.color(#66bb6a, 'Going Up!', group='Dominant ALMA', inline = '1')
dalma_down_color = input.color(#ef5350, 'Going Down :(', group='Dominant ALMA', inline = '1')
dcolor = close[1] > dalma ? dalma_up_color : dalma_down_color

////ALMA Plots
plot(dalma, color=dcolor, style=plot.style_stepline, linewidth=2, title='Dominant Momentum MA')



//Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1

//Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1 //Strategy by @CheatCode1

cheatcode = input.bool(true, '-----------CHEATC0DE1------------', group = 'Strategy Inputs', confirm = true)

//Variable Declerations/Plot Assingments

inp1 = input.int(49, 'Slow Ema Length', 1, 100, group = 'Strategy Inputs', confirm = true)
inp2 = input.int(9, 'Fast Ema Length', 1, 200, group = 'Strategy Inputs', confirm = true)
inp3 = int(200)
sma1 = ta.sma(close, inp3)
ema1 = ta.ema(close, inp1)
ema2 = ta.ema(close, inp2)

eplot1 = plot(ema1, 'Slow Ema', color.aqua, 1,  plot.style_linebr)
eplot2 = plot(ema2, 'Fast Ema', color.yellow, 1,  plot.style_linebr)
splot1 = plot(sma1, 'Long MA', close[1] < sma1 ? color.red:color.green, 1, plot.style_line, display = display.none)

cross1 = ta.crossover(ema1, ema2)
cross2 = ta.crossunder(ema1, ema2)

plotchar(cross1, '', '↑', location.belowbar,  close[1] > dalma and dalma > sma1 ? na:color.green, size = size.normal, editable = false)
plotchar(cross2, '', '↓', location.abovebar, close[1] < dalma and dalma < sma1 ? na:color.red, size = size.normal, editable = false)
bgcolor(cross1 and close[1] > dalma ? color.new(color.green, 80):cross2 and close[1] < dalma ? color.new(color.red, 80):na)

valueL = ta.valuewhen(cross1 and close[1] > dalma, close, 0)
valueS = ta.valuewhen(cross2 and close[1] < dalma, close, 0)

//Entries

if cross1 and close[2] > dalma[2] and close[1] > dalma[1]
    strategy.entry('Long', strategy.long)
if cross2 and close[2] < dalma[2] and close[1] < dalma[1]
    strategy.entry('Short', strategy.short)
    
//StochRsi
    
smoothK = input.int(3, "K", minval=1)
smoothD = input.int(15, "D", minval=1)
lengthRSI = input.int(14, "RSI Length", minval=1)
lengthStoch = input.int(8, "Stochastic Length", minval=1)
src = input(close, title="RSI Source")
rsi1 = ta.rsi(src, lengthRSI)
k = ta.sma(ta.stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = ta.sma(k, smoothD)

//Cancellations

if k > 75
    strategy.cancel('Long')
if k < 25
    strategy.cancel('Short')
    
//Closures

if ta.crossunder(k, d) and k > 92
    strategy.close('Long')
if ta.crossover(k,d) and k < 8
    strategy.close('Short')

//Exit Percents

takeP = input.float(3, title='Take Profit', group = 'Take Profit and Stop Loss') / 100
stopL = input.float(5.49, title = 'Stop Loss', group = 'Take Profit and Stop Loss')/100
// Pre Directionality

Stop_L = strategy.position_avg_price * (1 - stopL)

Stop_S = strategy.position_avg_price * (1 + stopL)

Take_S= strategy.position_avg_price * (1 - takeP)

Take_L = strategy.position_avg_price * (1 + takeP)
     
     
//Post Excecution
if strategy.position_size > 0
    strategy.exit("Flat", limit=Take_L, stop = Stop_L)

if strategy.position_size < 0
    strategy.exit("Flat", limit=Take_S, stop = Stop_S)


अधिक