یہ حکمت عملی ٹریل ای ایم اے پر قیمتوں کی واپسی کی کارکردگی کو دیکھ کر رجحان سازی کا اندازہ لگاتی ہے اور واپسی کے اختتام پر بریک ٹریڈنگ کرتی ہے۔ یہ حکمت عملی رجحان سازی کی قسم کی حکمت عملی ہے جس کا مقصد وسط اور لمبی لائن رجحانات میں واپسی کے مواقع کو پکڑنا ہے۔
حکمت عملی:
تین ای ایم اے سیٹ کریں: تیز ، درمیانی اور سست ، عام پیرامیٹرز 25 ، 100 ، اور 200 سائیکل ہیں۔
جب قیمت کے اوپر کی واپسی تیزی سے ای ایم اے تک پہنچ جاتی ہے تو اسے وسط لمبی لائن کثیر رخا ٹریڈ سمجھا جاتا ہے ، اور جب نیچے کی واپسی تیزی سے ای ایم اے تک پہنچ جاتی ہے تو اسے فضول ٹریڈ سمجھا جاتا ہے۔
جب اوپر کی واپسی کا اختتام ہوتا ہے تو ، تیزی سے EMA کو توڑنے پر زیادہ کام کیا جاتا ہے۔ جب نیچے کی واپسی کا اختتام ہوتا ہے تو ، تیزی سے EMA کو گرنے پر خالی ہوجاتا ہے۔
رنگوں کے ذریعہ خرید و فروخت کے علاقوں کو بصری طور پر بدیہی بنائیں۔
فکسڈ اسٹاپ نقصان ، رسک ریٹرن تناسب ، رسک مینجمنٹ۔
اس حکمت عملی کے فوائد:
واپسی کے سودے میں کامیابی کی شرح زیادہ ہے۔
تین ای ایم اے رجحانات کا اندازہ لگانے کے لئے اور اس سے بچنے کے لئے.
کارکردگی کو بہتر بنانے کے لئے کنٹرول سے زیادہ خطرہ کا فائدہ۔
اس حکمت عملی کے خطرات:
بہت لمبی واپسی کا وقت بہترین داخلے کے مقامات سے محروم ہوسکتا ہے۔
ای ایم اے پیرامیٹرز کو مختلف ادوار سے ملنے کے لئے بہتر بنانے کی ضرورت ہے۔
فکسڈ اسٹاپ نقصان بہت زیادہ میکانک ہوسکتا ہے اور اس کی مناسب ترتیب کی ضرورت ہے۔
خلاصہ یہ ہے کہ یہ حکمت عملی ٹرپل ای ایم اے ریڈکشن بریکٹ کے ذریعے وسط اور لمبی لائن رجحانات کی نگرانی کو حاصل کرتی ہے۔ خطرے کے کنٹرول کا طریقہ کار طویل مدتی مستحکم منافع حاصل کرنے میں معاون ہے ، لیکن سرمایہ کاروں کو پیرامیٹرز کی اصلاح اور ریڈکشن کے فیصلے پر توجہ دینے کی ضرورت ہے۔
/*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)