ইথেরিয়াম ট্রেডিংয়ের জন্য সুপারট্রেন্ড কৌশল

লেখক:চাওঝাং, তারিখঃ 2024-01-08 14:35:37
ট্যাগঃ

img

সারসংক্ষেপ

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

কৌশলগত যুক্তি

কৌশলটি প্রবণতা অনুসরণকারী একটি ক্লাসিক সূচক ব্যবহার করে - সুপারট্রেন্ড সূচক প্রবণতা দিক নির্ধারণ করতে। সুপারট্রেন্ড সূচকটিতে দুটি লাইন রয়েছেঃ

  1. ঊর্ধ্বমুখী ট্রেন্ডে লং পজিশন ধরে রাখার জন্য স্টপ লস লাইন;
  2. ডাউনট্রেন্ড স্টপ লস লাইন ডাউনট্রেন্ডে শর্ট পজিশন ধরে রাখার জন্য।

যখন দাম আপট্রেন্ড থেকে ডাউনট্রেন্ডে চলে যায়, তখন শর্ট পজিশন খুলুন। যখন দাম ডাউনট্রেন্ড থেকে আপট্রেন্ডে চলে যায়, তখন লং পজিশন খুলুন।

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

এন্ট্রি সিগন্যাল সক্রিয় হওয়ার পর, যদি মূল্য স্টপ লস লাইনের উপরে ফিরে আসে, তাহলে স্টপ লস দিয়ে স্টপ আউট করুন।

সুবিধা

এটি নিম্নলিখিত সুবিধাগুলির সাথে একটি তুলনামূলকভাবে পরিপক্ক কৌশল অনুসরণকারী প্রবণতাঃ

  1. সুপারট্রেন্ড ইন্ডিকেটর ব্যবহার করে নির্ভরযোগ্যভাবে ট্রেন্ডের দিকনির্দেশনা নির্ধারণ করা হয়;
  2. ঝুঁকি কার্যকরভাবে নিয়ন্ত্রণ করার জন্য অভিযোজিত এটিআর স্টপ লস প্রয়োগ করুন;
  3. সহজ এবং স্পষ্ট কৌশল যুক্তি, সহজ বুঝতে এবং পরিবর্তন;
  4. ক্রিপ্টোকারেন্সি বাজারে লাভজনক।

ঝুঁকি

এই কৌশলটির সাথে কিছু ঝুঁকিও রয়েছেঃ

  1. সুপারট্রেন্ড সূচকটি ভুলভাবে বিচার করার সম্ভাবনা রয়েছে, অপ্রয়োজনীয় ক্ষতির কারণ হতে পারে;
  2. ATR স্টপ লস খুব আক্রমণাত্মক হতে পারে, মূল্য বিপরীত দ্বারা বন্ধ;
  3. ক্রিপ্টোকারেন্সি বাজারে উচ্চ অস্থিরতা স্টপ লস হওয়ার সম্ভাবনা বাড়ায়;
  4. কিছু এক্সচেঞ্জে লেনদেনের জন্য উচ্চতর ফি চূড়ান্ত লাভজনকতাকে প্রভাবিত করে।

উপরের ঝুঁকিগুলি হ্রাস করার জন্য, এটিআর সহগটি সামঞ্জস্য করা যেতে পারে, অথবা অন্যান্য সূচকগুলির সাথে ফিল্টার যুক্ত করা যেতে পারে। স্টপ লস বাফারও বিবেচনা করা যেতে পারে।

উন্নতির দিকনির্দেশ

আরও উন্নতির সুযোগ রয়েছে:

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

সিদ্ধান্ত

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


/*backtest
start: 2023-01-01 00:00:00
end: 2024-01-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4 
strategy("SuperTrend Strategy", 
     overlay=true, 
     initial_capital=2e3, 
     process_orders_on_close=true, 
     commission_type=strategy.commission.percent, 
     commission_value=0.1 
     ) 
  
length = input(title="ATR Period", type=input.integer, defval=21) 
mult = input(title="ATR Multiplier", type=input.float, step=.25, defval=6.2) 
wicks = input(title="Take Wicks into Account ?", type=input.bool, defval=false) 
  
useDate = input(title="Start from Specific Date ?", defval=false) 
yearStart = input(title="Start Year", defval=2019) 
monthStart = input(title="Start Month", minval=1, maxval=12, defval=1) 
dayStart = input(title="Start Day", minval=1, maxval=31, defval=1) 
  
startTime = timestamp(yearStart, monthStart, dayStart, 0, 0) 
startFrom = useDate ? time(timeframe.period) >= startTime : true 
  
atr = mult * ta.atr(length) 
  
longStop = hl2 - atr 
longStopPrev = nz(longStop[1], longStop) 
longStop := (wicks ? low[1] : close[1]) > longStopPrev ? math.max(longStop, longStopPrev) : longStop 
  
shortStop = hl2 + atr 
shortStopPrev = nz(shortStop[1], shortStop) 
shortStop := (wicks ? high[1] : close[1]) < shortStopPrev ? math.min(shortStop, shortStopPrev) : shortStop 
  
dir = 1 
dir := nz(dir[1], dir) 
dir := dir == -1 and (wicks ? high : close) > shortStopPrev ? 1 : dir == 1 and (wicks ? low : close) < longStopPrev ? -1 : dir 
  
longColor = color.green 
shortColor = color.red 
  
plot(dir == 1 ? longStop : na, title="Long Stop", style=plot.style_linebr, linewidth=2, color=longColor) 
plotshape(dir == 1 and dir[1] == -1 ? longStop : na, title="Long Start", location=location.absolute, style=shape.circle, size=size.tiny, color=longColor, transp=0) 
  
plot(dir == 1 ? na : shortStop, title="Short Stop", style=plot.style_linebr, linewidth=2, color=shortColor) 
plotshape(dir == -1 and dir[1] == 1 ? shortStop : na, title="Short Start", location=location.absolute, style=shape.circle, size=size.tiny, color=shortColor, transp=0) 
  
longCondition = dir[1] == -1 and dir == 1 
if longCondition and startFrom 
    strategy.entry("Long", strategy.long, stop=longStop) 
else 
    strategy.cancel("Long") 
  
shortCondition = dir[1] == 1 and dir == -1 
if shortCondition and startFrom 
    strategy.entry("Short", strategy.short, stop=shortStop) 
else 
    strategy.cancel("Short")
    

আরো