وسائل لوڈ ہو رہے ہیں... لوڈنگ...

ای ایم اے اور ایس ایم اے پر مبنی حکمت عملی کے بعد کثیر اشارے متحرک رجحان

مصنف:چاؤ ژانگ، تاریخ: 2024-12-27 14:12:50
ٹیگز:ای ایم اےایس ایم اےاے ٹی آرپی پیسپر ٹرینڈ

img

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

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

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

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

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

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

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

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

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

حکمت عملی کی اصلاح کی ہدایات

  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")


متعلقہ

مزید