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

کثیر اشارے متحرک رجحان کا پتہ لگانے اور خطرے کے انتظام کی تجارتی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2025-01-17 15:55:00
ٹیگز:آر ایس آئیچُپایس ایم اےTP/SL

 Multi-Indicator Dynamic Trend Detection and Risk Management Trading Strategy

جائزہ

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

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

حکمت عملی میں رجحان کا پتہ لگانے اور تجارتی سگنل کی تخلیق کے لئے چار بنیادی اشارے استعمال کیے گئے ہیں: اوور بک / اوور سیلڈ حالات کی نشاندہی کرنے کے لئے آر ایس آئی (آر ایس آئی <30 اوور بک ، >70 اوور بک) مارکیٹ کی بے چینی کا تعین کرنے کے لئے CHOP انڈیکس (<50 واضح رجحان کا اشارہ کرتا ہے) تجارت کے وقت کی تصدیق کے لئے اسٹوکاسٹک K اور D لائن کراسنگ مجموعی رجحان کی مدد کے لئے ایس ایم اے (سادہ چلتی اوسط)

تجارتی قوانین یہ ہیں: - لانگ انٹری: RSI<30 + CHOP<50 + K لائن D لائن سے اوپر کراس کرتی ہے - مختصر اندراج: RSI>70 + CHOP<50 + K لائن D لائن سے نیچے عبور کرتی ہے حکمت عملی میں خطرہ کنٹرول کے لیے فیصد پر مبنی متحرک منافع اور سٹاپ نقصان کی سطح کو نافذ کیا گیا ہے۔

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

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

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

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

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

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

خلاصہ

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


/*backtest
start: 2024-12-17 00:00:00
end: 2025-01-16 00:00:00
period: 4h
basePeriod: 4h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/

//@version=5
strategy("RSI + CHOP + Stochastic Strategy", overlay=true)

// Parametry wskaźników
rsiPeriod = input(14, title="RSI Period")
chopPeriod = input(14, title="Choppiness Period")
stochK = input(14, title="Stochastic K Period")
stochD = input(3, title="Stochastic D Period")
stochSmoothK = input(3, title="Stochastic Smooth K Period")
smaPeriod = input(50, title="SMA Period")

// Parametry Take Profit i Stop Loss
longTakeProfitPct = input.float(1.0, title="Long Take Profit %", minval=0.1, step=0.1) / 100
longStopLossPct = input.float(5.0, title="Long Stop Loss %", minval=0.1, step=0.1) / 100
shortTakeProfitPct = input.float(1.0, title="Short Take Profit %", minval=0.1, step=0.1) / 100
shortStopLossPct = input.float(5.0, title="Short Stop Loss %", minval=0.1, step=0.1) / 100

// Obliczenia wskaźników
rsiValue = ta.rsi(close, rsiPeriod)

highLowRange = ta.highest(high, chopPeriod) - ta.lowest(low, chopPeriod)
chopIndex = 100 * math.log10(highLowRange / ta.sma(close, chopPeriod)) / math.log10(2)

stoch = ta.stoch(close, high, low, stochK)
k = stoch[0]
d = stoch[1]

// Obliczenia SMA
smaValue = ta.sma(close, smaPeriod)

// Warunki kupna i sprzedaży
buyCondition = (rsiValue < 30) and (chopIndex < 50) and (ta.crossover(k, d))
sellCondition = (rsiValue > 70) and (chopIndex < 50) and (ta.crossunder(k, d))

var float longStopLevel = na
var float longTakeProfitLevel = na
var float shortStopLevel = na
var float shortTakeProfitLevel = na

// Wejście w pozycję długą
if (buyCondition and na(longStopLevel))
    strategy.entry("Long", strategy.long)
    longStopLevel := na // Zresetuj poziom Stop Loss
    longTakeProfitLevel := na // Zresetuj poziom Take Profit

// Wejście w pozycję krótką
if (sellCondition and na(shortStopLevel))
    strategy.entry("Short", strategy.short)
    shortStopLevel := na // Zresetuj poziom Stop Loss
    shortTakeProfitLevel := na // Zresetuj poziom Take Profit

// Ustaw poziomy Take Profit i Stop Loss na podstawie ceny wejścia w pozycję
if (strategy.position_size > 0 and na(longTakeProfitLevel))
    longStopLevel := strategy.position_avg_price * (1 - longStopLossPct)
    longTakeProfitLevel := strategy.position_avg_price * (1 + longTakeProfitPct)

if (strategy.position_size < 0 and na(shortTakeProfitLevel))
    shortStopLevel := strategy.position_avg_price * (1 + shortStopLossPct)
    shortTakeProfitLevel := strategy.position_avg_price * (1 - shortTakeProfitPct)

// Resetowanie poziomów po wyjściu z pozycji
if (strategy.position_size == 0)
    longStopLevel := na
    longTakeProfitLevel := na
    shortStopLevel := na
    shortTakeProfitLevel := na

// Wyjście z pozycji długiej
if (strategy.position_size > 0)
    strategy.exit("Take Profit", "Long", limit=longTakeProfitLevel, stop=longStopLevel)

// Wyjście z pozycji krótkiej
if (strategy.position_size < 0)
    strategy.exit("Take Profit", "Short", limit=shortTakeProfitLevel, stop=shortStopLevel)

// Oznaczenie poziomów stop loss i take profit na wykresie
plot(series=longStopLevel, title="Long Stop Loss", color=color.red, linewidth=1, style=plot.style_circles)
plot(series=longTakeProfitLevel, title="Long Take Profit", color=color.green, linewidth=1, style=plot.style_circles)
plot(series=shortStopLevel, title="Short Stop Loss", color=color.red, linewidth=1, style=plot.style_circles)
plot(series=shortTakeProfitLevel, title="Short Take Profit", color=color.green, linewidth=1, style=plot.style_circles)

// Wyświetlanie wskaźników na wykresie
plot(rsiValue, title="RSI", color=color.blue, linewidth=2)
hline(30, "RSI 30", color=color.red)
hline(70, "RSI 70", color=color.red)

plot(chopIndex, title="Choppiness Index", color=color.purple, linewidth=2)
hline(50, "CHOP 50", color=color.red)

plot(k, title="Stochastic K", color=color.green, linewidth=2)
plot(d, title="Stochastic D", color=color.red, linewidth=2)
hline(20, "Stoch 20", color=color.red)
hline(80, "Stoch 80", color=color.red)

// Wyświetlanie SMA na wykresie
plot(smaValue, title="SMA", color=color.orange, linewidth=2)


متعلقہ

مزید