ওয়েই'স বলিঙ্গার ব্যান্ডস ট্রেডিং কৌশল


সৃষ্টির তারিখ: 2023-09-13 13:55:24 অবশেষে সংশোধন করুন: 2023-09-13 13:55:24
অনুলিপি: 2 ক্লিকের সংখ্যা: 942
1
ফোকাস
1617
অনুসারী

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

নীতিমালাঃ

  1. ওয়েস্টের তরঙ্গ গণনা করুন এবং একটি স্তম্ভের চার্ট দ্বারা মূল্য প্রবণতা বিচার করুন।

  2. বুলিং ব্যান্ডেজকে ক্যালকুলেট করে, এবং যখন দাম কক্ষপথ ভেঙে যায় তখন মাঠে প্রবেশ করে।

  3. যখন ওয়েস্টার্ন তরঙ্গ একটি মাল্টিপ্লেক্স ট্রেন্ড দেখায়, যখন দাম বুলিন ব্রেডকে অতিক্রম করে তখন আরও বেশি করা হয়।

  4. যখন ওয়েস্টার্ন তরঙ্গ একটি উড়োজাহাজের প্রবণতা দেখায়, তখন দামটি বুলিনের নীচে নেমে যাওয়ার সময় খালি হয়ে যায়।

  5. বিপরীত প্রবণতা দেখা দিলে স্টপ-স্টপ-লস এবং আউট-অফ-প্লেস অবস্থান সেট করুন।

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

  1. ওয়েস্ট ওয়েভ ইন্ডিকেটর প্রধান প্রবণতা নির্দেশ করে।

  2. বুলিন বন্ডে সমালোচনামূলক SUPPORT প্রতিরোধের পয়েন্ট পাওয়া যায়।

  3. সমন্বিত ব্যবহারের সূচকগুলি বিচারককে আরও সঠিকভাবে বিচার করতে সহায়তা করে।

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

  1. ওয়েস্ট ওয়েভ এবং ব্রিন বন্ডে পিছিয়ে পড়ার সমস্যা রয়েছে, যার ফলে প্রবেশের স্থান দুর্বল।

  2. এই ধরনের লেনদেনের জন্য স্টপ লস প্রোটেকশন প্রয়োজন।

  3. এই ভূমিকম্পের মধ্যে কোন স্থায়ী প্রবণতা এবং কোন সুস্পষ্ট ব্রেক পয়েন্ট খুঁজে পাওয়া কঠিন।

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

কৌশল সোর্স কোড
/*backtest
start: 2023-08-13 00:00:00
end: 2023-09-12 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_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/
// © sharatgbhat

//@version=4
// strategy("Weis BB Strategy", overlay=false, default_qty_type = strategy.percent_of_equity, default_qty_value = 10,max_lines_count = 500, max_labels_count = 500)
maxIdLossPcnt = input(1, "Max Intraday Loss(%)", type=input.float)
// strategy.risk.max_intraday_loss(maxIdLossPcnt, strategy.percent_of_equity)

method = input(defval="ATR", options=["ATR", "Traditional", "Part of Price"], title="Renko Assignment Method")
methodvalue = input(defval=14.0, type=input.float, minval=0, title="Value")
pricesource = input(defval="Close", options=["Close", "Open / Close", "High / Low"], title="Price Source")
useClose = pricesource == "Close"
useOpenClose = pricesource == "Open / Close" or useClose
useTrueRange = input(defval="Auto", options=["Always", "Auto", "Never"], title="Use True Range instead of Volume")
isOscillating = input(defval=false, type=input.bool, title="Oscillating")
normalize = input(defval=false, type=input.bool, title="Normalize")
vol = useTrueRange == "Always" or useTrueRange == "Auto" and na(volume) ? tr : volume
op = useClose ? close : open
hi = useOpenClose ? close >= op ? close : op : high
lo = useOpenClose ? close <= op ? close : op : low

if method == "ATR"
    methodvalue := atr(round(methodvalue))
if method == "Part of Price"
    methodvalue := close / methodvalue

currclose = float(na)
prevclose = nz(currclose[1])
prevhigh = prevclose + methodvalue
prevlow = prevclose - methodvalue
currclose := hi > prevhigh ? hi : lo < prevlow ? lo : prevclose

direction = int(na)
direction := currclose > prevclose ? 1 : currclose < prevclose ? -1 : nz(direction[1])
directionHasChanged = change(direction) != 0
directionIsUp = direction > 0
directionIsDown = direction < 0

barcount = 1
barcount := not directionHasChanged and normalize ? barcount[1] + barcount : barcount
vol := not directionHasChanged ? vol[1] + vol : vol
res = barcount > 1 ? vol / barcount : vol

plot(isOscillating and directionIsDown ? -res : res, style=plot.style_columns, color=directionIsUp ? color.green : color.red, transp=75, linewidth=3, title="Wave Volume")

length = input(14, minval=1)
src = input(close, title="Source")
mult = input(2, minval=0.001, maxval=50, title="StdDev")
basis = sma(src, length)
dev = mult * stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input(0, "Offset", type = input.integer, minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))

MomentumBull = close>upper
MomentumBear = close<lower

if (MomentumBull and directionIsUp)
	strategy.entry("Buy", strategy.long)
if (MomentumBear and directionIsDown)
	strategy.entry("Sell", strategy.short)
    strategy.exit("exit","Buy",when=directionIsDown,qty_percent=100,profit=20,loss=10)
    strategy.exit("exit","Sell",when=directionIsUp,qty_percent=100,profit=20,loss=10)