বলিঙ্গার ব্যান্ডস ATR ট্রেন্ড অনুসরণ কৌশল

BB SMA ATR
সৃষ্টির তারিখ: 2024-05-15 10:50:14 অবশেষে সংশোধন করুন: 2024-05-15 10:50:14
অনুলিপি: 3 ক্লিকের সংখ্যা: 721
1
ফোকাস
1617
অনুসারী

বলিঙ্গার ব্যান্ডস ATR ট্রেন্ড অনুসরণ কৌশল

ওভারভিউ

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

কৌশল নীতি

  1. বুইলিন ব্যান্ড গণনাঃ বুইলিন ব্যান্ডের মধ্যম রেখা হিসাবে ক্লোজিং প্রাইস ব্যবহার করে সরল চলমান গড় ((SMA) গণনা করা হয় এবং ওঠানামা (স্ট্যান্ডার্ড ডিভার্জেন্স) এর উপর ভিত্তি করে ওঠানামা করা হয়।
  2. এটিআর গণনা করুনঃ এটিআর গণনা করার জন্য প্রকৃত তরঙ্গদৈর্ঘ্য ((TR)) এর চলমান গড় ব্যবহার করুন, যা চলমান ক্ষতির ভিত্তি হিসাবে ব্যবহৃত হয়।
  3. ট্রেডিং সিগন্যাল তৈরি করা: যখন দাম নীচে বুলিন ব্যান্ডের নিচে চলে যায় তখন একটি পলস সিগন্যাল তৈরি করা হয়, যখন বুলিন ব্যান্ডের উপরে উঠে যায় তখন একটি কমানোর সিগন্যাল তৈরি করা হয়; যখন দাম উপরে উঠে এটিআর মুভিং স্টপ লঙ্ঘন করে তখন একটি পলস সিগন্যাল তৈরি করা হয়, যখন এটিআর মুভিং স্টপ লঙ্ঘন করে তখন একটি কমানোর সিগন্যাল তৈরি করা হয়।
  4. সমতল অবস্থানঃ যখন একাধিক অবস্থান করা হয়, যদি দামটি সরল চলমান গড়ের উপরে উঠে যায় তবে এটি সমতল হয়; যখন একটি খালি অবস্থান করা হয়, যদি দামটি সরল চলমান গড়ের নীচে ভেঙে যায় তবে এটি খালি হয়।

কৌশলগত সুবিধা

  1. ট্রেন্ড ট্র্যাকিং: ব্রিন ব্যান্ড এবং ATR এর মাধ্যমে ট্রেন্ড ট্রেন্ডিং এবং বিভিন্ন বাজারের অবস্থার সাথে খাপ খাইয়ে নেওয়া।
  2. সময়মত স্টপঃ এটিআরকে একটি চলমান স্টপ হিসাবে ব্যবহার করে, বাজারের ওঠানামা অনুযায়ী স্টপ পজিশনটি গতিশীলভাবে সামঞ্জস্য করা যায় এবং ঝুঁকি নিয়ন্ত্রণ করা যায়।
  3. সহজ এবং ব্যবহার করা সহজঃ কৌশলগত লজিক পরিষ্কার, কম প্যারামিটার, সহজে বোঝা এবং প্রয়োগ করা যায়।

কৌশলগত ঝুঁকি

  1. প্যারামিটার সংবেদনশীলতা: ব্রিনব্যান্ড এবং এটিআর এর প্যারামিটার নির্বাচন কৌশলগত পারফরম্যান্সকে প্রভাবিত করে এবং বিভিন্ন বাজার এবং জাতের জন্য অপ্টিমাইজ করা প্রয়োজন।
  2. অস্থির বাজারঃ অস্থির বাজার পরিবেশে, ঘন ঘন ট্রেডিং সিগন্যালের ফলে অনেক বেশি লেনদেন এবং খরচ হতে পারে।
  3. প্রবণতা বিপরীতমুখী: যখন প্রবণতা বিপরীতমুখী হয়, তখন কৌশলটি একটি বড় প্রত্যাহারের কারণ হতে পারে।

কৌশল অপ্টিমাইজেশনের দিকনির্দেশনা

  1. প্যারামিটার অপ্টিমাইজেশানঃ বিভিন্ন বাজার এবং জাতের জন্য সর্বোত্তম প্যারামিটার সমন্বয় খুঁজে বের করার জন্য ব্রিনব্যান্ড এবং এটিআর এর প্যারামিটারগুলি অপ্টিমাইজ করা হয়েছে।
  2. ফিল্টারঃ অন্যান্য প্রযুক্তিগত সূচক বা মূল্য আচরণ প্যাটার্নগুলি ফিল্টার হিসাবে যুক্ত করুন, ভুল বিচার হ্রাস করুন এবং সংকেতের গুণমান উন্নত করুন।
  3. পজিশন ম্যানেজমেন্ট: বাজারের ওঠানামা বা অ্যাকাউন্টের ঝুঁকির উপর ভিত্তি করে পজিশনের গতিশীল সমন্বয়, তহবিলের ব্যবহারের দক্ষতা এবং আয়-ঝুঁকি অনুপাতের উন্নতি।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2024-04-01 00:00:00
end: 2024-04-30 23:59:59
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bollinger Bands and ATR Strategy", overlay=true)

// Veri Çekme
symbol = "AAPL"
timeframe = "D"
src = close

// Bollinger Bantları Hesaplama
len = 20
mult = 2
sum1 = 0.0, sum2 = 0.0
for i = 0 to len - 1
    sum1 += src[i]
basis = sum1 / len
for i = 0 to len - 1
    diff = src[i] - basis
    sum2 += diff * diff
dev = math.sqrt(sum2 / len)
upper_band = basis + dev * mult
lower_band = basis - dev * mult

// ATR Hesaplama
atr_period = input(10, title="ATR Period")
atr_value = 0.0
for i = 0 to atr_period - 1
    atr_value += math.abs(src[i] - src[i + 1])
atr_value /= atr_period
loss = input(1, title="Key Value (Sensitivity)")
atr_trailing_stop = src[1]
if src > atr_trailing_stop[1]
    atr_trailing_stop := math.max(atr_trailing_stop[1], src - loss * atr_value)
else if src < atr_trailing_stop[1]
    atr_trailing_stop := math.min(atr_trailing_stop[1], src + loss * atr_value)
else
    atr_trailing_stop := src - loss * atr_value

// Sinyal Üretme
long_condition  = src < lower_band and src[1] >= lower_band[1]
short_condition = src > upper_band and src[1] <= upper_band[1]
close_long  = src > basis
close_short = src < basis
buy_signal = src > atr_trailing_stop[1] and src[1] <= atr_trailing_stop[1]
sell_signal = src < atr_trailing_stop[1] and src[1] >= atr_trailing_stop[1]

if (long_condition)
    strategy.entry("Long", strategy.long, comment="Long Signal")
if (short_condition)
    strategy.entry("Short", strategy.short, comment="Short Signal")
if (close_long)
    strategy.close("Long", comment="Close Long")
if (close_short)
    strategy.close("Short", comment="Close Short")
if (buy_signal)
    strategy.entry("Long", strategy.long, comment="Buy Signal")
if (sell_signal)
    strategy.entry("Short", strategy.short, comment="Sell Signal")

// Çizim
plot(upper_band, color=#0000FF, linewidth=2, title="Upper Band")
plot(lower_band, color=#0000FF, linewidth=2, title="Lower Band")
plot(basis, color=#808080, linewidth=2, title="SMA")
plot(atr_trailing_stop, color=#FFA500, linewidth=2, title="ATR Trailing Stop")
plot(src, color=#FFA500, linewidth=2, title="Price")

// Sinyal İşaretleri
plotshape(long_condition, style=shape.arrowup, color=#00FF00, location=location.belowbar, size=size.small, title="Long Signal")
plotshape(short_condition, style=shape.arrowdown, color=#FF0000, location=location.abovebar, size=size.small, title="Short Signal")
plotshape(buy_signal, style=shape.diamond, color=#00FF00, location=location.belowbar, size=size.small, title="Buy Signal")
plotshape(sell_signal, style=shape.diamond, color=#FF0000, location=location.abovebar, size=size.small, title="Sell Signal")