
یہ حکمت عملی بیل کے جھنڈے کی شکل پر مبنی ہے ، جس میں قیمت کے جھنڈے کی حد سے تجاوز کرنے کے بعد خریدی جاتی ہے ، جس میں جھنڈے کی حد سے تجاوز کرنے کے بعد اسٹاپ نقصان ہوتا ہے ، جس میں منافع کا ہدف خطرہ کی واپسی کے تناسب پر مبنی ہوتا ہے۔ حکمت عملی اعلی ترین قیمت اور کم سے کم قیمت کے افعال کا استعمال کرتے ہوئے جھنڈے کی حد کی نشاندہی کرتی ہے ، اور موجودہ اختتامی قیمت اور پچھلی K لائن کی اعلی ترین قیمت کا موازنہ کرکے اس کا فیصلہ کرتی ہے۔
یہ حکمت عملی کلاسیکی بیل پرچم کی شکل پر مبنی ایک بریک آؤٹ حکمت عملی ہے ، جس میں پرچم کی شکل والے علاقوں اور قیمتوں کے وقفے کی نشاندہی کرکے رجحان کے تسلسل کے مواقع کو پکڑنا ہے۔ حکمت عملی کی خوبی یہ ہے کہ اس کی منطق واضح ہے ، خطرہ قابو میں ہے ، لیکن جب مارکیٹ میں ہلچل پڑتی ہے یا رجحان الٹ جاتا ہے تو اس میں کچھ خطرہ لاحق ہوتا ہے۔ اس کے بعد سگنل ، متحرک پیرامیٹرز ، پوزیشن مینجمنٹ وغیرہ کو بہتر بنانے سے حکمت عملی کی استحکام اور منافع کو بہتر بنایا جاسکتا ہے۔
/*backtest
start: 2023-05-22 00:00:00
end: 2024-05-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Bull Flag Breakout", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// Параметры стратегии
riskRewardRatio = 3.0
flagLength = input.int(5, title="Flag Length")
stopLossBuffer = input.float(0.01, title="Stop Loss Buffer", step=0.001)
// Функция для вычисления стоп-лосса и тейк-профита
calcRiskRewardPrice(entryPrice, stopLossPrice, riskRewardRatio) =>
takeProfitPrice = entryPrice + (entryPrice - stopLossPrice) * riskRewardRatio
[stopLossPrice, takeProfitPrice]
// Найти минимум и максимум флага
flagLow = ta.lowest(low, flagLength)
flagHigh = ta.highest(high, flagLength)
// Условия для формирования бычьего флага
isBullFlag = high[1] < flagHigh and close > high[1]
// Условия для входа в сделку
if (isBullFlag)
entryPrice = close
stopLossPrice = flagLow - stopLossBuffer
[calculatedStopLoss, calculatedTakeProfit] = calcRiskRewardPrice(entryPrice, stopLossPrice, riskRewardRatio)
// Открыть длинную позицию
strategy.entry("Bull Flag Long", strategy.long)
strategy.exit("Take Profit", "Bull Flag Long", limit=calculatedTakeProfit)
strategy.exit("Stop Loss", "Bull Flag Long", stop=calculatedStopLoss)
label.new(bar_index, high, "Buy", color=color.green, textcolor=color.white, style=label.style_label_down)