ڈبل ای ایم اے گولڈن کراس رجحان کی پیروی کرنے والی حکمت عملی


تخلیق کی تاریخ: 2023-11-21 15:10:54 آخر میں ترمیم کریں: 2023-11-21 15:10:54
کاپی: 0 کلکس کی تعداد: 648
1
پر توجہ دیں
1617
پیروکار

ڈبل ای ایم اے گولڈن کراس رجحان کی پیروی کرنے والی حکمت عملی

جائزہ

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

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

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

جب تیز لائن ای ایم اے پر سست لائن ای ایم اے کو پار کرتے ہیں تو ، مختصر مدت کے رجحان میں اضافہ ہوتا ہے ، درمیانی اور طویل مدتی رجحان میں تبدیلی ہوسکتی ہے ، یہ ایک زیادہ سگنل ہے۔ جب تیز لائن ای ایم اے کے نیچے سست لائن ای ایم اے کو پار کرتے ہیں تو ، مختصر مدت کے رجحان میں تبدیلی ہوتی ہے ، اور درمیانی اور طویل مدتی رجحان میں تبدیلی ہوسکتی ہے ، یہ ایک منفی سگنل ہے۔

تیز اور سست EMA کے موازنہ کے ذریعہ ، مختصر اور درمیانی لمبی مدت کے دو ٹائم اسکیل پر رجحانات کے موڑ کو پکڑنا ایک عام رجحانات کی پیروی کرنے کی حکمت عملی ہے۔

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

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

اسٹریٹجک رسک

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

خطرے سے نمٹنے کے اقدامات:

  1. EMA سست رفتار لائن پیرامیٹرز کو بہتر بنانے کے لئے ، بہترین پیرامیٹرز کا مجموعہ تلاش کریں
  2. فلٹرنگ میکانزم کو بڑھانا تاکہ غیر فعال سگنلوں سے بچنے کے لئے
  3. ٹیسٹ اور ATR پیرامیٹرز کو بہتر بنانے کے لئے اس بات کا یقین کرنے کے لئے کہ سٹاپ نقصان کی روک تھام مناسب ہے

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

  1. مختلف ای ایم اے سائیکل پیرامیٹرز کی استحکام کو جانچنے کے لئے اعدادوشمار پر مبنی طریقہ کار
  2. فلٹرنگ کی شرائط میں اضافہ کریں تاکہ دوسرے اشارے کے ساتھ مل کر غیر موثر سگنل سے بچا جاسکے
  3. زیادہ سے زیادہ سٹاپ نقصان کی شرح کے لئے ATR پیرامیٹرز کو بہتر بنائیں

خلاصہ کریں۔

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

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

//@version=3
strategy(title = "VP Backtester", overlay=false)


// Create General Strategy Inputs
st_yr_inp = input(defval=2017, title='Backtest Start Year')
st_mn_inp = input(defval=01, title='Backtest Start Month')
st_dy_inp = input(defval=01, title='Backtest Start Day')
en_yr_inp = input(defval=2025, title='Backtest End Year')
en_mn_inp = input(defval=01, title='Backtest End Month')
en_dy_inp = input(defval=01, title='Backtest End Day')
 
// Default Stop Types
fstp = input(defval=false, title="Fixed Perc stop")
fper = input(defval=0.1, title='Percentage for fixed stop', type=float)
atsp = input(defval=true, title="ATR Based stop")
atrl = input(defval=14, title='ATR Length for stop')
atrmsl = input(defval=1.5, title='ATR Multiplier for stoploss')
atrtpm = input(defval=1, title='ATR Multiplier for profit')
 
// Sessions
asa_inp = input(defval=true, title="Trade the Asian Session")
eur_inp = input(defval=true, title="Trade the European Session")
usa_inp = input(defval=true, title="Trade the US session")
ses_cls = input(defval=true, title="End of Session Close Out?")
 
// Session Start / End times (In exchange TZ = UTC-5)    
asa_ses = "1700-0300" 
eur_ses = "0200-1200" 
usa_ses = "0800-1700"  
 
in_asa = time(timeframe.period, asa_ses)
in_eur = time(timeframe.period, eur_ses)
in_usa = time(timeframe.period, usa_ses)
 
strategy.risk.allow_entry_in(strategy.direction.all)
 
// Set start and end dates for backtest
start = timestamp(st_yr_inp, st_mn_inp, st_dy_inp,00,00)
end = timestamp(en_yr_inp, en_mn_inp, en_dy_inp,00,00)
window()  => time >= start and time <= end ? true : false // create function "within window of time"

 
// Check if we are in a sessions we want to trade
can_trade = asa_inp and not na(in_asa) ? true :
  eur_inp and not na(in_eur) ? true :
  usa_inp and not na(in_usa) ? true :
  false
  
// atr calc for stop and profit
atr = atr(atrl)
atr_stp_dst_sl = atr * atrmsl
atr_stp_dst_tp = atr * atrtpm



//*************************************************************************************
// Put your strategy/indicator code below
// and make sure to set long_condition=1 for opening a buy trade
// and short_condition for opening a sell trade
//*************************************************************************************
fastInput = input(21)
slowInput = input(55)

fast = ema(close, fastInput)
slow = ema(close, slowInput)

plot(fast, color = red)
plot(slow, color = blue)

long_condition = crossover(fast, slow)
short_condition = crossunder(fast, slow)


//*************************************************************************************
// Trade management with ATR based stop & profit
//*************************************************************************************
if (long_condition and window() )
    strategy.entry("Long Entry",  strategy.long)
    if strategy.position_size <= 0 // Less than as in both direction strat - Could be long before switching
        if atsp
            atr_stop = open  - atr_stp_dst_sl
            atr_profit = open + atr_stp_dst_tp
            strategy.exit('ATR Long Exit', "Long Entry", stop=atr_stop, limit = atr_profit)
        if fstp
            stop = open - (open * fper)
            strategy.exit('Perc Fixed Long Stop Exit', "Long Entry", stop=stop)
 
if (short_condition and window() )
    strategy.entry("Short Entry",strategy.short)
    if strategy.position_size >= 0 // Greater than as in both direction strat - Could be long before switching
        if atsp
            atr_stop = open  + atr_stp_dst_sl
            atr_profit = open - atr_stp_dst_tp
            strategy.exit('ATR Short Exit', "Short Entry", stop=atr_stop, limit = atr_profit)
        if fstp
            stop = open + (open * fper)
            strategy.exit('Perc Fixed Short Stop Exit', "Short Entry", stop=stop)
 
 
strategy.close_all(when=not can_trade and ses_cls)