ATR اور MA کے امتزاج پر مبنی سپر ٹرینڈ تجارتی حکمت عملی


تخلیق کی تاریخ: 2023-12-01 16:40:27 آخر میں ترمیم کریں: 2023-12-01 16:40:27
کاپی: 0 کلکس کی تعداد: 1074
1
پر توجہ دیں
1619
پیروکار

ATR اور MA کے امتزاج پر مبنی سپر ٹرینڈ تجارتی حکمت عملی

جائزہ

سپر ٹرینڈ ٹریڈنگ حکمت عملی ایک رجحان کی پیروی کرنے والی حکمت عملی ہے جو اوسطا حقیقی رینج (اے ٹی آر) اور منتقل اوسط (ایم اے) پر مبنی ہے۔ یہ رجحان کی پیروی اور توڑنے والی تجارت کے فوائد کو جوڑتا ہے ، جس کا مقصد درمیانی مدت کے رجحان کی سمت کی نشاندہی کرنا اور رجحان کی تبدیلی کے مطابق تجارتی سگنل پیدا کرنا ہے۔

اس حکمت عملی کا بنیادی نظریہ یہ ہے کہ جب قیمت سپر ٹرینڈ چینل کو توڑ دیتی ہے تو ، اس رجحان کے الٹ ہونے کی نشاندہی کی جاتی ہے ، اس وقت خرید یا فروخت کی جاتی ہے۔ اس نے منافع کو مقفل کرنے اور خطرے کو کنٹرول کرنے کے لئے ایک ہی وقت میں اسٹاپ نقصان اور اسٹاپ اسٹاپ کی سطح طے کی ہے۔

حکمت عملی کا اصول

سپر ٹرینڈ حکمت عملی کے حساب کتاب کے عمل میں درج ذیل مراحل شامل ہیں:

  1. اے ٹی آر کا حساب لگائیں۔ اے ٹی آر ایک مدت کے دوران اوسط اتار چڑھاؤ کی شدت کی عکاسی کرتا ہے۔
  2. کم از کم قیمت اور زیادہ سے زیادہ قیمت کی بنیاد پر چینل کی درمیانی لائن کا حساب لگائیں۔ چینل کی درمیانی لائن کا حساب لگانے کا فارمولا ہے: ((زیادہ سے زیادہ قیمت + کم سے کم قیمت) / 2
  3. اے ٹی آر اور صارف کے ذریعہ مقرر کردہ اے ٹی آر ضرب کی بنیاد پر ، چینل کی اوپری حد اور نچلی حد کا حساب لگائیں۔ چینل کی اوپری حد کے حساب کتاب کا فارمولا ہے: وسط لائن + ((ATR × ATR ضرب)) ؛ چینل کی نچلی حد کے حساب کتاب کا فارمولا ہے: وسط لائن - ((ATR × ATR ضرب)) ۔
  4. بندش کی قیمت اور چینل کے اوپری نچلے حصے کے تعلقات کا موازنہ کریں ، رجحان کی سمت کا تعین کریں۔ بندش کی قیمت چینل کے اوپری حصے سے اوپر کی طرف رجحان ہے ، بندش کی قیمت چینل کے نچلے حصے سے نیچے کی طرف رجحان ہے۔
  5. جب قیمت ٹرینڈ چینل کو توڑتی ہے تو ، الٹا تجارت کی جاتی ہے۔ جیسے کہ قیمت نیچے سے اوپر کی طرف سے چینل کی اوپری حد کو توڑتی ہے ، خریدنے کا اشارہ دیتی ہے۔ قیمت اوپر سے نیچے کی طرف سے چینل کی نچلی حد کو توڑتی ہے ، فروخت کا اشارہ دیتی ہے۔

اس حکمت عملی کا فائدہ یہ ہے کہ یہ ایک ہی وقت میں رجحان کی پیروی اور رجحان کی واپسی کے ساتھ تجارت کے طریقوں کو جوڑتا ہے۔ یہ بڑے رجحان کی سمت کا اندازہ لگانے کے ساتھ ساتھ واپسی کے مواقع کو بروقت پکڑنے کے قابل ہے۔ اس کے علاوہ ، اس میں خطرے کو کنٹرول کرنے کے لئے اسٹاپ نقصانات کا نظام بھی ہے۔

طاقت کا تجزیہ

سپر ٹرینڈ حکمت عملی کے درج ذیل فوائد ہیں:

1۔ درمیانی مدت کے رجحانات کی نگرانی کرنا

سپر ٹرینڈ چینل اے ٹی آر حساب کتاب پر مبنی ہے ، جو درمیانی مدت کی قیمتوں میں اتار چڑھاو کی حد کو مؤثر طریقے سے ظاہر کرنے کے قابل ہے۔ یہ عام حرکت پذیر اوسط سے زیادہ درمیانی مدت کے رجحانات کی پیروی کرنے کے قابل ہے۔

2۔ وقت پر رجحان کی تبدیلی کو پکڑنا

جب قیمت چینل کو توڑتی ہے تو ، فوری طور پر تجارتی سگنل جاری کیا جاتا ہے ، جس سے بڑے رجحان کی واپسی کو بروقت پکڑ لیا جاسکتا ہے۔ اس سے پوزیشن کو مناسب طریقے سے ایڈجسٹ کرنے اور اوور ٹرم ہولڈنگ کو کم کرنے کی ضمانت ملتی ہے۔

3 ۔ نقصان سے بچنے کا طریقہ کار

اس حکمت عملی میں ایک ہی وقت میں اسٹاپ اور اسٹاپ پوزیشنیں مقرر کی گئیں ہیں ، جو خود بخود اسٹاپ کو روک سکتی ہیں۔ اس سے پھیلنے والے نقصانات کا خطرہ بہت حد تک کم ہوجاتا ہے ، جو رجحان کی صورتحال کو سمجھنے میں مددگار ہوتا ہے۔

4۔ آسان طریقے سے

اس حکمت عملی میں بنیادی طور پر اوسط لائن اور اے ٹی آر اشارے استعمال کیے جاتے ہیں ، جس سے یہ آسان اور آسانی سے حاصل کیا جاسکتا ہے۔ اس سے ڈسک پر کام کرنے میں دشواری کم ہوجاتی ہے۔

5۔ فنڈز کا موثر استعمال

سپر رجحانات کی حکمت عملی درمیانی مدت کے رجحانات کا سراغ لگاتی ہے اور انفرادی سلائڈ پوائنٹس کو کنٹرول کرتی ہے ، جس سے مجموعی طور پر فنڈز کا زیادہ استعمال ہوتا ہے۔

خطرے کا تجزیہ

سپر ٹرینڈز کی حکمت عملی میں کچھ ممکنہ خطرات بھی ہیں:

1۔ ہلچل کے رجحان کی اعلی موقع لاگت

سپر ٹرینڈ حکمت عملی درمیانی اور طویل مدتی رجحانات پر توجہ مرکوز کرتی ہے ، اور چونکانے والی مارکیٹوں میں ، اس کی لاگت زیادہ ہے ، جس سے کچھ کم کرنے کے مواقع ضائع ہوسکتے ہیں۔

2. پیرامیٹرز کی اصلاح کے اثرات

اے ٹی آر سائیکل اور اے ٹی آر ضرب کا انتخاب تجارتی حکمت عملی کی تاثیر پر زیادہ اثر ڈالتا ہے۔ اگر پیرامیٹرز کو غلط ترتیب دیا جائے تو ، تجارتی سگنل کی تاثیر کو چھوٹ دی جائے گی۔

3۔ کچھ حد تک پسماندگی

سپر ٹرینڈ چینل کے حساب سے کچھ تاخیر ہوسکتی ہے ، جس کی وجہ سے سگنل دیر سے پیدا ہوسکتے ہیں۔ یہ اس حکمت عملی کا بنیادی مسئلہ ہے جس کو حل کرنے کی ضرورت ہے۔

4 ۔ سخت نقصان کنٹرول کی ضرورت

اگر اسٹاپ نقصان کی پوزیشن بہت بڑی ترتیب دی گئی ہو یا ونڈ کنٹرول سے بچنے میں ناکامی ہو تو ، انتہائی حالات میں اس سے زیادہ نقصان ہوسکتا ہے۔ لہذا ، مستحکم منافع حاصل کرنے کے لئے اسٹاپ نقصان کی حکمت عملی پر سختی سے عمل کرنا ضروری ہے۔

اصلاح کی سمت

سپر ٹرینڈ حکمت عملی میں مزید اصلاحات کی گنجائش ہے ، جس میں شامل ہیں:

ایک سے زیادہ اے ٹی آر سائیکلوں کا مجموعہ

مثال کے طور پر 10 دن ، 20 دن وغیرہ متعدد اے ٹی آر سائیکلوں کو ملا کر مجموعی اے ٹی آر اشارے تشکیل دے سکتے ہیں۔ اس طرح اشارے کی حساسیت کو بہتر بنایا جاسکتا ہے ، اور تاخیر کی دشواری کو بہتر بنایا جاسکتا ہے۔

2۔ اسٹاپ نقصان کی حکمت عملی کا ماڈیول شامل کریں

اس کے علاوہ ، ٹریپل اسٹاپ ، نوسکھئیے اسٹاپ ، اور ترتیب بندش جیسے اسٹریٹجک ماڈیولز کو شامل کرکے ، نقصان کے خطرے کو کم کرنے کے لئے اسٹاپ کنٹرول کو مزید مضبوط بنایا جاسکتا ہے۔

3. پیرامیٹرز کی ترتیب کو بہتر بنائیں

اے ٹی آر سائیکل ، اے ٹی آر ضرب وغیرہ پیرامیٹرز کی ترتیب کو بہتر بنائیں ، بہترین پیرامیٹرز کا مجموعہ تلاش کریں ، اس سے حکمت عملی کی آمدنی میں مزید اضافہ ہوسکتا ہے۔ اس کے علاوہ ، پیرامیٹرز کو متحرک طور پر بہتر بنایا جاسکتا ہے ، مختلف اقسام اور مارکیٹ کے مراحل کے مطابق مناسب اقدار کا انتخاب کریں۔

4۔ انٹیگریٹڈ مشین لرننگ ماڈل

آخر میں ، مشین لرننگ ماڈل کو مربوط کرنے کی کوشش کی جاسکتی ہے ، جس سے رجحانات کی تشخیص اور سگنل سے پیدا ہونے والی آٹومیشن ممکن ہوسکتی ہے۔ اس سے موضوعی عوامل کی مداخلت کو کم کیا جاسکتا ہے ، اور اسٹریٹجک نظام کی استحکام کو مزید بہتر بنانے کا امکان ہے۔

خلاصہ کریں۔

سپر ٹرینڈ ٹریڈنگ حکمت عملی درمیانی مدت کے رجحانات کا اندازہ لگانے کے لئے اور رجحانات کے الٹ پوائنٹس پر ٹریڈنگ سگنل پیدا کرنے اور خود کار طریقے سے اسٹاپ نقصان کو حاصل کرنے کے لئے اوسط لائن اشارے اور اے ٹی آر اشارے کا جامع استعمال کرتی ہے۔ اس حکمت عملی میں بڑے رجحانات کو پکڑنے کے ساتھ ساتھ وقت میں الٹ پوائنٹس پر بھی قبضہ کیا جاسکتا ہے۔ اس کا فائدہ بنیادی طور پر درمیانی مدت کے رجحانات کی پیروی ، رجحان الٹ شناخت اور اسٹاپ نقصان کنٹرول کے تین پہلوؤں میں ظاہر ہوتا ہے۔

لیکن اس حکمت عملی میں کچھ خامیاں بھی ہیں ، بنیادی طور پر چونکانے والی صورتحال کو سمجھنے میں کمی اور تاخیر کا مسئلہ۔ اس کے لئے متعدد پہلوؤں سے اصلاحات کی ضرورت ہے ، جیسے کہ اے ٹی آر سائیکل کو جوڑنا ، اسٹاپ نقصان ماڈیول کو بڑھانا ، پیرامیٹرز کی اصلاح اور مشین لرننگ متعارف کرانا۔ یہ یقینی طور پر اس سپر ٹرینڈ حکمت عملی کی استحکام اور سونے کی شرح کو مزید بڑھا سکتا ہے۔

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2022-11-30 00:00:00
end: 2023-11-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Supertrend V1.0 - Buy or Sell Signal",overlay=true)
Factor=input(3, minval=1,maxval = 100)
Pd=input(7, minval=1,maxval = 100)
//Calculating ATR
atrLength = input(title="ATR Length:",  defval=14, minval=1)
Stop_Loss_Factor = input(1.5, minval=0,step=0.01)
factor_profit = input(1.0, minval=0,step=0.01)

// === INPUT BACKTEST RANGE ===
FromMonth = input(defval = 4, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 10, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2016, title = "From Year", minval = 2009)
ToMonth   = input(defval = 4, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 10, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 2039, title = "To Year", minval = 2017)

// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => time >= start and time <= finish ? true : false // create function "within window of time"


// Calculate ATR
atrValue=atr(atrLength)
decimals = abs(log(syminfo.mintick) / log(10)) 
Atr = atrValue
if(decimals == 5)
    Atr := atrValue * 10000
if(decimals == 4)
    Atr := atrValue * 1000
if(decimals == 3)
    Atr := atrValue * 100
if(decimals == 2)
    Atr := atrValue * 10


//VJ2 Supertrend

Up=hl2-(Factor*atr(Pd))
Dn=hl2+(Factor*atr(Pd))

TrendUp = 0.0
TrendUp:=close[1]>TrendUp[1]? max(Up,TrendUp[1]) : Up
TrendDown = 0.0
TrendDown:=close[1]<TrendDown[1]? min(Dn,TrendDown[1]) : Dn

Trend = 0.0
Trend := close > TrendDown[1] ? 1: close< TrendUp[1]? -1: nz(Trend[1],1)
Tsl = 0.0
Tsl := Trend==1? TrendUp: TrendDown

linecolor = Trend == 1 ? green : red

plot(Tsl, color = linecolor , style = line , linewidth = 2,title = "SuperTrend")

plotshape(cross(close,Tsl) and close>Tsl , "Up Arrow", shape.triangleup,location.belowbar,green,0,0)
plotshape(cross(Tsl,close) and close<Tsl , "Down Arrow", shape.triangledown , location.abovebar, red,0,0)
//plot(Trend==1 and Trend[1]==-1,color = linecolor, style = circles, linewidth = 3,title="Trend")

plotarrow(Trend == 1 and Trend[1] == -1 ? Trend : na, title="Up Entry Arrow", colorup=lime, maxheight=60, minheight=50, transp=0)
plotarrow(Trend == -1 and Trend[1] == 1 ? Trend : na, title="Down Entry Arrow", colordown=red, maxheight=60, minheight=50, transp=0)




//Strategy 
Trend_buy = Trend == 1 
Trend_buy_prev = Trend[1] == -1
algo_buy_pre = Trend_buy and Trend_buy_prev
algo_buy = algo_buy_pre == 1 ? 1 : na
Trend_sell= Trend == -1 
Trend_sell_prev = Trend[1] == 1
algo_sell_pre = Trend_sell and Trend_sell_prev
algo_sell = algo_sell_pre == 1 ? 1:na

strategy.entry("Long1", strategy.long, when= window() and algo_buy==1)

strategy.entry("Short1", strategy.short, when=window() and algo_sell==1)

bought = strategy.position_size > strategy.position_size 
sold = strategy.position_size < strategy.position_size 

longStop = Stop_Loss_Factor * valuewhen(bought, Atr, 0) 
shortStop = Stop_Loss_Factor * valuewhen(sold, Atr, 0) 
longProfit = factor_profit * longStop 
shortProfit = factor_profit * shortStop 


if(decimals == 5) 
    longStop := longStop *100000 
    longProfit := longProfit *100000 
if(decimals == 4) 
    longStop := longStop * 10000 
    longProfit := longProfit * 10000 
if(decimals == 3) 
    longStop := longStop * 1000 
    longProfit := longProfit * 1000 
if(decimals == 2) 
    longStop := longStop * 100 
    longProfit := longProfit *100 
if(decimals == 5) 
    shortStop := shortStop * 100000 
    shortProfit := shortProfit * 100000 
if(decimals == 4) 
    shortStop := shortStop * 10000 
    shortProfit := shortProfit * 10000 
if(decimals == 3) 
    shortStop := shortStop * 1000 
    shortProfit := shortProfit * 1000 
if(decimals == 2) 
    shortStop := shortStop * 100 
    shortProfit := shortProfit * 100 

strategy.exit("Exit Long", from_entry = "Long1", loss =longStop, profit = longProfit) 
strategy.exit("Exit Short", from_entry = "Short1", loss =shortStop, profit = shortProfit)