अल्फाट्रेंड ड्यूल ट्रैकिंग रणनीति अल्फाट्रेंड संकेतक द्वारा उत्पन्न खरीद और बिक्री संकेतों के आधार पर व्यापार करती है। यह उन क्षेत्रों में लंबी और छोटी स्थिति खोलती है जहां अल्फाट्रेंड खरीद और बिक्री संकेत उत्पन्न करता है।
अल्फ़ाट्रेंड डुअल ट्रैकिंग रणनीति का मूल अल्फ़ाट्रेंड संकेतक है। अल्फ़ाट्रेंड संकेतक अनुकूलन एटीआर और मूल्य (बंद मूल्य या वॉल्यूम भारित औसत मूल्य) के आधार पर ऊपरी और निचले बैंड की गणना करता है। विशिष्ट गणना विधि हैः
ऊपरी बैंड = निम्नतम निम्न - एटीआर * गुणक निचला बैंड = उच्चतम उच्च + एटीआर * गुणक
जहां एटीआर एक निश्चित अवधि में औसत वास्तविक रेंज है और गुणक एक समायोज्य पैरामीटर है। जब कीमत ऊपरी बैंड से ऊपर होती है, तो संकेतक रेखा ऊपरी बैंड के करीब होती है। जब कीमत निचले बैंड से नीचे होती है, तो संकेतक रेखा निचले बैंड के करीब होती है। इस प्रकार अल्फाट्रेंड एक अनुकूलन चैनल बनाता है।
अल्फ़ा ट्रेंड द्वैध ट्रैकिंग रणनीति अल्फ़ा ट्रेंड द्वारा उत्पन्न संकेतों के आधार पर लंबी और छोटी स्थिति स्थापित करती है। विशिष्ट तर्क हैः
यह गतिशील अल्फा ट्रेंड चैनल के आधार पर द्विदिशात्मक ट्रैकिंग ट्रेडिंग को पूरा करता है।
अल्फाट्रेंड ड्यूल ट्रैकिंग रणनीति का सबसे बड़ा लाभ यह है कि यह बाजार के रुझानों में परिवर्तनों को ट्रैक कर सकती है। अनुकूलन एटीआर बाजार अस्थिरता में परिवर्तन के अनुसार चैनल रेंज को समायोजित कर सकता है, अस्थिरता विस्तार के कारण पारंपरिक बोलिंगर बैंड की प्रभावशीलता खोने की समस्या से बचता है।
इसके अतिरिक्त, अल्फाट्रेंड मूल्य और मात्रा (या गति) दोनों जानकारी को जोड़ती है, जो कुछ झूठे ब्रेकआउट को फ़िल्टर करने में मदद करती है, जिससे ट्रेडिंग संकेतों की गुणवत्ता में सुधार होता है।
अल्फा ट्रेंड डुअल ट्रैकिंग रणनीति का मुख्य जोखिम विशाल बाजार उतार-चढ़ाव से आता है जो स्टॉप लॉस बिंदुओं को मार सकता है। जब असामान्य बाजार आंदोलन होता है, तो स्टॉप लॉस बिंदु टूट सकते हैं, जिससे बड़े नुकसान हो सकते हैं। एटीआर मापदंडों और स्टॉप लॉस बिंदुओं को ठीक से समायोजित करके इसे नियंत्रित करने की आवश्यकता है।
इसके अतिरिक्त, अल्फा में स्वयं कुछ पिछड़ता है। यह बाजार के मोड़ के आसपास गलत संकेत भी उत्पन्न कर सकता है। संकेतों की पुष्टि करने के लिए अन्य संकेतकों का उपयोग किया जाना चाहिए।
अल्फाट्रेंड दोहरी ट्रैकिंग रणनीति को निम्नलिखित पहलुओं में अनुकूलित किया जा सकता हैः
उपरोक्त अनुकूलन के माध्यम से, अल्फाट्रेंड रणनीति की स्थिरता और लाभप्रदता में और सुधार किया जा सकता है।
संक्षेप में, अल्फाट्रेंड ड्यूल ट्रैकिंग रणनीति बाजार में बदलाव को ट्रैक करने का एक प्रभावी तरीका है। यह पारंपरिक तकनीकी संकेतकों की प्रभावशीलता खोने की समस्या को हल करता है और संकेतों को फ़िल्टर करने के लिए वॉल्यूम जानकारी को भी शामिल करता है। उचित अनुकूलन के साथ, यह रणनीति मात्रात्मक ट्रेडिंग सिस्टम में एक शक्तिशाली उपकरण बन सकती है।
/*backtest start: 2024-01-02 00:00:00 end: 2024-02-01 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // author © KivancOzbilgic // developer © KivancOzbilgic //@version=5 strategy('AlphaTrend', shorttitle='AT', overlay=true, format=format.price, precision=2) coeff = input.float(1, 'Multiplier', step=0.1) AP = input(14, 'Common Period') ATR = ta.sma(ta.tr, AP) src = input(close) showsignalsk = input(title='Show Signals?', defval=true) novolumedata = input(title='Change calculation (no volume data)?', defval=false) upT = low - ATR * coeff downT = high + ATR * coeff AlphaTrend = 0.0 AlphaTrend := (novolumedata ? ta.rsi(src, AP) >= 50 : ta.mfi(hlc3, AP) >= 50) ? upT < nz(AlphaTrend[1]) ? nz(AlphaTrend[1]) : upT : downT > nz(AlphaTrend[1]) ? nz(AlphaTrend[1]) : downT color1 = AlphaTrend > AlphaTrend[2] ? #00E60F : AlphaTrend < AlphaTrend[2] ? #80000B : AlphaTrend[1] > AlphaTrend[3] ? #00E60F : #80000B k1 = plot(AlphaTrend, color=color.new(#0022FC, 0), linewidth=3) k2 = plot(AlphaTrend[2], color=color.new(#FC0400, 0), linewidth=3) fill(k1, k2, color=color1) buySignalk = ta.crossover(AlphaTrend, AlphaTrend[2]) sellSignalk = ta.crossunder(AlphaTrend, AlphaTrend[2]) K1 = ta.barssince(buySignalk) K2 = ta.barssince(sellSignalk) O1 = ta.barssince(buySignalk[1]) O2 = ta.barssince(sellSignalk[1]) //plotshape(buySignalk and showsignalsk and O1 > K2 ? AlphaTrend[2] * 0.9999 : na, title='BUY', text='BUY', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(#0022FC, 0), textcolor=color.new(color.white, 0)) //plotshape(sellSignalk and showsignalsk and O2 > K1 ? AlphaTrend[2] * 1.0001 : na, title='SELL', text='SELL', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.maroon, 0), textcolor=color.new(color.white, 0)) longCondition = buySignalk and showsignalsk and O1 > K2 if (longCondition) strategy.entry("BUY", strategy.long, comment = "BUY ENTRY") shortCondition = sellSignalk and showsignalsk and O2 > K1 if (shortCondition ) strategy.entry("SELL", strategy.short, comment = "SELL ENTRY") // alertcondition(buySignalk and O1 > K2, title='Potential BUY Alarm', message='BUY SIGNAL!') // alertcondition(sellSignalk and O2 > K1, title='Potential SELL Alarm', message='SELL SIGNAL!') // alertcondition(buySignalk[1] and O1[1] > K2, title='Confirmed BUY Alarm', message='BUY SIGNAL APPROVED!') // alertcondition(sellSignalk[1] and O2[1] > K1, title='Confirmed SELL Alarm', message='SELL SIGNAL APPROVED!') // alertcondition(ta.cross(close, AlphaTrend), title='Price Cross Alert', message='Price - AlphaTrend Crossing!') // alertcondition(ta.crossover(low, AlphaTrend), title='Candle CrossOver Alarm', message='LAST BAR is ABOVE ALPHATREND') // alertcondition(ta.crossunder(high, AlphaTrend), title='Candle CrossUnder Alarm', message='LAST BAR is BELOW ALPHATREND!') // alertcondition(ta.cross(close[1], AlphaTrend[1]), title='Price Cross Alert After Bar Close', message='Price - AlphaTrend Crossing!') // alertcondition(ta.crossover(low[1], AlphaTrend[1]), title='Candle CrossOver Alarm After Bar Close', message='LAST BAR is ABOVE ALPHATREND!') // alertcondition(ta.crossunder(high[1], AlphaTrend[1]), title='Candle CrossUnder Alarm After Bar Close', message='LAST BAR is BELOW ALPHATREND!')