
یہ حکمت عملی ایک مقداری تجارتی نظام ہے جو متعدد ٹائم پیکیج لیکویڈیٹی ہب پوائنٹ کا پتہ لگانے پر مبنی ہے۔ یہ تین مختلف ٹائم پیکیجز ((15 منٹ ، 1 گھنٹہ اور 4 گھنٹے) کی قیمتوں کے رویے کا تجزیہ کرکے اہم معاونت اور مزاحمت کی سطح کی نشاندہی کرتا ہے اور اس کی بنیاد پر تجارتی فیصلے کرتا ہے۔ نظام میں فنڈ مینجمنٹ کی خصوصیات کو مربوط کیا گیا ہے ، جس میں فکسڈ رقم کی اسٹاپ اور نقصان کی ترتیب بھی شامل ہے ، جبکہ بصری آراء فراہم کی جاتی ہیں ، جس سے تاجروں کو مارکیٹ کی ساخت کو بہتر طور پر سمجھنے میں مدد ملتی ہے۔
اس حکمت عملی کا بنیادی حصہ یہ ہے کہ ta.pivothigh اور ta.pivotlow افعال کے ذریعہ متعدد ٹائم پیکیجز پر قیمت کے محوروں کا پتہ لگائیں۔ ہر ٹائم پیکیج کے لئے ، نظام اعلی اور کم نمایاں نقطہ کی نشاندہی کرنے کے لئے بائیں یا دائیں حوالہ K لائن کا استعمال کرتا ہے (ڈفالٹ 7). جب کسی بھی ٹائم پیکیج میں کوئی نیا محور کم ہوتا ہے تو ، نظام ایک سے زیادہ سگنل پیدا کرتا ہے۔ جب کوئی نیا محور اونچائی ہوتی ہے تو ، نظام ایک خالی سگنل پیدا کرتا ہے۔
کثیر ٹائم سائیکل لیکویڈیٹی گٹھ جوڑ گرمی گراف کی حکمت عملی ایک منظم ، منطقی اور واضح تجارتی نظام ہے۔ یہ کثیر جہتی مارکیٹ تجزیہ اور سخت رسک مینجمنٹ کے ذریعہ تاجروں کو ایک قابل اعتماد تجارتی فریم ورک مہیا کرتا ہے۔ اگرچہ کچھ موروثی خطرات اور حدود موجود ہیں ، لیکن مسلسل اصلاح اور بہتری کے ذریعہ ، اس حکمت عملی کو مارکیٹ کے مختلف ماحول میں مستحکم کارکردگی کا مظاہرہ کرنے کی امید ہے۔
/*backtest
start: 2024-11-19 00:00:00
end: 2024-12-18 08:00:00
period: 4h
basePeriod: 4h
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/
// © pmotta41
//@version=5
strategy("GPT Session Liquidity Heatmap Strategy", overlay=true)
// Inputs
timeframe1 = input.timeframe("15", title="Intraday Timeframe 1")
timeframe2 = input.timeframe("60", title="Intraday Timeframe 2")
timeframe3 = input.timeframe("240", title="Higher Timeframe")
leftBars = input.int(7, title="Left Bars for Pivot", minval=2, maxval=20)
rightBars = input.int(7, title="Right Bars for Pivot", minval=2, maxval=20)
takeProfitDollar = input(200, title="Take Profit $$")
stopLossDollar = input(100, title="Stop Loss $$")
// Pivot Detection Function
detectPivot(highs, lows, left, right) =>
pivotHigh = ta.pivothigh(highs, left, right)
pivotLow = ta.pivotlow(lows, left, right)
[pivotHigh, pivotLow]
// Get Pivots from Different Timeframes
[pivotHigh1, pivotLow1] = request.security(syminfo.tickerid, timeframe1, detectPivot(high, low, leftBars, rightBars))
[pivotHigh2, pivotLow2] = request.security(syminfo.tickerid, timeframe2, detectPivot(high, low, leftBars, rightBars))
[pivotHigh3, pivotLow3] = request.security(syminfo.tickerid, timeframe3, detectPivot(high, low, leftBars, rightBars))
// Plot Pivots
plotshape(series=pivotHigh1, title="Pivot High 1", location=location.abovebar, color=color.red, style=shape.labeldown, text="H1")
plotshape(series=pivotLow1, title="Pivot Low 1", location=location.belowbar, color=color.green, style=shape.labelup, text="L1")
plotshape(series=pivotHigh2, title="Pivot High 2", location=location.abovebar, color=color.red, style=shape.labeldown, text="H2")
plotshape(series=pivotLow2, title="Pivot Low 2", location=location.belowbar, color=color.green, style=shape.labelup, text="L2")
plotshape(series=pivotHigh3, title="Pivot High 3", location=location.abovebar, color=color.red, style=shape.labeldown, text="H3")
plotshape(series=pivotLow3, title="Pivot Low 3", location=location.belowbar, color=color.green, style=shape.labelup, text="L3")
// Strategy Logic
buyCondition = pivotLow1 or pivotLow2 or pivotLow3
sellCondition = pivotHigh1 or pivotHigh2 or pivotHigh3
if (buyCondition)
strategy.entry("Buy", strategy.long)
if (sellCondition)
strategy.entry("Sell", strategy.short)
// Function to Convert $$ to Points for Stop Loss and Take Profit
moneyToSLPoints(money) =>
strategy.position_size != 0 ? (money / syminfo.pointvalue / math.abs(strategy.position_size)) / syminfo.mintick : na
p = moneyToSLPoints(takeProfitDollar)
l = moneyToSLPoints(stopLossDollar)
// Exit Conditions
strategy.exit("Exit Buy", from_entry="Buy", profit=p, loss=l)
strategy.exit("Exit Sell", from_entry="Sell", profit=p, loss=l)
// Visualization for Stop Loss and Take Profit Levels
pointsToPrice(pp) =>
na(pp) ? na : strategy.position_avg_price + pp * math.sign(strategy.position_size) * syminfo.mintick
tp = plot(pointsToPrice(p), style=plot.style_linebr, color=color.green, title="Take Profit Level")
sl = plot(pointsToPrice(-l), style=plot.style_linebr, color=color.red, title="Stop Loss Level")
avg = plot(strategy.position_avg_price, style=plot.style_linebr, color=color.blue, title="Entry Price")
fill(tp, avg, color=color.new(color.green, 90), title="Take Profit Area")
fill(avg, sl, color=color.new(color.red, 90), title="Stop Loss Area")
// Background for Gain/Loss
gainBackground = strategy.position_size > 0 and close > strategy.position_avg_price
lossBackground = strategy.position_size > 0 and close < strategy.position_avg_price
bgcolor(gainBackground ? color.new(color.green, 90) : na, title="Gain Background")
bgcolor(lossBackground ? color.new(color.red, 90) : na, title="Loss Background")