সুপার বিটমুন পরিমাণগত গতির ট্রেডিং কৌশল

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

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

কৌশলটি কিভাবে কাজ করেঃ

  1. সাম্প্রতিক অস্থিরতা পরিসীমা এবং স্টপ লস স্তর গণনা করতে ATR সূচকটি ব্যবহার করুন। যখন মূল্য পূর্ববর্তী ক্যান্ডেলের স্টপ লস স্তরটি ভেঙে যায়, এটি একটি প্রবণতা বিপরীতের সংকেত দেয়।
  2. বিটকয়েন ওভারকুপ বা ওভারসোল্ড কিনা তা নির্ধারণ করতে ওয়েটেড মুভিং এভারেজ (ডাব্লুভিএফ) এবং বলিংজার ব্যান্ড ব্যবহার করুন। যদি ডাব্লুভিএফ বলিংজার উপরের ব্যান্ডের নীচে ক্রস করে, তবে বাজারটি ওভারসোল্ড হতে পারে এবং একটি দীর্ঘ সুযোগ উপস্থাপন করতে পারে।
  3. বিটকয়েন ওভারসোল্ড হয়েছে কিনা তা পরীক্ষা করার জন্য RSI ইন্ডিকেটর ব্যবহার করুন। যদি RSI দুটি ওভারসোল্ড লাইনের নিচে থাকে, তাহলে এটি ড্রপ কেনার সুযোগ উপস্থাপন করে।

বাণিজ্যের বিশেষ নিয়মঃ

  1. যদি WVF বোলিংগারের উপরের ব্যান্ডের নিচে ক্রস করে, এবং মূল্য ATR স্টপ লস স্তরের উপরে থাকে, তাহলে বিটকয়েন লং করুন।
  2. আরএসআই যদি ৫০ বা ৩০ টি ওভারসোল্ড লাইনের নিচে যায়, তাহলে বিটকয়েন শর্ট করুন।

এই কৌশলটির সুবিধাঃ

  1. দ্বিপাক্ষিক বাণিজ্যের জন্য দীর্ঘ এবং স্বল্প উভয় ক্ষমতা রয়েছে।
  2. ঝুঁকি নিয়ন্ত্রণ এবং ক্ষতি সীমিত করতে এটিআর স্টপ ব্যবহার করে।
  3. সিগন্যালের নির্ভুলতা উন্নত করতে WVF, Bollinger Bands এবং RSI একসাথে ব্যবহার করে।

এই কৌশলের ঝুঁকি:

  1. ভুল বোলিংজার এবং আরএসআই পরামিতি খারাপ সংকেত সৃষ্টি করতে পারে।
  2. হঠাৎ দামের স্পাইক বা ক্র্যাশ স্টপ লসকে ট্রিগার করতে পারে।
  3. লেনদেনের খরচ লাভজনকতাকে প্রভাবিত করে।

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


/*backtest
start: 2023-09-07 00:00:00
end: 2023-09-08 09:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Super BitMoon v1", overlay=false, commission_value = 0.25, default_qty_type=strategy.percent_of_equity, default_qty_value = 100)

/////////////////////////////////////////////////////////////
//START - SET DATE RANGE

// === BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1)
FromDay   = input(defval = 1, title = "From Day", minval = 1)
FromYear  = input(defval = 2011, title = "From Year")
ToMonth   = input(defval = 12, title = "To Month", minval = 1)
ToDay     = input(defval = 31, title = "To Day", minval = 1)
ToYear    = input(defval = 2018, title = "To Year")

startDate = time > timestamp(FromYear, FromMonth, FromDay, 00, 00)
endDate = time < timestamp(ToYear, ToMonth, ToDay, 23, 59)
withinTimeRange = true

/////////////////////////////////////////////////////////////
//END - SET DATE RANGE



/////////////////////////////////////////////////////////////
//START - INDICATORS

//ATR STOPS TREND FILTER
length = input(5, title="ATR Stop's Length")
mult = input(1, minval=0.01, title="ATR Stop's Multiple")
atr_ = atr(length)
max1 = max(nz(max_[1]), close)
min1 = min(nz(min_[1]), close)
is_uptrend_prev = nz(is_uptrend[1], true)
stop = is_uptrend_prev ? max1 - mult * atr_ : min1 + mult * atr_
vstop_prev = nz(vstop[1])
vstop1 = is_uptrend_prev ? max(vstop_prev, stop) : min(vstop_prev, stop)
is_uptrend = close - vstop1 >= 0
is_trend_changed = is_uptrend != is_uptrend_prev
max_ = is_trend_changed ? close : max1
min_ = is_trend_changed ? close : min1
vstop = is_trend_changed ? is_uptrend ? max_ - mult * atr_ : min_ + mult * atr_ : vstop1

//SYNTHETIC VIX
pd = input(10, title="Synthetic VIX's Length")
bbl = input(2, title="Synthetic VIX's Bollinger Band's Length")
mult2 = input(0.01, minval=0.01, title="Synthetic VIX's Bollinger Band's Std Dev")
wvf = ((highest(close, pd)-low)/(highest(close, pd)))*100
sDev = mult2 * stdev(wvf, bbl)
midLine = sma(wvf, bbl)
upperBand = midLine + sDev

//RSI
rsi = rsi(close, input(10,title="RSI's Length"))
os1 = input(50,title="RSI's Oversold Level 1")
os2 = input(50,title="RSI's Oversold Level 2")

/////////////////////////////////////////////////////////////
//END - INDICATORS



/////////////////////////////////////////////////////////////
//START - TRADING RULES
direction = input(defval=1, title = "Strategy Direction", minval=-1, maxval=1)
strategy.risk.allow_entry_in(direction == 0 ? strategy.direction.all : (direction < 0 ? strategy.direction.short : strategy.direction.long))

condition1 = crossunder(wvf, upperBand) and close > vstop and withinTimeRange
condition2 = crossunder(rsi, os1) and withinTimeRange
condition3 = crossunder(rsi, os2) and withinTimeRange

strategy.entry("BUY", strategy.long, when = condition1)
strategy.entry("SELL", strategy.short, when = condition2 or condition3)

/////////////////////////////////////////////////////////////
//END - TRADING RULES

আরো