سپورٹ ریزسٹنس اور اوسط والیوم بریک تھرو پر مبنی ٹریلنگ اسٹاپ نقصان کی حکمت عملی


تخلیق کی تاریخ: 2024-01-11 17:58:26 آخر میں ترمیم کریں: 2024-01-11 17:58:26
کاپی: 0 کلکس کی تعداد: 548
1
پر توجہ دیں
1617
پیروکار

سپورٹ ریزسٹنس اور اوسط والیوم بریک تھرو پر مبنی ٹریلنگ اسٹاپ نقصان کی حکمت عملی

جائزہ

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

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

اس حکمت عملی میں بنیادی طور پر مندرجہ ذیل منطق شامل ہیں:

  1. ta.pivothigh اور ta.pivotlow افعال کا استعمال کرتے ہوئے L_Bars روٹ K لائن کی اعلی ترین قیمت اور R_Bars روٹ K لائن کی کم ترین قیمت کا حساب لگائیں ، جس میں مزاحمت کی لائن اور سپورٹ لائن کے طور پر کام کیا جائے گا۔

  2. جب بند ہونے والی قیمت مزاحمت کی لائن کو عبور کرتی ہے اور حجم حجم کی حد سے تجاوز کرتا ہے تو ، زیادہ کام کریں۔ جب بند ہونے والی قیمت معاون لائن کو عبور کرتی ہے اور حجم حجم کی حد سے تجاوز کرتی ہے تو ، خالی کریں۔

  3. زیادہ کرنے کے بعد ، قریبی-ATR_LO کو طویل اسٹاپ کے طور پر استعمال کریں ، اور قریبی + ATR_SH کو مختصر اسٹاپ کے طور پر استعمال کریں ، متحرک ایڈجسٹمنٹ ٹریکنگ اسٹاپ کے لئے۔

  4. ٹریڈنگ کے اوقات میں ((0915-1445)) ، ہر روز پہلا ٹریڈنگ سگنل ، منافع یا نقصان کے خطرے کی حد تک پہنچنے کے بعد کوئی نیا آرڈر نہیں کھولا جائے گا۔

اسٹریٹجک فوائد

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

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

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

اسٹریٹجک رسک

  1. سپورٹ مزاحمت ناکام ہوسکتی ہے اور مؤثر انٹری سگنل فراہم نہیں کرسکتی ہے۔

  2. اے ٹی آر کے اشارے کو بہت زیادہ ترتیب دیا گیا ہے ، جس سے نقصانات کا خطرہ بڑھ سکتا ہے ، جس سے نقصان کا خطرہ بڑھ سکتا ہے۔

  3. ٹرانزیکشن کی مقدار کا اشارے بہت چھوٹا ہے ، جس سے مواقع ضائع ہوسکتے ہیں۔ بہت بڑا ہے ، جس سے غلط فیصلے کا اشارہ ہوسکتا ہے۔

حل:

  • مختلف اقسام کی خصوصیات کے مطابق حمایت مزاحمت پیرامیٹرز کو ایڈجسٹ کریں

  • اے ٹی آر ضارب اور ٹرانزیکشن حجم کی کمی کے پیرامیٹرز کو بہتر بنائیں

  • دوسرے اشارے کے ساتھ وقت کا تعین

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

  1. دوسرے اشارے کے ساتھ مل کر انٹری ٹائمنگ کا تعین کریں ، جیسے کہ منتقل اوسط وغیرہ

  2. اے ٹی آر ضارب اور ٹرانزیکشن حجم کی کمی کے پیرامیٹرز کو بہتر بنانا

  3. مشین لرننگ الگورتھم کے ساتھ مل کر متحرک پیرامیٹرز کی اصلاح

  4. دیگر پرجاتیوں میں توسیع کریں اور پیرامیٹرز کو تلاش کریں

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2024-01-03 00:00:00
end: 2024-01-10 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//   ____________                _________                      _____________
//  |____________|             ||________|                      ||__________|
//       ||            ____    ||        ||                     ||                    ______ ________    _____ ________
//       ||    |   || ||       ||________|| |   || ||    ||     ||     |   ||   /\\   |   // |______| || ||    |______|
//       ||    |===|| |===     ||__________ |   || ||    ||     ||     |===||  /__\\  |===      ||    ||   \\     ||
//       ||    |   || ||___    ||        || |___|| ||___ ||___  ||     |   || /    \\ |   \\    ||    || ___||    ||
//       ||                    ||________||                     ||__________
//       ||                    ||________|                      ||__________|
  
//@version=5
strategy("SUPPORT RESISTANCE STRATEGY [5MIN TF]",overlay=true )
L_Bars = input.int(defval = 10, minval = 1 , maxval = 50, step =1)
R_Bars = input.int(defval = 15, minval = 1 , maxval = 50, step =1)
volumeRange = input.int(20, title='Volume Break [threshold]', minval = 1)

// ═══════════════════════════ //
// ——————————> INPUT <——————— //
// ═══════════════════════════ //

EMA1 = input.int(title='PRICE CROSS EMA', defval = 150, minval = 10 ,maxval = 400)
factor1 = input.float(title='_ATR LONG',defval = 3.2 , minval = 1 , maxval = 5 , step = 0.1, tooltip = "ATR TRAIL LONG")
factor2 = input.float(title='_ATR SHORT',defval = 3.2 , minval = 1 , maxval = 5 , step = 0.1, tooltip = "ATR TRAIL SHORT")
risk = input.float(title='RISK',defval = 200 , minval = 1 , maxval = 5000 , step = 50, tooltip = "RISK PER TRADE")


var initialCapital = strategy.equity
t = time(timeframe.period, '0915-1445:1234567')
time_cond = not na(t)

// ══════════════════════════════════ //
// ———————————> EMA DATA <——————————— //
// ══════════════════════════════════ //
ema1 = ta.ema(close, EMA1)

plot(ema1, color=color.new(color.yellow, 0), style=plot.style_linebr, title='ema1')

// ══════════════════════════════════ //
// ————————> TRAIL DATA <———————————— //
// ══════════════════════════════════ //
// *******Calculate LONG TRAIL data*****
ATR_LO = ta.atr(14)*factor1

// *******Calculate SHORT TRAIL data*****
ATR_SH = ta.atr(14)*factor2

long_trail = close - ATR_LO
short_trail = close + ATR_SH

// Plot atr data
//plot(longStop, color=color.new(color.green, 0), style=plot.style_linebr, title='Long Trailing Stop')
//plot(shortStop , color=color.new(color.red, 0), style=plot.style_linebr, title='Short Trailing Stop')

// ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════ //
// ————————————————————————————————————————————————————————> RESISTANCE/SUPPORT LEVELS DATA <————————————————————————————————————————————————————————————————————————————————————————————— //
// ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════ //

Resistance_pi = fixnan(ta.pivothigh(L_Bars, R_Bars)[1])
Support_pi = fixnan(ta.pivotlow(L_Bars, R_Bars)[1])
r1 = plot(Resistance_pi, color=ta.change(Resistance_pi) ? na : color.red,  offset=-(R_Bars + 1),linewidth=2, title='RESISTANCE')
s1 = plot(Support_pi, color=ta.change(Support_pi) ? na : color.green, offset=-(R_Bars + 1),linewidth=2, title='SUPPORT')

//Volume 
vol_1 = ta.ema(volume, 5)
vol_2 = ta.ema(volume, 10)
osc_vol = 100 * (vol_1 - vol_2) / vol_2

// ══════════════════════════════════//
// ————————> LONG POSITIONS <————————//
// ══════════════════════════════════//
//******barinstate.isconfirmed used to avoid repaint in real time*******

if ( ta.crossover(close, Resistance_pi) and osc_vol > volumeRange and not(open - low > close - open) and strategy.opentrades==0 and barstate.isconfirmed and time_cond and close >= ema1 )
    strategy.entry(id= "Long" ,direction = strategy.long, comment = "BUY")
    
plot(long_trail , color=color.new(color.blue, 0), style=plot.style_linebr, title='long Stop')

if strategy.position_size > 0 
    strategy.exit("long tsl", "Long" , stop = long_trail ,comment='SELL')
 
// ═════════════════════════════════════//
// ————————> SHORT POSITIONS <————————— //
// ═════════════════════════════════════//
if ( ta.crossunder(close, Support_pi) and osc_vol > volumeRange and not(open - close < high - open)  and strategy.opentrades==0 and barstate.isconfirmed and time_cond and close <= ema1 )
    strategy.entry(id = "Short" ,direction = strategy.short,  comment = "SELL") 

if strategy.position_size < 0
    strategy.exit("short tsl", "Short" ,  stop = short_trail ,comment='BUY')

// ════════════════════════════════════════════════//
// ————————> CLOSE ALL POSITIONS BY 3PM <————————— //
// ════════════════════════════════════════════════//
strategy.close_all(when = hour == 14 and minute == 55)

// ════════════════════════════════════════//
// ————————> MAX INTRADAY LOSS  <————————— //
// ════════════════════════════════════════//
// strategy.risk.max_intraday_loss(type = strategy.cash, value = risk)