
حکمت عملی ایک بریک آؤٹ ٹریڈنگ سسٹم ہے جس کی بنیاد متعدد کلیدی قیمت کی سطحوں پر ہے۔ یہ بنیادی طور پر چھ اہم نکات کو ٹریک کرتا ہے: انٹرا ڈے ہائی (HOD)، انٹرا ڈے لو (LOD)، پری مارکیٹ ہائی (PMH)، پری مارکیٹ لو (PML)، پچھلے دن ہائی (PDH) اور پچھلے دن کی کم قیمت (PDL) سطحیں، تجارتی سگنل ان سطحوں کے ذریعے قیمتوں کو توڑ کر پیدا ہوتے ہیں۔ حکمت عملی کلیدی سطحوں کی قیمتوں کے کراسنگ کی بنیاد پر خرید و فروخت کی کارروائیوں کو انجام دینے کے لیے خودکار ٹریڈنگ کا استعمال کرتی ہے۔
حکمت عملی کی بنیادی منطق میں درج ذیل اہم حصے شامل ہیں:
یہ حکمت عملی متعدد کلیدی قیمتوں کی سطحوں کی نگرانی اور استعمال کے ذریعے مارکیٹ کے مواقع حاصل کرتی ہے، اور اس کی خصوصیت واضح منطق اور اعلیٰ درجے کی آٹومیشن ہے۔ لیکن کچھ خطرات بھی ہیں، جنہیں تکنیکی اشارے کی فلٹرنگ، رسک مینجمنٹ میکانزم کو بہتر بنانے وغیرہ کے ذریعے بہتر بنانے کی ضرورت ہے۔ حکمت عملی کا بنیادی فائدہ اس کے کثیر جہتی قیمت کے حوالہ جات کے نظام میں مضمر ہے، جو اسے مارکیٹ کے رجحانات کو بہتر طور پر سمجھنے کے قابل بناتا ہے، لیکن اصل اطلاق میں، مختلف مارکیٹ کے ماحول کے مطابق ٹارگٹڈ پیرامیٹر ایڈجسٹمنٹ کی ضرورت ہوتی ہے۔
/*backtest
start: 2024-12-06 00:00:00
end: 2025-01-04 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © tradingbauhaus
//@version=6
strategy("HOD/LOD/PMH/PML/PDH/PDL Strategy by tradingbauhaus ", shorttitle="HOD/LOD Strategy", overlay=true)
// Daily high and low
dailyhigh = request.security(syminfo.tickerid, 'D', high)
dailylow = request.security(syminfo.tickerid, 'D', low)
// Previous day high and low
var float previousdayhigh = na
var float previousdaylow = na
high1 = request.security(syminfo.tickerid, 'D', high[1])
low1 = request.security(syminfo.tickerid, 'D', low[1])
high0 = request.security(syminfo.tickerid, 'D', high[0])
low0 = request.security(syminfo.tickerid, 'D', low[0])
// Yesterday high and low
if (hour == 9 and minute > 30) or hour > 10
previousdayhigh := high1
previousdaylow := low1
else
previousdayhigh := high0
previousdaylow := low0
// Premarket high and low
t = time("1440", "0000-0930") // 1440 is the number of minutes in a whole day.
is_first = na(t[1]) and not na(t) or t[1] < t
ending_hour = 9
ending_minute = 30
var float pm_high = na
var float pm_low = na
if is_first and barstate.isnew and ((hour < ending_hour or hour >= 16) or (hour == ending_hour and minute < ending_minute))
pm_high := high
pm_low := low
else
pm_high := pm_high[1]
pm_low := pm_low[1]
if high > pm_high and ((hour < ending_hour or hour >= 16) or (hour == ending_hour and minute < ending_minute))
pm_high := high
if low < pm_low and ((hour < ending_hour or hour >= 16) or (hour == ending_hour and minute < ending_minute))
pm_low := low
// Plotting levels
plot(dailyhigh, style=plot.style_line, title="Daily high", color=color.white, linewidth=1, trackprice=true)
plot(dailylow, style=plot.style_line, title="Daily low", color=color.purple, linewidth=1, trackprice=true)
plot(previousdayhigh, style=plot.style_line, title="Previous Day high", color=color.orange, linewidth=1, trackprice=true)
plot(previousdaylow, style=plot.style_line, title="Previous Day low", color=color.blue, linewidth=1, trackprice=true)
plot(pm_high, style=plot.style_line, title="Premarket high", color=color.green, linewidth=1, trackprice=true)
plot(pm_low, style=plot.style_line, title="Premarket low", color=color.red, linewidth=1, trackprice=true)
// Strategy logic
// Long entry: Price crosses above PMH or PDH
if (ta.crossover(close, pm_high) or ta.crossover(close, previousdayhigh)) and strategy.opentrades == 0
strategy.entry("Long", strategy.long)
// Short entry: Price crosses below PML or PDL
if (ta.crossunder(close, pm_low) or ta.crossunder(close, previousdaylow)) and strategy.opentrades == 0
strategy.entry("Short", strategy.short)
// Exit long: Price reaches HOD
if strategy.position_size > 0 and ta.crossover(close, dailyhigh)
strategy.close("Long")
// Exit short: Price reaches LOD
if strategy.position_size < 0 and ta.crossunder(close, dailylow)
strategy.close("Short")