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


تخلیق کی تاریخ: 2023-09-12 15:12:56 آخر میں ترمیم کریں: 2023-09-12 15:12:56
کاپی: 0 کلکس کی تعداد: 802
1
پر توجہ دیں
1617
پیروکار

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

حکمت عملی:

  1. تین ای ایم اے سیٹ کریں: تیز ، درمیانی اور سست ، عام پیرامیٹرز 25 ، 100 ، اور 200 سائیکل ہیں۔

  2. جب قیمت کے اوپر کی واپسی تیزی سے ای ایم اے تک پہنچ جاتی ہے تو اسے وسط لمبی لائن کثیر رخا ٹریڈ سمجھا جاتا ہے ، اور جب نیچے کی واپسی تیزی سے ای ایم اے تک پہنچ جاتی ہے تو اسے فضول ٹریڈ سمجھا جاتا ہے۔

  3. جب اوپر کی واپسی کا اختتام ہوتا ہے تو ، تیزی سے EMA کو توڑنے پر زیادہ کام کیا جاتا ہے۔ جب نیچے کی واپسی کا اختتام ہوتا ہے تو ، تیزی سے EMA کو گرنے پر خالی ہوجاتا ہے۔

  4. رنگوں کے ذریعہ خرید و فروخت کے علاقوں کو بصری طور پر بدیہی بنائیں۔

  5. فکسڈ اسٹاپ نقصان ، رسک ریٹرن تناسب ، رسک مینجمنٹ۔

اس حکمت عملی کے فوائد:

  1. واپسی کے سودے میں کامیابی کی شرح زیادہ ہے۔

  2. تین ای ایم اے رجحانات کا اندازہ لگانے کے لئے اور اس سے بچنے کے لئے.

  3. کارکردگی کو بہتر بنانے کے لئے کنٹرول سے زیادہ خطرہ کا فائدہ۔

اس حکمت عملی کے خطرات:

  1. بہت لمبی واپسی کا وقت بہترین داخلے کے مقامات سے محروم ہوسکتا ہے۔

  2. ای ایم اے پیرامیٹرز کو مختلف ادوار سے ملنے کے لئے بہتر بنانے کی ضرورت ہے۔

  3. فکسڈ اسٹاپ نقصان بہت زیادہ میکانک ہوسکتا ہے اور اس کی مناسب ترتیب کی ضرورت ہے۔

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

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

//@version=5
strategy(title="Pullback", overlay=true, initial_capital=1000, slippage=25)

averageData = input.source(close, title="Source")
target_stop_ratio = input.float(title="Ratio Risk/Reward", defval=2, group="Money Management")
security = input.float(50, title='min of pips (00001.00) for each position', group="Money Management")
risk = input.float(2, title="Risk per Trade %", group="Money Management")

riskt = risk / 100 + 1

ema1V = input.int(25, title="Rapide", group="Ema Period")
ema2V = input.int(100, title="Moyenne", group="Ema Period")
ema3V = input.int(200, title="Lente", group="Ema Period")

ema1 = ta.ema(averageData, ema1V)
ema2 = ta.ema(averageData, ema2V)
ema3 = ta.ema(averageData, ema3V)

useDateFilter = input.bool(true, title="Filter Date Range of Backtest",
     group="Backtest Time Period")
backtestStartDate = input(timestamp("5 June 2022"), 
     title="Start Date", group="Backtest Time Period",
     tooltip="This start date is in the time zone of the exchange " + 
     "where the chart's instrument trades. It doesn't use the time " + 
     "zone of the chart or of your computer.")
backtestEndDate = input(timestamp("5 July 2022"),
     title="End Date", group="Backtest Time Period",
     tooltip="This end date is in the time zone of the exchange " + 
     "where the chart's instrument trades. It doesn't use the time " + 
     "zone of the chart or of your computer.")

inTradeWindow = true

float pricePullAboveEMA_maxClose = na
float pricePullBelowEMA_minClose = na

if ta.crossover(close, ema1)
    pricePullAboveEMA_maxClose := close
  
else
    pricePullAboveEMA_maxClose := pricePullAboveEMA_maxClose[1]

if close > pricePullAboveEMA_maxClose
    pricePullAboveEMA_maxClose := close

if ta.crossunder(close, ema1)
    pricePullBelowEMA_minClose := close
 
else
    pricePullBelowEMA_minClose := pricePullBelowEMA_minClose[1]

if close < pricePullBelowEMA_minClose
    pricePullBelowEMA_minClose := close

BuyZone = ema1 > ema2 and ema2 > ema3
SellZone = ema1 < ema2 and ema2 < ema3

longcondition = ta.crossover(close, ema1) and pricePullBelowEMA_minClose > ema3 and pricePullBelowEMA_minClose < ema1 
shortcondition = ta.crossunder(close , ema1) and pricePullAboveEMA_maxClose < ema3 and pricePullAboveEMA_maxClose > ema1

float risk_long = na
float risk_short = na
float stopLoss = na
float takeProfit = na
float entry_price = na

risk_long := risk_long[1]
risk_short := risk_short[1]

lotB = (strategy.equity*riskt-strategy.equity)/(close - ema2)
lotS = (strategy.equity*riskt-strategy.equity)/(ema2 - close)

if strategy.position_size == 0 and BuyZone and longcondition and inTradeWindow
    risk_long := (close - ema2) / close
    minp = close - ema2
    if minp > security
        strategy.entry("long", strategy.long, qty=lotB)
    
if strategy.position_size == 0 and SellZone and shortcondition and inTradeWindow
    risk_short := (ema2 - close) / close
    minp = ema2 - close
    if minp > security
        strategy.entry("short", strategy.short, qty=lotS)
    
if strategy.position_size > 0

    stopLoss := strategy.position_avg_price * (1 - risk_long)
    takeProfit := strategy.position_avg_price * (1 + target_stop_ratio * risk_long)
    entry_price := strategy.position_avg_price
    strategy.exit("long exit", "long", stop = stopLoss, limit = takeProfit)
    
if strategy.position_size < 0

    stopLoss := strategy.position_avg_price * (1 + risk_short)
    takeProfit := strategy.position_avg_price * (1 - target_stop_ratio * risk_short)
    entry_price := strategy.position_avg_price
    strategy.exit("short exit", "short", stop = stopLoss, limit = takeProfit)
    
plot(ema1, color=color.blue, linewidth=2, title="Ema Rapide")
plot(ema2, color=color.orange, linewidth=2, title="Ema Moyenne")
plot(ema3, color=color.white, linewidth=2, title="Ema Lente")
p_ep = plot(entry_price, color=color.new(color.white, 0), linewidth=2, style=plot.style_linebr, title='entry price')
p_sl = plot(stopLoss, color=color.new(color.red, 0), linewidth=2, style=plot.style_linebr, title='stopLoss')
p_tp = plot(takeProfit, color=color.new(color.green, 0), linewidth=2, style=plot.style_linebr, title='takeProfit')
fill(p_sl, p_ep, color.new(color.red, transp=85))
fill(p_tp, p_ep, color.new(color.green, transp=85))

bgcolor(BuyZone ? color.new(color.green, 95)  : na)
bgcolor(SellZone ? color.new(color.red, 95)  : na)