EMA اور SMA پر مبنی ملٹی انڈیکیٹر ڈائنامک ٹرینڈ ٹریکنگ حکمت عملی

EMA SMA ATR PP supertrend
تخلیق کی تاریخ: 2024-12-27 14:12:50 آخر میں ترمیم کریں: 2024-12-27 14:12:50
کاپی: 0 کلکس کی تعداد: 426
1
پر توجہ دیں
1617
پیروکار

EMA اور SMA پر مبنی ملٹی انڈیکیٹر ڈائنامک ٹرینڈ ٹریکنگ حکمت عملی

حکمت عملی کا جائزہ

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

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

حکمت عملی مندرجہ ذیل بنیادی میکانزم کی بنیاد پر کام کرتی ہے:

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

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

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

اسٹریٹجک رسک

  1. ایک سے زیادہ اشارے سگنل وقفہ کا سبب بن سکتے ہیں۔
  2. افقی منڈیوں میں ممکنہ طور پر بہت زیادہ جعلی سگنل
  3. فکسڈ ٹائم سائیکل تجزیہ دیگر سائیکلوں کے اہم سگنل کو یاد کر سکتا ہے
  4. بیس بیس کی توثیق کے طریقہ کار سے اہم تجارتی مواقع ضائع ہوسکتے ہیں
  5. پیرامیٹرز کو زیادہ سے زیادہ بہتر بنانا زیادہ سے زیادہ فٹ ہونے کا سبب بن سکتا ہے

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

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-25 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=6
strategy("Buy Sell Pivot Point", overlay=true)

// Input Parameters
prd = input.int(defval=2, title="Periodo Pivot Point", minval=1, maxval=50)
Factor = input.float(defval=3, title="Fator ATR", minval=1, step=0.1)
Pd = input.int(defval=10, title="Periodo ATR", minval=1)
showpivot = input.bool(defval=false, title="Mostrar Pivot Points")
showlabel = input.bool(defval=true, title="Mostrar Buy/Sell Labels")
showcl = input.bool(defval=false, title="Mostrar PP Center Line")
showsr = input.bool(defval=false, title="Mostrar Support/Resistance")
sma1_length = input.int(defval=8, title="SMA 1")
sma2_length = input.int(defval=21, title="SMA 2")
timeframe_fix = input.timeframe("D", title="Timeframe Fixo")

// Request data from the fixed timeframe
fix_close = request.security(syminfo.tickerid, timeframe_fix, close)
fix_high = request.security(syminfo.tickerid, timeframe_fix, high)
fix_low = request.security(syminfo.tickerid, timeframe_fix, low)
fix_ph = request.security(syminfo.tickerid, timeframe_fix, ta.pivothigh(prd, prd))
fix_pl = request.security(syminfo.tickerid, timeframe_fix, ta.pivotlow(prd, prd))
fix_atr = request.security(syminfo.tickerid, timeframe_fix, ta.atr(Pd))

// Convert Pivot High/Low to valid boolean for conditions
ph_cond = not na(fix_ph)
pl_cond = not na(fix_pl)

// Draw Pivot Points
plotshape(ph_cond and showpivot, title="Pivot High", text="H", style=shape.labeldown, color=color.red, textcolor=color.red, location=location.abovebar, offset=-prd)
plotshape(pl_cond and showpivot, title="Pivot Low", text="L", style=shape.labelup, color=color.lime, textcolor=color.lime, location=location.belowbar, offset=-prd)

// Calculate the Center line using pivot points
var float center = na
lastpp = ph_cond ? fix_ph : pl_cond ? fix_pl : na
if not na(lastpp)
    center := na(center) ? lastpp : (center * 2 + lastpp) / 3

// Upper/Lower bands calculation
Up = center - (Factor * fix_atr)
Dn = center + (Factor * fix_atr)

// Get the trend
var float TUp = na
var float TDown = na
var int Trend = 0
TUp := na(TUp[1]) ? Up : fix_close[1] > TUp[1] ? math.max(Up, TUp[1]) : Up
TDown := na(TDown[1]) ? Dn : fix_close[1] < TDown[1] ? math.min(Dn, TDown[1]) : Dn
Trend := fix_close > TDown[1] ? 1 : fix_close < TUp[1] ? -1 : nz(Trend[1], 1)
Trailingsl = Trend == 1 ? TUp : TDown

// Plot the trend
linecolor = Trend == 1 ? color.lime : Trend == -1 ? color.red : na
plot(Trailingsl, color=linecolor, linewidth=2, title="PP SuperTrend")

// Plot Center Line
plot(showcl ? center : na, color=showcl ? (center < fix_close ? color.blue : color.red) : na, title="Center Line")

// Calculate Base EMAs
ema_8 = ta.ema(fix_close, 8)
ema_21 = ta.ema(fix_close, 21)

// Calculate SMAs based on EMAs
sma1 = ta.sma(ema_8, sma1_length)
sma2 = ta.sma(ema_21, sma2_length)

// Plot SMAs
plot(sma1, color=#ffff00, linewidth=2, title="SMA 1 (based on EMA 8)")
plot(sma2, color=#aa00ff, linewidth=2, title="SMA 2 (based on EMA 21)")

// Initialize variables to track pivot points
var float last_pivot_time = na

// Update the pivot time when a new pivot is detected
if (ph_cond)
    last_pivot_time := bar_index
if (pl_cond)
    last_pivot_time := bar_index

// Calculate the crossover/crossunder signals
buy_signal = ta.crossover(sma1, sma2)  // SMA 8 crossing SMA 21 upwards
sell_signal = ta.crossunder(sma1, sma2)  // SMA 8 crossing SMA 21 downwards

// Ensure signal is only valid if it happens within 3 candles of a pivot point
valid_buy_signal = buy_signal and (bar_index - last_pivot_time <= 3)
valid_sell_signal = sell_signal and (bar_index - last_pivot_time <= 3)

// Plot Buy/Sell Signals
plotshape(valid_buy_signal and showlabel, title="Buy Signal", text="BUY", style=shape.labelup, color=color.lime, textcolor=color.black, location=location.belowbar)
plotshape(valid_sell_signal and showlabel, title="Sell Signal", text="SELL", style=shape.labeldown, color=color.red, textcolor=color.white, location=location.abovebar)

// Get S/R levels using Pivot Points
var float resistance = na
var float support = na
support := pl_cond ? fix_pl : support[1]
resistance := ph_cond ? fix_ph : resistance[1]

// Plot S/R levels
plot(showsr and not na(support) ? support : na, color=showsr ? color.lime : na, style=plot.style_circles, offset=-prd)
plot(showsr and not na(resistance) ? resistance : na, color=showsr ? color.red : na, style=plot.style_circles, offset=-prd)

// Execute trades based on valid signals
if valid_buy_signal
    strategy.entry("Buy", strategy.long)
if valid_sell_signal
    strategy.entry("Sell", strategy.short)

// Alerts
alertcondition(valid_buy_signal, title="Buy Signal", message="Buy Signal Detected")
alertcondition(valid_sell_signal, title="Sell Signal", message="Sell Signal Detected")
alertcondition(Trend != Trend[1], title="Trend Changed", message="Trend Changed")