
یہ حکمت عملی بورن بینڈ اشارے پر مبنی ہے ، جس کا بنیادی خیال یہ ہے کہ قیمتوں کے بورن بینڈ کو ٹریک کرنے یا ٹریک کرنے کے بعد ، قیمتوں کے بورن بینڈ کے اندر واپس آنے کا انتظار کریں ، اور پھر واپسی کے مقام پر اسی طرح کی پوزیشن قائم کریں۔ یہ حکمت عملی مارکیٹ کے موڑ کے مقامات کو پکڑنے کے لئے استعمال کرتی ہے ، جس کی قیمتیں اکثر انتہائی خطوں میں الٹ جاتی ہیں ، بورن بینڈ توڑنے اور واپسی کے مجموعی حالات کے ذریعہ ، امید ہے کہ اس سے زیادہ جیت حاصل ہو۔
برین بینڈ توڑنے والی واپسی تجارتی حکمت عملی ایک سادہ عملی اور مقداری تجارتی حکمت عملی ہے۔ یہ قیمتوں کے انتہائی حالات کے ردعمل کا استعمال کرتی ہے ، برین بینڈ ٹولز کے ذریعہ کھلی پوزیشن کی شرائط تیار کرتی ہے ، جو رجحان کے آغاز اور اختتام کے مقامات کو کسی حد تک پکڑ سکتی ہے ، اور بار بار تجارت کو کنٹرول کرسکتی ہے۔ اس حکمت عملی میں پیرامیٹرز کے انتخاب ، اتار چڑھاؤ کے حالات میں خراب کارکردگی ، رجحان کی گرفت میں کمی جیسے مسائل بھی ہیں۔ تفصیلات کو بہتر بنانے اور دیگر سگنلوں کے ساتھ مل کر ، اس حکمت عملی کی موافقت اور غفلت کو مزید بڑھانے کی امید ہے۔
/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-27 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy(shorttitle="BB", title="Bollinger Bands", overlay=true)
length = input.int(20, minval=1)
maType = input.string("SMA", "Basis MA Type", options = ["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
src = input(close, title="Source")
mult = input.float(1.7, minval=0.001, maxval=50, title="StdDev")
ma(source, length, _type) =>
switch _type
"SMA" => ta.sma(source, length)
"EMA" => ta.ema(source, length)
"SMMA (RMA)" => ta.rma(source, length)
"WMA" => ta.wma(source, length)
"VWMA" => ta.vwma(source, length)
basis = ma(src, length, maType)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input.int(0, "Offset", 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))
break_up = close > upper
break_down = close < lower
inside = close > lower and close < upper
sell_condition = break_up[1] and inside
buy_condition = break_down[1] and inside
// Conditions to close trades
close_sell_condition = close > basis
close_buy_condition = close < basis
trade_condition = sell_condition or buy_condition
// Tracking the high of the breakout candle
var float peak = na
if (not trade_condition)
peak := close
if (break_up and peak < high)
peak := high
if (break_down and peak > low)
peak := low
// Entering positions
if (buy_condition)
strategy.entry("Buy", strategy.long)
if (sell_condition)
strategy.entry("Sell", strategy.short)
// Exiting positions when close crosses the basis
if (strategy.position_size > 0 and close_sell_condition) // If in a long position and close crosses above basis
strategy.close("Buy")
if (strategy.position_size < 0 and close_buy_condition) // If in a short position and close crosses below basis
strategy.close("Sell")