
یہ حکمت عملی بیل مارکیٹ سپورٹ بینڈ پر مبنی ایک رجحان ٹریڈنگ سسٹم ہے۔ یہ بنیادی طور پر 20 ہفتوں کی سادہ حرکت پذیر اوسط (ایس ایم اے) اور 21 ہفتوں کی انڈیکس حرکت پذیر اوسط (ای ایم اے) کے کراس سگنل کا استعمال کرتا ہے تاکہ مارکیٹ کی رجحان کی سمت کا تعین کیا جاسکے۔ اس کے بعد تجارتی فیصلے کیے جاتے ہیں۔ حکمت عملی میں دو مساوی لائنوں کے اوپر کراس کرنے پر زیادہ سگنل جاری کیے جاتے ہیں ، اور نیچے کی طرف کراس کرنے پر فلیٹ پوزیشن ، درمیانی اور طویل مدتی رجحان سازی کے مواقع کو پکڑ کر منافع حاصل کرنا۔
اس حکمت عملی کا بنیادی منطق مارکیٹ کے رجحانات کا تعین کرنے کے لئے 20 ہفتوں کے ایس ایم اے اور 21 ہفتوں کے ای ایم اے کی دو مساوی لائنوں کے مابین متعلقہ پوزیشن کے تعلقات کی نگرانی کرنا ہے۔ جب مختصر مدت کی اوسط ((20 ہفتوں کی ایس ایم اے) نیچے سے طویل مدتی اوسط ((21 ہفتوں کی ای ایم اے) کو توڑ دیتی ہے تو ، اس سے ظاہر ہوتا ہے کہ مارکیٹ میں اضافے کا رجحان پیدا ہوسکتا ہے ، اس وقت نظام زیادہ پوزیشن کھلاتا ہے۔ جب مختصر مدت کی اوسط اوپر سے ٹوٹ جاتی ہے تو ، اس سے ظاہر ہوتا ہے کہ بڑھتی ہوئی رجحان ختم ہوسکتا ہے ، اس وقت نظام صفائی سے باہر نکل جاتا ہے۔ حکمت عملی فیصد_آف_ایکوئٹی کے ذریعہ پوزیشن کا انتظام کرتی ہے ، جس میں ٹریڈنگ کمیشن 0.1 فیصد مقرر کیا جاتا ہے ، اور 3 بیس پوائنٹس تک سلائڈ ہوتا ہے۔
بیل مارکیٹ سپورٹ بینڈ ٹریڈنگ اسٹریٹجی ایک ٹرینڈ ٹریکنگ سسٹم ہے جو کلاسیکی تکنیکی تجزیہ کی تھیوری پر مبنی ہے۔ اس میں وسط اور طویل مدتی ٹرینڈ کے مواقع کو پکڑنے کے لئے پیڈ لائن کی سطح پر مساوی لائن کراسنگ کا استعمال کیا جاتا ہے ، جس میں منطقی وضاحت اور خطرے کے قابل کنٹرول خصوصیات ہیں۔ تاہم ، اسٹریٹجی میں اتار چڑھاؤ کی مارکیٹ میں خراب کارکردگی کا مظاہرہ نہیں کیا گیا ہے ، اور اس میں کچھ پسماندگی موجود ہے۔ معاون اشارے شامل کرنے ، نقصان کو روکنے کے طریقہ کار کو بہتر بنانے اور فنڈ مینجمنٹ کو بہتر بنانے کے ذریعہ ، اسٹریٹجی میں زیادہ سے زیادہ اصلاح کی گنجائش ہے۔
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-25 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0
// © zkdev
//@version=6
strategy(title='Demo GPT - Bull Market Support Band',
overlay=true,
default_qty_type=strategy.percent_of_equity,
default_qty_value=100,
commission_type=strategy.commission.percent,
commission_value=0.1,
slippage=3)
// -------------------------------------------------------------------------
// Compile-time timestamp constants for default date range
// (2018-01-01 00:00:00 UTC -> 1514764800000
// 2069-12-31 23:59:59 UTC -> 3155759999000)
// -------------------------------------------------------------------------
const int defaultFromDate = 1514764800000
const int defaultToDate = 3155759999000
// -------------------------------------------------------------------------
// Inputs: date range
// -------------------------------------------------------------------------
fromDate = input(title='Start Date', defval=defaultFromDate)
toDate = input(title='End Date', defval=defaultToDate)
// -------------------------------------------------------------------------
// Indicator settings & calculations
// -------------------------------------------------------------------------
smaLength = 20
emaLength = 21
source = close
sma = ta.sma(source, smaLength)
ema = ta.ema(source, emaLength)
// -------------------------------------------------------------------------
// Fetch weekly SMA & EMA
// -------------------------------------------------------------------------
outSma = request.security(syminfo.tickerid, 'W', sma, gaps=barmerge.gaps_on, lookahead=barmerge.lookahead_off)
outEma = request.security(syminfo.tickerid, 'W', ema, gaps=barmerge.gaps_on, lookahead=barmerge.lookahead_off)
// -------------------------------------------------------------------------
// Plot visuals (20w SMA, 21w EMA, fill in between)
// -------------------------------------------------------------------------
smaPlot = plot(outSma, color=color.new(color.red, 0), title='20w SMA')
emaPlot = plot(outEma, color=color.new(color.green, 0), title='21w EMA')
fill(smaPlot, emaPlot, color=color.new(color.orange, 75), fillgaps=true)
// -------------------------------------------------------------------------
// We evaluate crossover/crossunder on *every bar* and store the result
// -------------------------------------------------------------------------
crossUp = ta.crossover(outSma, outEma)
crossDown = ta.crossunder(outSma, outEma)
// -------------------------------------------------------------------------
// Trade logic: only operate within chosen date range
// Buy when outSma crosses above outEma; Sell (close) when outSma crosses below outEma
// -------------------------------------------------------------------------
inDateRange = true
if inDateRange
// If we have a crossUp event on this bar, buy (go Long)
if crossUp
strategy.entry('Long', strategy.long)
// If we have a crossDown event on this bar, sell (close Long)
if crossDown
strategy.close('Long')