সুপার ATR ট্রেন্ড অনুসরণ কৌশল


সৃষ্টির তারিখ: 2024-02-19 11:41:20 অবশেষে সংশোধন করুন: 2024-02-19 11:41:20
অনুলিপি: 0 ক্লিকের সংখ্যা: 669
1
ফোকাস
1617
অনুসারী

সুপার ATR ট্রেন্ড অনুসরণ কৌশল

ওভারভিউ

সুপার এটিআর ট্রেন্ড ট্র্যাকিং কৌশলটি এটিআর সূচকগুলির উপর ভিত্তি করে একটি ট্রেন্ড ট্র্যাকিং কৌশল। এটি এটিআর সূচকগুলিকে বাজারের অস্থিরতা পরিমাপ করতে এবং এটিআর এর বেশ কয়েকটি গুণকে স্টপ লিন হিসাবে ব্যবহার করে ট্রেন্ড ট্র্যাকিংয়ের জন্য ব্যবহার করে।

কৌশল নীতি

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

তারপর এটিআর মানের উপর ভিত্তি করে একটি গুণিতককে রেলের উপরে এবং নীচে গন্তব্য হিসাবে গণনা করা হয়, অর্থাৎ রেলের উপর গণনা করা হয়ঃclose - Multiplier * ATR; রেলপথের নিচে গণনাঃclose + Multiplier * ATRএটি একটি ট্রেন্ড চ্যানেল যা ATR সূচকের উপর ভিত্তি করে।

আমরা তখন সিদ্ধান্ত নিই যে বর্তমান মূল্য চ্যানেলটি ভেঙে গেছে কিনা। যদি দামটি ট্রেনে উঠে যায়, তবে এটি একটি নিম্নমুখী প্রবণতা হিসাবে বিবেচিত হবে; যদি দামটি ট্রেনে উঠে যায়, তবে এটি একটি উচ্চমুখী প্রবণতা হিসাবে বিবেচিত হবে। যখন প্রবণতাটি ভেঙে যায়, আমরা correspondingly ক্রয় এবং বিক্রয় করি।

এছাড়াও, কৌশলটি ট্রেডিংয়ের সময় উইন্ডো সেট করে, যা কেবলমাত্র নির্দিষ্ট তারিখের সময়কালের মধ্যে ট্রেড করে।

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

ট্রেন্ড ট্র্যাকিংয়ের এই কৌশলটি নিম্নলিখিত সুবিধাগুলির সাথে আসেঃ

  1. এটিআর সূচক ব্যবহার করে স্বয়ংক্রিয়ভাবে স্টপ পজিশনে সামঞ্জস্য করুন, যা কার্যকরভাবে ঝুঁকি নিয়ন্ত্রণ করতে পারে
  2. ATR সূচক শেয়ারের দামের অস্থিরতা বিবেচনা করে, স্টপ লিন আরও যুক্তিসঙ্গত
  3. চ্যানেল ব্রেক-ইন বিচার ব্যবহার করে প্রবেশের নির্ভুলতা বাড়ানো হয়েছে
  4. এটিআর গণনা করার পদ্ধতিতে পরিবর্তন করার অনুমতি দেয়, নীতির নমনীয়তা বাড়ায়
  5. ট্রেডিংয়ের সময়সীমা নির্ধারণ করুন এবং বড় ঘটনা এড়ানোর কৌশলগুলি ব্যর্থ করুন

সামগ্রিকভাবে, এটি একটি সহজ এবং কার্যকর ট্রেন্ড ট্র্যাকিং কৌশল যা ঝুঁকিগুলিকে কার্যকরভাবে নিয়ন্ত্রণ করতে পারে এবং একই সাথে আরও ভাল রিটার্ন অর্জন করতে পারে।

ঝুঁকি বিশ্লেষণ

এই কৌশলটির কিছু ঝুঁকিও রয়েছে, যার মধ্যে রয়েছেঃ

  1. বাজার যখন তীব্রভাবে পরিবর্তিত হয়, তখন এটিআর সূচকগুলি বাজারের পরিবর্তনের সাথে প্রতিক্রিয়া জানাতে পারে না, যার ফলে স্টপ লস খুব সহজ হয়
  2. বিভিন্ন মতবিরোধের ফলে, চ্যানেলের মধ্যে দামের অস্থিরতা সৃষ্টি হতে পারে, যার ফলে লেনদেনের ঝুঁকি বাড়তে পারে
  3. নির্দিষ্ট গুণক সেটিং সব জাতের জন্য উপযুক্ত নাও হতে পারে এবং বিভিন্ন জাতের জন্য পরিবর্তন প্রয়োজন
  4. setWindow ব্যবসায়ের সুযোগকে সীমাবদ্ধ করে, যদি সেট না করা হয়, তাহলে ভালো ব্যবসায়ের সুযোগ মিস হতে পারে

এই ঝুঁকিগুলি নিয়ন্ত্রণ করতে, আমরা নিম্নলিখিত পদক্ষেপগুলি গ্রহণ করতে পারিঃ

  1. এটিআর-এর উপর নির্ভরশীলতা এড়াতে অন্যান্য সূচকগুলির সাথে বাজারের অবস্থা নির্ধারণ করুন
  2. অকার্যকর ব্রেক-ইন ট্রেডিং ঝুঁকি এড়ানোর জন্য ফিল্টারিং শর্তাবলী বাড়ানো
  3. বিভিন্ন জাতের ঐতিহাসিক বৈশিষ্ট্য অনুযায়ী উপযুক্ত গুণক নির্বাচন করা
  4. সেটউইন্ডোর প্যারামিটারগুলি অনুকূলিতকরণ এবং পরীক্ষা করুন যাতে সেটউইন্ডোটি যুক্তিসঙ্গত হয়

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

এই কৌশলটি আরও উন্নত করার সুযোগ রয়েছেঃ

  1. মেশিন লার্নিং অ্যালগরিদমের মাধ্যমে গুণিতকগুলির গতিশীল অপ্টিমাইজেশান করা যায়
  2. আবেগের পরিমাপের সাথে মিলিতভাবে, একটি বহুমুখী লিভারেজ, চ্যানেলের পরিসীমা অনুকূলিতকরণ
  3. ট্রেডিং ভলিউম বৃদ্ধি বা অস্থিরতা নিশ্চিতকরণ, অকার্যকর ব্রেকডাউন এড়ানো
  4. উচ্চমানের সময় ভিত্তিক নীতিমালা ব্যবহার করে ব্যাকটেস্ট

এই অপ্টিমাইজেশানগুলি কৌশলটির স্থায়িত্ব এবং রিটার্নের হার আরও বাড়িয়ে তুলতে পারে।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2023-02-12 00:00:00
end: 2024-02-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('B厂长 @超级趋势精简优化版', overlay=true)
Periods = input(title='ATR周期', defval=10)
src = input(hl2, title='价格数据源')
Multiplier = input.float(title='ATR 乘数', step=0.1, defval=3.0)
changeATR = input(title='更改ATR计算方法', defval=true,tooltip = '默认为art否则sma(ta.tr,ATR周期)')
showsignals = input(title='显示买入/卖出信号', defval=false)
atr2 = ta.sma(ta.tr, Periods)
atr = changeATR ? ta.atr(Periods) : atr2
up = src - Multiplier * atr
up1 = nz(up[1], up)
up := close[1] > up1 ? math.max(up, up1) : up
dn = src + Multiplier * atr
dn1 = nz(dn[1], dn)
dn := close[1] < dn1 ? math.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='上涨趋势', style=plot.style_linebr, linewidth=2, color=color.new(color.green, 0))
buySignal = trend == 1 and trend[1] == -1
plotshape(buySignal and showsignals ? up : na, title='买点', text='买点', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(color.green, 0), textcolor=color.new(color.white, 0))
dnPlot = plot(trend == 1 ? na : dn, title='下跌趋势', style=plot.style_linebr, linewidth=2, color=color.new(color.red, 0))
sellSignal = trend == -1 and trend[1] == 1
plotshape(sellSignal and showsignals ? dn : na, title='卖点', text='卖点', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.red, 0), textcolor=color.new(color.white, 0))
FromMonth = input.int(defval=9, title='From Month', minval=1, maxval=12)
FromDay = input.int(defval=1, title='From Day', minval=1, maxval=31)
FromYear = input.int(defval=2018, title='From Year', minval=999)
ToMonth = input.int(defval=1, title='To Month', minval=1, maxval=12)
ToDay = input.int(defval=1, title='To Day', minval=1, maxval=31)
ToYear = input.int(defval=9999, title='To Year', minval=999)
start = timestamp(FromYear, FromMonth, FromDay, 00, 00)
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)
window() =>
    time >= start and time <= finish ? true : false
longCondition = buySignal
if longCondition and window()
    strategy.entry('BUY', strategy.long, comment = '做多')
shortCondition = sellSignal
if shortCondition and window()
    strategy.entry('SAL', strategy.short, comment = '做空')

buy1 = ta.barssince(buySignal)
sell1 = ta.barssince(sellSignal)
color1 = buy1[1] < sell1[1] ? color.green : buy1[1] > sell1[1] ? color.red : na