ڈبل EMA گولڈن کراس بریک آؤٹ حکمت عملی


تخلیق کی تاریخ: 2023-12-20 16:34:58 آخر میں ترمیم کریں: 2023-12-20 16:34:58
کاپی: 1 کلکس کی تعداد: 719
1
پر توجہ دیں
1621
پیروکار

ڈبل EMA گولڈن کراس بریک آؤٹ حکمت عملی

جائزہ

یہ حکمت عملی 5 منٹ اور 34 منٹ کی اشاریہ حرکت پذیری اوسط ((EMA) پر مبنی ہے جو گولڈ کراس اور ڈیڈ کراس آپریشنز کرتی ہے۔ جب تیز لائن نیچے سے سست لائن کو پار کرتی ہے تو ، لمبی پوزیشن کھولیں اور جب تیز لائن اوپر سے نیچے سے سست لائن کو پار کرتی ہے تو ، خالی پوزیشن کھولیں۔ اور خطرے پر قابو پانے کے لئے اسٹاپ نقصان کا تعین کریں۔

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

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

طاقت کا تجزیہ

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

خطرے کا تجزیہ

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

اصلاح کی سمت

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

خلاصہ کریں۔

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

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

//@version=2
strategy(title='[STRATEGY][RS]MicuRobert EMA cross V2', shorttitle='S', overlay=true, pyramiding=0, initial_capital=100000)
USE_TRADESESSION = input(title='Use Trading Session?', type=bool, defval=true)
USE_TRAILINGSTOP = input(title='Use Trailing Stop?', type=bool, defval=true)
trade_session = input(title='Trade Session:',defval='0400-1500', confirm=false)
istradingsession = not USE_TRADESESSION ? false : not na(time('1', trade_session))
bgcolor(istradingsession?gray:na)
trade_size = input(title='Trade Size:', type=float, defval=1)
tp = input(title='Take profit in pips:', type=float, defval=55.0) * (syminfo.mintick*10)
sl = input(title='Stop loss in pips:', type=float, defval=22.0) * (syminfo.mintick*10)
ma_length00 = input(title='EMA length:',  defval=5)
ma_length01 = input(title='DEMA length:',  defval=34)
price = input(title='Price source:',  defval=open)

//  ||--- NO LAG EMA, Credit LazyBear:  ---||
f_LB_zlema(_src, _length)=>
    _ema1=ema(_src, _length)
    _ema2=ema(_ema1, _length)
    _d=_ema1-_ema2
    _zlema=_ema1+_d
//  ||-------------------------------------||

ma00 = f_LB_zlema(price, ma_length00)
ma01 = f_LB_zlema(price, ma_length01)
plot(title='M0', series=ma00, color=black)
plot(title='M1', series=ma01, color=black)

isnewbuy = change(strategy.position_size)>0 and change(strategy.opentrades)>0
isnewsel = change(strategy.position_size)<0 and change(strategy.opentrades)>0

buy_entry_price = isnewbuy ? price : buy_entry_price[1]
sel_entry_price = isnewsel ? price : sel_entry_price[1]
plot(title='BE', series=buy_entry_price, style=circles, color=strategy.position_size <= 0 ? na : aqua)
plot(title='SE', series=sel_entry_price, style=circles, color=strategy.position_size >= 0 ? na : aqua)
buy_appex = na(buy_appex[1]) ? price : isnewbuy ? high : high >= buy_appex[1] ? high : buy_appex[1]
sel_appex = na(sel_appex[1]) ? price : isnewsel ? low : low <= sel_appex[1] ? low : sel_appex[1]
plot(title='BA', series=buy_appex, style=circles, color=strategy.position_size <= 0 ? na : teal)
plot(title='SA', series=sel_appex, style=circles, color=strategy.position_size >= 0 ? na : teal)
buy_ts = buy_appex - sl
sel_ts = sel_appex + sl
plot(title='Bts', series=buy_ts, style=circles, color=strategy.position_size <= 0 ? na : red)
plot(title='Sts', series=sel_ts, style=circles, color=strategy.position_size >= 0 ? na : red)

buy_cond1 = crossover(ma00, ma01) and (USE_TRADESESSION ? istradingsession : true)
buy_cond0 = crossover(price, ma00) and ma00 > ma01 and (USE_TRADESESSION ? istradingsession : true)
buy_entry = buy_cond1 or buy_cond0
buy_close = (not USE_TRAILINGSTOP ? low <= buy_entry_price - sl: low <= buy_ts) or high>=buy_entry_price+tp//high>=last_traded_price + tp or low<=last_traded_price - sl //high >= hh or 
sel_cond1 = crossunder(ma00, ma01) and (USE_TRADESESSION ? istradingsession : true)
sel_cond0 = crossunder(price, ma00) and ma00 < ma01 and (USE_TRADESESSION ? istradingsession : true)
sel_entry = sel_cond1 or sel_cond0
sel_close = (not USE_TRAILINGSTOP ? high >= sel_entry_price + sl : high >= sel_ts) or low<=sel_entry_price-tp//low<=last_traded_price - tp or high>=last_traded_price + sl //low <= ll or 

strategy.entry('buy', long=strategy.long, qty=trade_size, comment='buy', when=buy_entry)
strategy.close('buy', when=buy_close)
strategy.entry('sell', long=strategy.short, qty=trade_size, comment='sell', when=sel_entry)
strategy.close('sell', when=sel_close)