
यह रणनीति एक उच्च परिमाण ट्रेडिंग प्रणाली है, जो बॉलिन बैंड पर आधारित है, जिसमें गतिशील स्टॉप-स्टॉप-लॉस तंत्र शामिल है। रणनीति का मुख्य उद्देश्य बाजार की गतिशीलता को पकड़ना है, बॉलिन बैंड के साथ ब्रेकडाउन के माध्यम से, जबकि जोखिम के प्रबंधन के लिए अंक-आधारित स्टॉप-लॉस पेश किया गया है। यह रणनीति विभिन्न प्रकार के ट्रेडिंग के लिए उपयुक्त है, जो पैरामीटर के अनुकूलन के माध्यम से विभिन्न बाजार स्थितियों के लिए अनुकूल है।
यह रणनीति मुख्य रूप से निम्नलिखित मूल सिद्धांतों पर आधारित हैः
यह एक अच्छी तरह से डिजाइन की गई मात्रात्मक व्यापार रणनीति है जो बुरिन बैंड के माध्यम से बाजार के अवसरों को पकड़ती है और वैज्ञानिक जोखिम प्रबंधन प्रणाली द्वारा समर्थित है। रणनीति में अच्छी स्केलेबिलिटी और अनुकूलन क्षमता है, और सिफारिश की गई अनुकूलन दिशा के माध्यम से इसकी प्रदर्शन को और बढ़ाया जा सकता है। मध्यम और दीर्घकालिक रुझानों के व्यापार में रुचि रखने वाले निवेशकों के लिए उपयुक्त है।
/*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)