আলফা ট্রেন্ড অ্যাডাপ্টিভ এটিআর চ্যানেল ব্রেকআউট কৌশল

লেখক:চাওঝাং, তারিখঃ ২০২৩-০৯-১১ ১৪ঃ২৭ঃ৫৪
ট্যাগঃ

আলফা ট্রেন্ড কৌশলটি মূল্যের প্রবণতার দিক ধরে রাখতে এবং চ্যানেলের ব্রেকআউটের উপর ভিত্তি করে প্রবণতা অনুসরণ করতে একটি অভিযোজিত এটিআর চ্যানেল ব্যবহার করে। বিশেষত, এটি এটিআর ভিত্তিক একটি গতিশীল চ্যানেল তৈরি করে, উপরের ব্যান্ডটি নিম্ন বিয়োগ এটিআর মান এবং নিম্ন ব্যান্ডটি উচ্চ প্লাস এটিআর মান। দামটি উপরের ব্যান্ডের উপরে ভাঙলে দীর্ঘ এন্ট্রি নেওয়া হয় এবং দামটি নিম্ন ব্যান্ডের নীচে ভাঙলে সংক্ষিপ্ত এন্ট্রি নেওয়া হয়।

এটিআর বাজারের অস্থিরতা এবং গতিকে রিয়েল-টাইমে প্রতিফলিত করে। উপরের এবং নীচের ব্যান্ড দ্বারা গঠিত চ্যানেলটি মূল্যের গতি এবং শক্তি পরিমাপ করতে পারে। ব্রেকআউটগুলি সম্ভাব্য প্রবণতা বিপরীত বা ত্বরণকে নির্দেশ করে, প্রবণতা অনুসরণ করা যুক্তিসঙ্গত করে তোলে। আলফা ট্রেন্ডের সুবিধা হ'ল এটিআর এর অভিযোজনযোগ্যতা ব্যবহার করে দামের পরিবর্তনগুলি ক্যাপচার করা, পাশাপাশি প্রবণতার দিক নির্ধারণের জন্য আরএসআইয়ের মতো অন্যান্য সূচকগুলিকে একত্রিত করে, প্রবেশের নির্ভুলতা উন্নত করে।

তবে কিছু বিষয় লক্ষ্য করা দরকার। এটিআর নিজেই বিলম্বিত বৈশিষ্ট্য রয়েছে, যা প্রবণতা বিপরীত হওয়ার পরে এন্ট্রি হতে পারে। এছাড়াও, স্টপ লস ব্যবহার না করা বড় ড্রডাউনগুলির দিকে পরিচালিত করে। অবশেষে, এটিআর সময়ের মতো পরামিতিগুলি বিভিন্ন পণ্য এবং সময়সীমার জন্য অপ্টিমাইজেশনের প্রয়োজন।

সংক্ষেপে, আলফা ট্রেন্ডের গতিশীল প্রবণতা বিপরীত পয়েন্টগুলি সনাক্তকরণে অনন্য শক্তি রয়েছে, তবে স্টপ, সাইজিং পজিশন এবং পরামিতি টিউনিং সহ লাইভ ট্রেডিংয়ের জন্য কঠোর ঝুঁকি ব্যবস্থাপনা এখনও প্রয়োজন। সঠিক ঝুঁকি নিয়ন্ত্রণের সাথে, এই কৌশলটি দীর্ঘমেয়াদে সফলভাবে প্রয়োগ করা যেতে পারে।


/*backtest
start: 2023-01-01 00:00:00
end: 2023-04-10 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"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 Strategy", shorttitle='ATst', overlay=true, format=format.price, precision=2, margin_long=100, margin_short=100)
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=false)
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
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = sellSignalk
if (shortCondition)
    strategy.entry("Short", strategy.short)
 

আরো