
یہ حکمت عملی سپر ٹرینڈ اشارے پر مبنی ایک خودکار تجارتی نظام ہے ، جس میں تجارت کے فیصلے کرنے کے لئے آر ایس آئی (تباہ کن کمزور اشارے) ، تجارت کا حجم اور اے ٹی آر (اوسط حقیقی حد) کے متعدد اشارے شامل ہیں۔ اس نے مارکیٹ کے رجحان کی سمت کی نشاندہی کی ، جبکہ متعدد فلٹرنگ شرائط کا استعمال کرتے ہوئے تجارت کے معیار کو یقینی بنانے کے لئے ، ایک مکمل تجارتی نظام حاصل کیا۔ اس حکمت عملی کی سب سے بڑی خصوصیت یہ ہے کہ اس میں تکنیکی تجزیہ اور رسک مینجمنٹ کا مضبوط امتزاج ہے ، ہر تجارت مارکیٹ میں اتار چڑھاؤ کی شرح پر مبنی ہے جس میں خود کار طریقے سے ایڈجسٹمنٹ نقصان اور منافع کے اہداف کی بنیاد پر ، متحرک رسک کنٹرول میکانزم کی تشکیل ہوتی ہے۔
اس حکمت عملی کی بنیادی منطق مندرجہ ذیل اہم اجزاء کے گرد گھومتی ہے۔
رجحانات کا تعین: سپر ٹرینڈ اشارے کو بنیاد کے طور پر استعمال کرتے ہوئے ، اوپر اور نیچے کی ٹریک لائن کی تعمیر کریں۔ جب قیمت ٹریک کو توڑتی ہے تو ، یہ سمجھا جاتا ہے کہ مارکیٹ اوپر کی طرف جارہی ہے۔ جب ٹریک کو توڑتی ہے تو ، یہ نیچے کی طرف جارہی ہے۔ یہ تجارت کی سمت کا بنیادی بنیاد ہے۔
ٹرانزیکشن کی تصدیق: حکمت عملی کا مطالبہ ہے کہ موجودہ تجارت کا حجم 20 دوروں کے اوسط تجارت کے حجم کے ایک خاص ضرب سے زیادہ ہونا چاہئے (یہ حجم ملٹیپلر پیرامیٹر کے ذریعہ ایڈجسٹ کیا جاسکتا ہے) ۔ اس سے یہ یقینی بنایا جاتا ہے کہ تجارت صرف اس صورت میں کی جائے گی جب کافی لیکویڈیٹی ہو۔
ٹنڈر طاقت کی تصدیق: موجودہ پوڈکاسٹ کے سائز کا حساب لگائیں (بند قیمت اور اوپن قیمت کے فرق کی مطلق قیمت) ، اور اے ٹی آر کی قیمت کے ساتھ موازنہ کریں۔ قیمتوں کے رجحانات کو صرف اس وقت کافی مضبوط سمجھا جاتا ہے جب پوڈکاسٹ اے ٹی آر کے مخصوص تناسب کو پورا کرے (bodyPctOfATR پیرامیٹر کنٹرول) ۔
RSI فلٹرRSI کا استعمال کرتے ہوئے: حد سے زیادہ خرید یا حد سے زیادہ فروخت کے علاقوں میں تجارت سے گریز کریں۔ خرید سگنل کی ضرورت ہوتی ہے RSI حد سے زیادہ خرید سے کم ہے (ڈیفالٹ 70) ، اور فروخت سگنل کی ضرورت ہوتی ہے RSI حد سے زیادہ فروخت سے زیادہ ہے (ڈیفالٹ 30) ۔
خود کار طریقے سے سٹاپ نقصان: ہر تجارت کے لئے اسٹاپ نقصان ایک اے ٹی آر فاصلے کے طور پر مقرر کیا جاتا ہے ، جبکہ اسٹاپ کو اسٹاپ نقصان کے ایک ضرب کے طور پر مقرر کیا جاتا ہے (RiskRewardRatio پیرامیٹرز کے ذریعہ کنٹرول کیا جاتا ہے) ، جس سے مارکیٹ کی اصل اتار چڑھاؤ پر مبنی متحرک رسک مینجمنٹ کا احساس ہوتا ہے۔
مندرجہ بالا پانچ پہلوؤں کے مجموعی فیصلے کے ذریعے ، حکمت عملی خرید و فروخت کی شرائط تشکیل دیتی ہے:
اس حکمت عملی کے کوڈ پر عملدرآمد کا تجزیہ کرتے ہوئے ، مندرجہ ذیل نمایاں فوائد کا خلاصہ کیا جاسکتا ہے:
کثیر جہتی تصدیق کا طریقہ کار: سپر ٹرینڈ ، آر ایس آئی ، حجم اور فکسڈ طاقت کی متعدد تصدیق کے ذریعہ ، جعلی سگنلوں میں نمایاں کمی واقع ہوئی ہے اور تجارت کی درستگی میں اضافہ ہوا ہے۔ خاص طور پر شدید اتار چڑھاؤ والی مارکیٹوں میں ، اس کثیر جہتی تصدیق کے طریقہ کار سے بہت سارے غیر ضروری تجارتوں سے بچا جاسکتا ہے۔
خطرے کے انتظام کے لئے خود کو اپنانا: اے ٹی آر پر مبنی متحرک اسٹاپ اور اسٹاپ سیٹنگ ، حکمت عملی کو خود بخود مارکیٹ کے مختلف مراحل میں اتار چڑھاؤ کے مطابق خطرے کے پیرامیٹرز کو ایڈجسٹ کرنے کی اجازت دیتی ہے ، جس سے فکسڈ اسٹاپس کی وجہ سے عدم استحکام کا مسئلہ دور ہوجاتا ہے۔
فنڈ مینجمنٹ انٹیگریشن: حکمت عملی میں فنڈ مینجمنٹ کی خصوصیات شامل ہیں ، جس میں capitalPerTrade پیرامیٹرز کے ذریعہ اکاؤنٹ کے سائز اور خطرے کی ترجیحات کے مطابق ہر تجارت میں فنڈز کی مقدار کو ایڈجسٹ کیا جاسکتا ہے ، جس سے خطرے پر قابو پانے اور تجارتی حکمت عملی کو مربوط کیا جاسکتا ہے۔
اعلی درجے کی خودکار تجارت: داخلہ سگنل ، فنڈز کی تقسیم سے لے کر اسٹاپ اسٹاپ نقصان تک سب کچھ خودکار ہے ، جس سے دستی آپریشن کے نفسیاتی دباؤ اور غلطی کا امکان کم ہوجاتا ہے۔
انتباہ کا نظام: حکمت عملی میں تفصیلی JSON فارمیٹ کے انتباہات ترتیب دیئے گئے ہیں ، جس میں اہم معلومات شامل ہیں جیسے تجارت کی سمت ، رقم کی رقم ، اسٹاپ نقصان اور اسٹاپ قیمت ، تاکہ بیرونی نظام کے ساتھ انضمام یا صارفین کو مطلع کیا جاسکے۔
اگرچہ اس حکمت عملی کو ڈیزائن کیا گیا ہے ، اس میں متعدد عوامل پر غور کیا گیا ہے ، لیکن اس میں مندرجہ ذیل ممکنہ خطرات ہیں:
پیرامیٹر کی حساسیتحکمت عملی کی کارکردگی انتہائی پیرامیٹرز کی ترتیب پر منحصر ہے ، جیسے اے ٹی آر سائیکل ، آر ایس آئی کی حد ، تجارت کی مقدار میں ضرب وغیرہ۔ غلط پیرامیٹرز سے زیادہ تجارت ہوسکتی ہے یا اہم مواقع ضائع ہوسکتے ہیں۔ اس کا حل مارکیٹ کے مختلف حالات میں بہترین پیرامیٹرز کا مجموعہ تلاش کرنے کے لئے ریٹرننگ ہے۔
رجحانات میں تبدیلی کی تاخیر: سپر ٹرینڈ ، ایک رجحان سے باخبر رہنے والا اشارے ، رجحان کے موڑ پر عام طور پر پیچھے رہ جاتا ہے ، جس سے تاخیر سے داخلے یا زیادہ نقصان کا سبب بن سکتا ہے۔ اے ٹی آر کے دورانیے کو مختصر کرکے یا اے ٹی آر کے ضرب کو ایڈجسٹ کرکے اس مسئلے کو کم کیا جاسکتا ہے۔
انتہائی مارکیٹ کا خطرہ: مارکیٹ میں گپ یا بلیک آؤٹ کی صورت میں ، پہلے سے طے شدہ اسٹاپ نقصانات کو مؤثر طریقے سے نافذ نہیں کیا جاسکتا ہے ، جس کی وجہ سے متوقع نقصانات کا سامنا کرنا پڑتا ہے۔ اس کے ساتھ ساتھ دیگر ونڈ کنٹرول اقدامات جیسے مجموعی پوزیشن کنٹرول یا زیادہ سے زیادہ نقصان کی حد طے کرنا بھی مشورہ دیا جاتا ہے۔
فنڈ کی کارکردگی کے مسائل: فکسڈ فنڈز کی تقسیم کا طریقہ فنڈز کے غیر موثر استعمال کا سبب بن سکتا ہے۔ متحرک پوزیشن ایڈجسٹمنٹ پر غور کیا جاسکتا ہے جو اتار چڑھاؤ یا اکاؤنٹ کی خالص قیمت پر مبنی ہے۔
واحد ٹائم فریم کی حد: موجودہ حکمت عملی صرف ایک ٹائم فریم پر مبنی سگنل پر مبنی ہے ، جس میں کثیر ٹائم فریم کی تصدیق کی کمی ہے ، جس سے مارکیٹ کے کچھ حالات میں غلط سگنل پیدا ہوسکتے ہیں۔
مذکورہ بالا خطرات اور رکاوٹوں کے پیش نظر ، اس حکمت عملی کو مندرجہ ذیل سمتوں میں بہتر بنایا جاسکتا ہے۔
ملٹی ٹائم فریم تجزیہ انٹیگریٹڈ: اعلی ٹائم فریموں کی رجحانات کی تصدیق متعارف کرانے سے ، صرف اہم رجحانات کی سمت میں تجارت کرنے سے حکمت عملی کی استحکام میں نمایاں اضافہ ہوسکتا ہے۔ اس سے ٹریڈنگ ویو کے سیکیورٹی فنکشن کے ذریعہ ٹائم فریم ڈیٹا تک رسائی حاصل کی جاسکتی ہے۔
متحرک پیرامیٹرز خود کو اپنانے: مارکیٹ میں اتار چڑھاؤ کی شرح کے مطابق اے ٹی آر ضرب ، آر ایس آئی کی کمی اور دیگر پیرامیٹرز کو خود بخود ایڈجسٹ کیا جاسکتا ہے ، تاکہ حکمت عملی مختلف مارکیٹ کے حالات کے مطابق بہتر طور پر ڈھال سکے۔ مثال کے طور پر ، اعلی اتار چڑھاؤ والی مارکیٹوں میں اے ٹی آر ضرب میں اضافہ ، جھوٹے اختراعات کو کم کریں۔
فنڈ مینجمنٹ الگورتھم کو بہتر بنانا: کیلی فارمولہ یا فکسڈ تناسب رسک ماڈل پر مبنی متحرک فنڈ مینجمنٹ متعارف کروانا ، جو ہر تجارت میں فنڈز کی تقسیم کو خود بخود تاریخی جیت اور منافع کے تناسب کے مطابق ایڈجسٹ کرتا ہے ، طویل مدتی منافع کی استحکام کو بہتر بناتا ہے۔
مارکیٹ کی حالت کی شناخت میں اضافہ: مارکیٹ کی حالت ((رجحان ، توازن ، اعلی اتار چڑھاؤ ، کم اتار چڑھاؤ) کے بارے میں فیصلہ کرنے کی منطق شامل کریں ، مختلف مارکیٹ کی حالت میں مختلف تجارتی قواعد یا پیرامیٹرز کو لاگو کریں ، موافقت کو بہتر بنائیں۔
مشین لرننگ ماڈل کو ضم کرنا: مشین لرننگ الگورتھم کا استعمال کرنے پر غور کیا جاسکتا ہے جس میں داخلہ کے بہترین وقت یا پیرامیٹرز کے مجموعے کی پیش گوئی کی جاسکتی ہے ، خاص طور پر جب اے ٹی آر ضرب ، تجارت کی مقدار کی کمی جیسے اہم پیرامیٹرز کی نشاندہی کی جاتی ہے۔
سپر ٹرینڈ-اے ٹی آر-آر ایس آئی متحرک رسک کنٹرول حکمت عملی ایک مقداری تجارتی نظام ہے جو رجحانات کی نگرانی کو متحرک رسک مینجمنٹ کے ساتھ جوڑتا ہے۔ سپر ٹرینڈ اشارے کے ذریعہ مارکیٹ کے رجحانات کی نشاندہی کی جاتی ہے ، اور آر ایس آئی ، تجارت کی مقدار اور کلسٹر کی طاقت جیسے متعدد فلٹرنگ میکانزم کے ساتھ مل کر ٹریڈنگ سگنل کی کوالٹی میں بہتری لائی جاتی ہے۔ حکمت عملی کا بنیادی فائدہ اس کے لچکدار رسک مینجمنٹ فریم ورک میں ہے جو اے ٹی آر پر مبنی متحرک اسٹاپ اور اسٹاپ کی ترتیبات کے ذریعہ خطرے کے کنٹرول کو خود بخود مارکیٹ میں اتار چڑھاو کو ایڈجسٹ کرنے کی اجازت دیتا ہے۔
یہ حکمت عملی زیادہ اتار چڑھاؤ اور واضح رجحانات کے ساتھ مارکیٹ کے ماحول کے لئے موزوں ہے ، خاص طور پر درمیانی اور طویل مدتی رجحانات کی تشکیل کے مرحلے میں۔ تاہم ، صارفین کو عملی استعمال میں پیرامیٹرز کی اصلاح اور مارکیٹ کے ماحول کی مماثلت پر دھیان دینا چاہئے ، اور اس حکمت عملی کی استحکام اور موافقت کو مزید بڑھانے کے لئے اس مضمون میں تجویز کردہ اصلاحی سمتوں جیسے ملٹی ٹائم فریم تجزیہ ، متحرک پیرامیٹرز کی ایڈجسٹمنٹ اور اعلی درجے کی فنڈ مینجمنٹ کے طریقوں پر غور کرنا چاہئے۔
معقول پیرامیٹرز کی ترتیب اور کافی پیمائش کی توثیق کے ساتھ ، اس حکمت عملی میں سرمایہ کاروں کو منظم تجارت کے نفاذ اور خطرے سے نمٹنے کے حل فراہم کرنے کے لئے ایک قابل اعتماد خودکار تجارتی آلہ بننے کی صلاحیت ہے۔
/*backtest
start: 2025-01-01 00:00:00
end: 2025-04-20 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"TRX_USD"}]
*/
//@version=5
strategy("Supertrend Hombrok Bot", overlay=true, default_qty_type=strategy.cash, default_qty_value=1000)
// INPUTS
atrPeriod = input.int(10, title="ATR Period")
atrMult = input.float(3.0, title="ATR Multiplier")
rsiPeriod = input.int(14, title="RSI Period")
rsiOverbought = input.int(70, title="RSI Overbought")
rsiOversold = input.int(30, title="RSI Oversold")
volumeMultiplier = input.float(1.2, title="Volume Multiplier")
bodyPctOfATR = input.float(0.3, title="Candle Body % of ATR (min strength)")
riskRewardRatio = input.float(2.0, title="R:R (Take Profit / Stop Loss)")
capitalPerTrade = input.float(10, title="Capital por operação ($)")
// ATR e Supertrend
atr = ta.atr(atrPeriod)
upperBand = hl2 - (atrMult * atr)
lowerBand = hl2 + (atrMult * atr)
prevUpper = nz(upperBand[1], upperBand)
prevLower = nz(lowerBand[1], lowerBand)
trendUp = close[1] > prevUpper ? math.max(upperBand, prevUpper) : upperBand
trendDown = close[1] < prevLower ? math.min(lowerBand, prevLower) : lowerBand
trend = 1
trend := nz(trend[1], trend)
trend := trend == -1 and close > trendDown ? 1 : trend == 1 and close < trendUp ? -1 : trend
isUpTrend = trend == 1
isDownTrend = trend == -1
// Filtros
volAverage = ta.sma(volume, 20)
volOk = volume > volAverage * volumeMultiplier
bodySize = math.abs(close - open)
bodyOk = bodySize > (atr * bodyPctOfATR)
rsi = ta.rsi(close, rsiPeriod)
rsiBuyOk = rsi < rsiOverbought
rsiSellOk = rsi > rsiOversold
// Condições
buyCond = isUpTrend and volOk and bodyOk and rsiBuyOk
sellCond = isDownTrend and volOk and bodyOk and rsiSellOk
// TP e SL
longSL = close - atr
longTP = close + (atr * riskRewardRatio)
shortSL = close + atr
shortTP = close - (atr * riskRewardRatio)
// Estratégia de entrada e saída
if buyCond
strategy.entry("Compra", strategy.long, qty=capitalPerTrade / close)
strategy.exit("TP/SL Compra", from_entry="Compra", stop=longSL, limit=longTP)
if sellCond
strategy.entry("Venda", strategy.short, qty=capitalPerTrade / close)
strategy.exit("TP/SL Venda", from_entry="Venda", stop=shortSL, limit=shortTP)
// ALERTAS + LABELS
alertLong = '{"side":"buy", "capital":' + str.tostring(capitalPerTrade) + ', "sl":' + str.tostring(longSL) + ', "tp":' + str.tostring(longTP) + '}'
alertShort = '{"side":"sell", "capital":' + str.tostring(capitalPerTrade) + ', "sl":' + str.tostring(shortSL) + ', "tp":' + str.tostring(shortTP) + '}'
if buyCond
label.new(bar_index, low, "BUY", style=label.style_label_up, color=color.green, textcolor=color.white)
alert(alertLong, alert.freq_once_per_bar_close)
if sellCond
label.new(bar_index, high, "SELL", style=label.style_label_down, color=color.red, textcolor=color.white)
alert(alertShort, alert.freq_once_per_bar_close)
// VISUAL
plotshape(buyCond, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(sellCond, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")
plot(trend == 1 ? trendUp : na, title="Trend Up", color=color.green, linewidth=1)
plot(trend == -1 ? trendDown : na, title="Trend Down", color=color.red, linewidth=1)