
এই কৌশলটি একটি উচ্চমানের পরিমাণযুক্ত ট্রেডিং সিস্টেম যা বোলিংগার ব্যান্ডের উপর ভিত্তি করে তৈরি করা হয়েছে, যা একটি গতিশীল স্টপ-অফ-ড্রপ ব্যবস্থা নিয়ে গঠিত। কৌশলটির মূলটি হ’ল বাজারের গতিশীলতাকে বোলিংগার ব্যান্ডের বিপর্যয়ের মধ্য দিয়ে ধরা, এবং পয়েন্টের উপর ভিত্তি করে স্টপ-অফ-ড্রপ পরিচালনা করার জন্য। এই কৌশলটি বিভিন্ন ট্রেডিং জাতের জন্য উপযুক্ত, প্যারামিটার অপ্টিমাইজেশনের মাধ্যমে বিভিন্ন বাজারের পরিবেশের সাথে খাপ খাইয়ে নিতে পারে।
এই কৌশলটি মূলত নিম্নলিখিত মূল নীতির উপর ভিত্তি করে তৈরি করা হয়েছেঃ
এটি একটি সুনির্দিষ্টভাবে পরিকল্পিত পরিমাণগত ট্রেডিং কৌশল যা ব্রিনব্যান্ডের মাধ্যমে বাজারের সুযোগকে ধরে রাখে এবং একটি বৈজ্ঞানিক ঝুঁকি ব্যবস্থাপনার সাথে যুক্ত। কৌশলটি ভাল স্কেলযোগ্যতা এবং অভিযোজনযোগ্যতা রয়েছে যা প্রস্তাবিত অপ্টিমাইজেশান দিকনির্দেশের মাধ্যমে এর কার্যকারিতা আরও বাড়িয়ে তুলতে পারে। এটি মাঝারি এবং দীর্ঘমেয়াদী প্রবণতা ট্রেডিংয়ে আগ্রহী বিনিয়োগকারীদের জন্য উপযুক্ত।
/*backtest
start: 2022-02-09 00:00:00
end: 2025-02-06 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Enhanced Bollinger Bands Strategy with SL/TP", overlay=true,
slippage=2)
// 入力パラメータの改善
length = input.int(20, "SMA Length", minval=1)
mult = input.float(2.0, "Standard Deviation Multiplier", minval=0.001, maxval=50)
enableLong = input.bool(true, "Enable Long Positions")
enableShort = input.bool(true, "Enable Short Positions")
pipValue = input.float(0.0001, "Pip Value", step=0.00001)
slPips = input.float(10, "Stop Loss (Pips)", minval=0)
tpPips = input.float(20, "Take Profit (Pips)", minval=0)
showBands = input.bool(true, "Show Bollinger Bands")
showSignals = input.bool(true, "Show Entry Signals")
// ボリンジャーバンド計算
basis = ta.sma(close, length)
dev = mult * ta.stdev(close, length)
upper = basis + dev
lower = basis - dev
// 可視化
plot(showBands ? basis : na, "Basis", color=color.blue)
u = plot(showBands ? upper : na, "Upper", color=color.red)
l = plot(showBands ? lower : na, "Lower", color=color.green)
fill(u, l, color=color.new(color.purple, 90))
// エントリー条件の改善
longCondition = ta.crossover(close, lower) and close > lower and enableLong
shortCondition = ta.crossunder(close, upper) and close < upper and enableShort
// ポジション管理
calcSlPrice(price, isLong) => isLong ? price - slPips * pipValue : price + slPips * pipValue
calcTpPrice(price, isLong) => isLong ? price + tpPips * pipValue : price - tpPips * pipValue
// エントリー&エグジットロジック
if longCondition
strategy.entry("Long", strategy.long, limit=lower)
strategy.exit("Long Exit", "Long",
stop=calcSlPrice(lower, true),
limit=calcTpPrice(lower, true))
if shortCondition
strategy.entry("Short", strategy.short, limit=upper)
strategy.exit("Short Exit", "Short",
stop=calcSlPrice(upper, false),
limit=calcTpPrice(upper, false))
// シグナル可視化
plotshape(showSignals and longCondition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(showSignals and shortCondition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)