यह रणनीति ईएमए क्रॉसओवर और आरएसआई छिपे हुए तेजी से विचलन संकेतों के आधार पर लंबी पोजीशन खोलती है ताकि एक ऊपर की प्रवृत्ति की शुरुआत की पहचान की जा सके। ईएमए लाइनों, आरएसआई संकेतक और के-लाइन क्लोजिंग की कीमतों का संयोजन एक ऊपर की गति सुनिश्चित करने के लिए दोहरी पुष्टि प्रदान करता है। यह रणनीति मध्यम-लंबी अवधि के रुझानों का पालन करने और मूल्य समेकन के बाद लंबी पोजीशन खोलने के लिए उपयुक्त है।
ईएमए रणनीतिः प्रवृत्ति की दिशा निर्धारित करने के लिए 50-पीरियड ईएमए और 250-पीरियड ईएमए के स्वर्ण क्रॉस का उपयोग करना। 50 ईएमए के ऊपर बंद होना एक लंबा संकेत देता है।
आरएसआई छिपा हुआ विचलन रणनीतिः आरएसआई कम निचले स्तरों को बनाता है जबकि मूल्य उच्च निचले स्तरों को बनाता है, शुरुआत में प्रवृत्ति उलट का संकेत देता है। पिवोट बिंदुओं की संख्या को सीमित करने से झूठे संकेत फ़िल्टर होते हैं।
के-लाइन क्लोजिंग रणनीतिः जब क्लोजिंग प्राइस 50 ईएमए लाइन से ऊपर हो तो लॉन्ग जाएं।
उपरोक्त तीन रणनीतियों का संयोजन ऊपर की ओर बढ़ने की प्रवृत्ति की शुरुआत की पहचान करता है और तदनुसार लंबी स्थिति खोलता है।
रुझान की दिशा निर्धारित करने के लिए ईएमए रेखाओं का उपयोग आरएसआई रिवर्स सिग्नल के साथ करते हुए रुझानों की शुरुआत में प्रारंभिक प्रवेश की अनुमति देता है।
ईएमए लाइनों, आरएसआई संकेतक और के-लाइन बंद होने की कीमतों से दोहरी पुष्टि प्रभावी रूप से झूठे संकेतों को फ़िल्टर करती है।
मध्यम और दीर्घकालिक रुझानों का अनुसरण करने से समेकन के बाद नए उभरते रुझानों की पहचान करना उपयुक्त हो जाता है।
जब ईएमए रेखाओं में मृत्यु क्रॉस होता है तो स्थिति बंद करें।
आरएसआई छिपे हुए विचलन की पहचान करने के लिए अनुभव की आवश्यकता होती है, अनुचित पैरामीटर ट्यूनिंग से गायब या झूठे संकेत हो सकते हैं।
विभिन्न व्यापारिक साधनों के लिए मापदंडों का अनुकूलन आवश्यक है।
प्रवृत्ति निर्धारण की बेहतर सटीकता के लिए ईएमए मापदंडों को गतिशील रूप से समायोजित करें।
बेहतर छिपे हुए विचलन संकेत की सटीकता के लिए आरएसआई मापदंडों को ठीक से समायोजित करें।
जोखिम को नियंत्रित करने के लिए एटीआर या प्रतिशत स्टॉप जैसे स्टॉप लॉस तंत्र जोड़ें।
नीचे की ओर रुझानों के व्यापार के लिए लघु पदों के लिए रणनीतियाँ विकसित करें।
यह रणनीति प्रवृत्ति निर्धारण के लिए ईएमए रेखाओं और सटीकता बढ़ाने के लिए आरएसआई संकेतों को जोड़ती है। यह समेकन के बाद नए ऊपर के रुझानों की पहचान करती है। उचित पैरामीटर ट्यूनिंग और जोखिम प्रबंधन के साथ, यह अच्छे परिणाम प्राप्त कर सकती है। सरल चलती औसत रणनीतियों की तुलना में, इसमें बेहतर जीत दरों के साथ रुझानों को पकड़ने में अधिक सटीकता है। कुल मिलाकर यह एक व्यावहारिक प्रवृत्ति निम्नलिखित रणनीति है।
/*backtest start: 2024-01-25 00:00:00 end: 2024-02-01 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title="EMA RSI ATR Hidden Div Strat", shorttitle="Hidden Div Strat", overlay = true, pyramiding = 0, max_bars_back=3000, calc_on_order_fills = false, commission_type = strategy.commission.percent, commission_value = 0, default_qty_type = strategy.percent_of_equity, default_qty_value = 10, initial_capital=5000, currency=currency.USD) // Time Range FromMonth=input(defval=1,title="FromMonth",minval=1,maxval=12) FromDay=input(defval=1,title="FromDay",minval=1,maxval=31) FromYear=input(defval=2020,title="FromYear",minval=2016) ToMonth=input(defval=1,title="ToMonth",minval=1,maxval=12) ToDay=input(defval=1,title="ToDay",minval=1,maxval=31) ToYear=input(defval=9999,title="ToYear",minval=2017) start=timestamp(FromYear,FromMonth,FromDay,00,00) finish=timestamp(ToYear,ToMonth,ToDay,23,59) window()=>true // Bar's time happened on/after start date? afterStartDate = time >= start and time<=finish?true:false //EMA'S emasrc = close len1 = input(50, minval=1, title="EMA1") ema1 = ema(emasrc, len1) col1 = color.white len2 = input(250, minval=1, title="EMA2") ema2 = ema(emasrc, len2) col2 = color.yellow //Plots plot(ema1, title="EMA1", linewidth=1, color=col1) plot(ema2, title="EMA2", linewidth=1, color=col2) //Stoch periodK = input(4, title="K", minval=1) periodD = input(4, title="D", minval=1) smoothK = input(3, title="Smooth", minval=1) k = sma(stoch(close, high, low, periodK), smoothK) d = sma(k, periodD) //Hidden Divergence Indikator len = input(title="RSI Period", minval=1, defval=14) src = input(title="RSI Source", defval=close) lbR = input(title="Pivot Lookback Right", defval=1) lbL = input(title="Pivot Lookback Left", defval=19) rangeUpper = input(title="Max of Lookback Range", defval=20) rangeLower = input(title="Min of Lookback Range", defval=4) hiddenBullColor = color.new(color.green, 80) textColor = color.white noneColor = color.new(color.white, 100) osc = rsi(src, len) plFound = na(pivotlow(osc, lbL, lbR)) ? false : true phFound = na(pivothigh(osc, lbL, lbR)) ? false : true _inRange(cond) => bars = barssince(cond == true) rangeLower <= bars and bars <= rangeUpper //------------------------------------------------------------------------------ // Hidden Bullish // Osc: Lower Low oscLL = osc[lbR] < valuewhen(plFound, osc[lbR], 1) and _inRange(plFound[1]) // Price: Higher Low priceHL = low[lbR] > valuewhen(plFound, low[lbR], 1) hiddenBullCond = priceHL and oscLL and plFound //buy Conditions buyhiddenbull = hiddenBullCond[1] or hiddenBullCond[2] or hiddenBullCond[3] or hiddenBullCond[4] or hiddenBullCond[5] or hiddenBullCond[6] or hiddenBullCond[7] or hiddenBullCond[8] or hiddenBullCond[9] or hiddenBullCond[10] emacondition = ema1 > ema2 upcondition = close[1] > ema1[1] and ema2[1] and close[2] > ema1[2] and ema2[2] and close[3] > ema1[3] and ema2[3] crossup = k[0] >= d[0] and k[1] <= d[1] longcondition = emacondition and upcondition and crossup and buyhiddenbull if (afterStartDate) strategy.entry("Long", strategy.long, when = longcondition) //TakeProfit, StopLoss lowest low profitfactor = input(title="Profitfactor", type=input.float, step=0.1, defval=1.6) loLen = input(title="Lowest Low Lookback", type=input.integer, defval=38, minval=2) stop_level = lowest(low, loLen)[1] bought = strategy.position_size[1] < strategy.position_size barsbought = barssince(bought) if strategy.position_size>0 profit_level = strategy.position_avg_price + ((strategy.position_avg_price - stop_level[barsbought])*profitfactor) strategy.exit(id="TP/ SL", stop=stop_level[barsbought], limit=profit_level)