
یہ حکمت عملی ایک مقداری تجارتی نظام ہے جس کی بنیاد بولنگر بینڈز کے اصولوں پر ہے اور قیمت کا مطلب ریورژن ہے۔ بولنگر بینڈز کے اوپری اور نچلے ٹریکس کے بریک تھرو سگنلز کے ساتھ مل کر قیمت اور موونگ ایوریج کے درمیان انحراف کی نگرانی کرتے ہوئے، ٹریڈنگ اس وقت کی جاتی ہے جب مارکیٹ میں زیادہ خرید یا زیادہ فروخت ہونے کے بعد قیمت کے اوسط پر واپس آنے کی توقع کی جاتی ہے۔ حکمت عملی قیمت کے انحراف کی ڈگری کی پیمائش کرنے کے لیے فیصد کی حد کا استعمال کرتی ہے اور لین دین کی درستگی کو بہتر بنانے کے لیے معقول ٹرگر حالات ترتیب دے کر غلط سگنلز کو فلٹر کرتی ہے۔
حکمت عملی کی بنیادی منطق درج ذیل کلیدی عناصر پر مبنی ہے:
یہ حکمت عملی بولنگر بینڈز اور مطلب کی تبدیلی کے اصولوں کے ذریعے مارکیٹ سے زیادہ خریدے گئے اور زیادہ فروخت ہونے والے مواقع کو حاصل کرتی ہے، اور معقول انحراف کی حدوں اور اسٹیٹس ٹریکنگ میکانزم کو ملا کر تجارتی خطرات کو مؤثر طریقے سے کنٹرول کرتی ہے۔ حکمت عملی کے فریم ورک میں اسکیل ایبلٹی اچھی ہے اور یہ پیرامیٹر کی اصلاح اور فنکشن میں بہتری کے ذریعے مارکیٹ کے مختلف ماحول کے مطابق ڈھال سکتا ہے۔ ریئل ٹائم ایپلی کیشنز میں رسک کنٹرول پر توجہ دینے اور مخصوص مصنوعات کی خصوصیات کے مطابق پیرامیٹرز کو ایڈجسٹ کرنے کی سفارش کی جاتی ہے۔
/*backtest
start: 2024-12-06 00:00:00
end: 2025-01-04 08:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Estratégia com Bandas de Bollinger e Sinal de Retorno", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=200)
// Configurações das Bandas de Bollinger
length = input.int(20, title="Período da média")
mult = input.float(2.0, title="Desvio padrão")
bbBasis = ta.sma(close, length)
bbUpper = bbBasis + mult * ta.stdev(close, length)
bbLower = bbBasis - mult * ta.stdev(close, length)
// Configuração para a distância da média
percent_threshold = input.float(3.5, title="Distância da média (%)") / 100
dist_from_mean = 0.0
trigger_condition = false
if not na(bbBasis)
dist_from_mean := math.abs(close - bbBasis) / bbBasis
trigger_condition := dist_from_mean >= percent_threshold
// Variáveis para identificar o estado do afastamento
var bool is_outside = false
var color candle_color = color.new(color.white, 0)
if trigger_condition
is_outside := true
if is_outside and close <= bbUpper and close >= bbLower
is_outside := false
candle_color := color.new(color.blue, 0) // Atribui uma cor válida
else
candle_color := color.new(color.white, 0)
// Aplicar cor às velas
barcolor(candle_color)
// Plotar Bandas de Bollinger
plot(bbBasis, color=color.yellow, title="Média")
plot(bbUpper, color=color.red, title="Banda Superior")
plot(bbLower, color=color.green, title="Banda Inferior")
// Lógica de entrada e saída
longCondition = not is_outside and close > bbUpper
if (longCondition)
strategy.entry("Buy", strategy.long)
shortCondition = not is_outside and close < bbLower
if (shortCondition)
strategy.entry("Sell", strategy.short)