মাল্টিপল ট্রেন্ড ট্র্যাকিং কৌশলটি স্টকগুলির দীর্ঘ ও স্বল্পমেয়াদী প্রবণতা সনাক্ত করতে এবং ট্রেন্ড ট্র্যাকিং ট্রেডিং পরিচালনা করতে MACD, RSI, ATR এবং DEMA চারটি সূচককে ব্যাপকভাবে ব্যবহার করে। এই কৌশলটি ব্রেকআউট ট্রেডিং এবং ট্রেন্ড ট্র্যাকিং ট্রেডিংয়ের সুবিধাগুলি একত্রিত করে, যা স্বল্পমেয়াদে আরও ভাল এন্ট্রি পয়েন্ট খুঁজে পাওয়ার সময় দীর্ঘমেয়াদী প্রবণতা ক্যাপচার করতে পারে।
এমএসিডি হ'ল মুভিং এভারেজ কনভার্জেন্স ডিভার্জেন্স, যা একটি প্রবণতা অনুসরণকারী সূচক। এমএসিডি একটি দ্রুত চলমান গড় রেখা এবং একটি ধীর চলমান গড় রেখার সমন্বয়ে গঠিত, সাধারণত দ্রুত রেখার জন্য 12 দিনের ইএমএ, ধীর রেখার জন্য 26 দিনের ইএমএ এবং সিগন্যাল লাইনকে এমএসিডির 9 দিনের ইএমএ হিসাবে ব্যবহার করে। যখন এমএসিডি সিগন্যাল লাইনের উপরে অতিক্রম করে, এটি একটি ক্রয় সংকেত, এবং যখন নীচে অতিক্রম করে, এটি একটি বিক্রয় সংকেত। এই কৌশলটি প্রবণতার দিক নির্ধারণের জন্য এমএসিডি সোনার ক্রস এবং মৃত ক্রস ব্যবহার করে।
আরএসআই এর সংক্ষিপ্ত রূপ হল রিলেটিভ স্ট্রেনথ ইনডেক্স, যা একটি স্টক এর ওভারবয়ড এবং ওভারসোল্ড অবস্থাকে প্রতিফলিত করে। আরএসআই নির্ধারণ করে যে কোনও স্টক একটি নির্দিষ্ট সময়ের মধ্যে গড় লাভ এবং গড় ক্ষতির তুলনা করে ওভারবয়ড বা ওভারসোল্ড হয়েছে কিনা।
এই কৌশলটি ট্রেন্ড ট্র্যাকিং এবং ব্রেকআউট ট্রেডিং উভয়কেই বিবেচনা করে MACD, RSI, ATR এবং DEMA চারটি সূচককে ব্যাপকভাবে ব্যবহার করে, যা ট্রেন্ডের মধ্যে আরও ভাল এন্ট্রি পয়েন্ট খুঁজে পেতে পারে। প্রধান সুবিধা হলঃ
এমএসিডি কার্যকরভাবে শেয়ারের মূল্যের মধ্যম ও দীর্ঘমেয়াদী প্রবণতা এবং পরিবর্তন চিহ্নিত করতে পারে।
আরএসআই নির্ধারণ করতে পারে যে একটি স্টক কি স্বল্পমেয়াদে বেশি ক্রয় বা বেশি বিক্রি হয়েছে যাতে ট্রেন্ড রিভার্স পয়েন্টগুলিতে উচ্চতার পিছনে দৌড়ানো এবং সর্বনিম্ন বিক্রয় এড়ানো যায়।
এটিআর গতিশীলভাবে স্টপ লস পজিশন সামঞ্জস্য করে যাতে কার্যকরভাবে একক ক্ষতি নিয়ন্ত্রণ করা যায়।
DEMA একটি সহায়ক বিচার সূচক হিসেবে কাজ করে কিছু শব্দ ফিল্টার করার জন্য।
একাধিক সূচকের সংমিশ্রণ ট্রেডিং সিগন্যালের নির্ভরযোগ্যতা বাড়াতে পারে।
এই কৌশলের কিছু ঝুঁকিও রয়েছেঃ
একাধিক সূচক সংমিশ্রণে বিভিন্নতা দেখা দিতে পারে, যা ভুল ট্রেডিং সংকেত দেয়।
এটিআর একটি গতিশীল স্টপ লস সূচক হিসাবে ক্ষতির ফলে বড় ওঠানামাতে ভাঙ্গার প্রবণতা রয়েছে।
প্রবণতা ফিল্টার হিসেবে ডেমা কিছু শক্তিশালী স্বল্পমেয়াদী ট্রেডিং সুযোগ ফিল্টার করতে পারে।
ভুল কৌশল পরামিতিগুলি ঘন ঘন ট্রেডিং, লেনদেনের ব্যয় বৃদ্ধি এবং স্লিপিং ক্ষতির দিকে পরিচালিত করতে পারে।
ঝুঁকি নিয়ন্ত্রণের জন্য, সূচক পরামিতিগুলি সেই অনুযায়ী সামঞ্জস্য করা যেতে পারে। নিশ্চিতকরণের জন্য আরও সহায়ক বিচার সূচকগুলিও প্রবর্তন করা যেতে পারে। পরিমাণগত ট্রেডিং কৌশলগুলির বিকাশের জন্য historicalতিহাসিক ডেটা, শক্তিশালী ব্যাকটেস্টিং এবং বিচক্ষণ ঝুঁকি ব্যবস্থাপনার সূক্ষ্ম বিশ্লেষণের প্রয়োজন। আমি নির্দিষ্ট পদক্ষেপের পরামর্শ দিতে পারি না, তবে সুনির্দিষ্ট কৌশল বিকাশের নীতিগুলিতে মনোনিবেশ করার পরামর্শ দিতে পারি।
কৌশলটি নিম্নলিখিত দিকগুলিতেও অপ্টিমাইজ করা যেতে পারেঃ
সর্বোত্তম পরামিতি খুঁজে পেতে বিভিন্ন পরামিতি সমন্বয় পরীক্ষা করুন।
স্টপ লস কৌশল যেমন চলমান স্টপ লস, গড় স্টপ লস ইত্যাদি যোগ করুন যাতে ঝুঁকি নিয়ন্ত্রণ করা যায়।
সিগন্যালের নির্ভুলতা বাড়ানোর জন্য কেডিজে, বোলিংজার ব্যান্ড ইত্যাদির মতো আরও সহায়ক বিচার সূচক প্রবর্তন করা।
আরও ভাল এন্ট্রি পয়েন্ট খুঁজে বের করার জন্য ব্রেকআউট কৌশলগুলিকে একত্রিত করে প্রবেশের সময় নির্বাচনগুলি অনুকূল করুন।
ষাঁড় এবং ভালুকের বাজারগুলির জন্য পৃথক পরামিতি।
অভিযোজনযোগ্যতা বাড়াতে স্টকের বৈশিষ্ট্য অনুযায়ী মডেল তৈরি করুন।
মাল্টিপল ট্রেন্ড ট্র্যাকিং কৌশলটি এমএসিডি, আরএসআই, এটিআর এবং ডিইএমএ চারটি সূচককে একীভূত করে, প্রবণতা ট্র্যাকিং এবং প্রবণতা ব্রেকআউটের জৈবিক সমন্বয় অর্জন করে। একক সূচক কৌশলগুলির তুলনায়, এই কৌশলটি আরও নির্ভরযোগ্য ট্রেডিং সংকেত সরবরাহ করতে পারে এবং নির্দিষ্ট মিথ্যা সংকেতগুলি এড়াতে পারে। প্যারামিটার অপ্টিমাইজেশন, স্টপ লস কৌশল, সহায়ক রায় ইত্যাদির মাধ্যমে কৌশল কর্মক্ষমতা আরও উন্নত করা যেতে পারে। এই কৌশলটি উচ্চতর প্রবণতা স্যুইচিং ক্ষমতা প্রয়োজন পরিমাণগত ট্রেডিংয়ের জন্য উপযুক্ত এবং দীর্ঘমেয়াদী ট্র্যাকিং এবং অপ্টিমাইজেশনের মূল্যবান একটি প্রতিশ্রুতিশীল কৌশল ধারণা।
/*backtest start: 2022-11-10 00:00:00 end: 2023-11-16 00:00:00 period: 1d basePeriod: 1h 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/ // © prim722 // © OTS Music //@version=4 strategy("Atrend by OTS", overlay=true) fastLength = input(12) slowlength = input(26) MACDLength = input(9) MACD = ema(close, fastLength) - ema(close, slowlength) aMACD = ema(MACD, MACDLength) delta = MACD - aMACD if (crossover(delta, 0)) strategy.entry("MACD buy", strategy.long, comment="MACD buy") if (crossunder(delta, 0)) strategy.entry("MACD sell", strategy.short, comment="MACD sell") //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr) length = input( 18 ) overSold = input( 30 ) overBought = input( 70 ) price = close vrsi = rsi(price, length) co = crossover(vrsi, overSold) cu = crossunder(vrsi, overBought) if (not na(vrsi)) if (co) strategy.entry("RSI buy", strategy.long, comment="RSI buy") if (cu) strategy.entry("RSI sell", strategy.short, comment="RSI sell") //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr) Periods = input(title="ATR Period", type=input.integer, defval=10) src = input(hl2, title="Source") Multiplier = input(title="ATR Multiplier", type=input.float, step=0.1, defval=3.0) changeATR= input(title="Change ATR Calculation Method ?", type=input.bool, defval=true) showsignals = input(title="Show Buy/Sell Signals ?", type=input.bool, defval=false) highlighting = input(title="Highlighter On/Off ?", type=input.bool, defval=false) atr2 = sma(tr, Periods) atr= changeATR ? atr(Periods) : atr2 up=src-(Multiplier*atr) up1 = nz(up[1],up) up := close[1] > up1 ? max(up,up1) : up dn=src+(Multiplier*atr) dn1 = nz(dn[1], dn) dn := close[1] < dn1 ? min(dn, dn1) : dn trend = 1 trend := nz(trend[1], trend) trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend upPlot = plot(trend == 1 ? up : na, title="Up Trend", style=plot.style_line, linewidth=2, color=color.white) buySignal = trend == 1 and trend[1] == -1 plotshape(buySignal ? up : na, title="UpTrend Begins", location=location.absolute, style=shape.circle, size=size.tiny, color=color.green, transp=0) plotshape(buySignal and showsignals ? up : na, title="", text="", location=location.absolute, style=shape.labelup, size=size.tiny, color=color.white, textcolor=color.white, transp=0) dnPlot = plot(trend == 1 ? na : dn, title="Down Trend", style=plot.style_line, linewidth=2, color=color.gray) sellSignal = trend == -1 and trend[1] == 1 plotshape(sellSignal ? dn : na, title="DownTrend Begins", location=location.absolute, style=shape.circle, size=size.tiny, color=color.red, transp=0) plotshape(sellSignal and showsignals ? dn : na, title="", text="", location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.red, textcolor=color.white, transp=0) mPlot = plot(ohlc4, title="", style=plot.style_circles, linewidth=0) longFillColor = highlighting ? (trend == 1 ? color.white : color.white) : color.white shortFillColor = highlighting ? (trend == -1 ? color.gray : color.white) : color.white fill(mPlot, upPlot, title="UpTrend Highligter", color=longFillColor) fill(mPlot, dnPlot, title="DownTrend Highligter", color=shortFillColor) alertcondition(buySignal, title="ATrend Buy", message="ATrend Buy!") alertcondition(sellSignal, title="ATrend Sell", message="ATrend Sell!") changeCond = trend != trend[1] alertcondition(changeCond, title="ATrend Direction Change", message="ATrend has changed direction!") length1 = input(25, minval=1) srcb = input(close, title="Source") e1 = ema(srcb, length1) e2 = ema(e1, length) dema = 2 * e1 - e2 plot(dema, "DEMA", color.red)