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

پانچ ای ایم اے آر ایس آئی رجحان کے بعد متحرک چینل ٹریڈنگ سسٹم

مصنف:چاؤ ژانگ، تاریخ: 2024-12-05 15:15:28
ٹیگز:ای ایم اےآر ایس آئیڈی سی

img

جائزہ

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

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

اس حکمت عملی میں سگنل کی تصدیق کے لئے متعدد تکنیکی اشارے استعمال کیے جاتے ہیں۔ سب سے پہلے ، یہ رجحان فریم ورک کی تعمیر کے لئے 5 ای ایم اے (9, 21, 55, 89, 144 ادوار) کا استعمال کرتا ہے ، جو تیز اور سست ای ایم اے کے مابین کراس اوور کے ذریعہ ابتدائی رجحان کی سمت کا تعین کرتا ہے۔ دوسرا ، یہ آر ایس آئی (14 ادوار) کو رجحان فلٹر کے طور پر استعمال کرتا ہے ، جس میں آر ایس آئی کو طویل پوزیشنوں کے لئے اوور بک زون (60 سے اوپر) اور مختصر پوزیشنوں کے لئے اوور سیل زون (40 سے نیچے) کی ضرورت ہوتی ہے ، اس طرح رینجنگ مارکیٹوں میں کثرت سے تجارت سے گریز کیا جاتا ہے۔ آخر میں ، یہ 21 مدت اور 74 مدت کے ڈونچیان چینلز کا استعمال قیمتوں کی نقل و حرکت کی حدوں کی وضاحت کرنے کے لئے کرتا ہے ، جو تجارت کے لئے اضافی مارکیٹ کی ساخت کا حوالہ فراہم کرتا ہے۔

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

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

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

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

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

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

نتیجہ

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


/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-04 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMA RSI Donchian Strategy", overlay=true)

// Input parameters
fastEmaLength = input(9, title="Fast EMA Length")
midEmaLength = input(21, title="Mid EMA Length")
slowEmaLength = input(55, title="Slow EMA Length")
ema89Length = input(89, title="89 EMA Length")
ema144Length = input(144, title="144 EMA Length")
rsiPeriod = input(14, title="RSI Period")
rsiOverbought = input(60, title="RSI Overbought Level")
rsiOversold = input(40, title="RSI Oversold Level")
donchianLength1 = input(21, title="Donchian Channel Length 1")
donchianLength2 = input(74, title="Donchian Channel Length 2")

// EMA calculations
fastEma = ta.ema(close, fastEmaLength)
midEma = ta.ema(close, midEmaLength)
slowEma = ta.ema(close, slowEmaLength)
ema89 = ta.ema(close, ema89Length)
ema144 = ta.ema(close, ema144Length)

// RSI calculation
rsi = ta.rsi(close, rsiPeriod)

// Donchian Channel calculations
donchianUpper1 = ta.highest(high, donchianLength1)
donchianLower1 = ta.lowest(low, donchianLength1)
donchianUpper2 = ta.highest(high, donchianLength2)
donchianLower2 = ta.lowest(low, donchianLength2)
donchianMid1 = (donchianUpper1 + donchianLower1) / 2
donchianMid2 = (donchianUpper2 + donchianLower2) / 2

// Plot EMAs
plot(fastEma, color=color.green, linewidth=2, title="Fast EMA")
plot(midEma, color=color.blue, linewidth=2, title="Mid EMA")
plot(slowEma, color=color.orange, linewidth=2, title="Slow EMA")
plot(ema89, color=color.red, linewidth=2, title="89 EMA")
plot(ema144, color=color.purple, linewidth=2, title="144 EMA")

// Plot Donchian Channels
plot(donchianUpper1, color=color.new(color.blue, 0), title="Donchian Upper 1")
plot(donchianLower1, color=color.new(color.blue, 0), title="Donchian Lower 1")
plot(donchianMid1, color=color.new(color.blue, 80), title="Donchian Mid 1")
plot(donchianUpper2, color=color.new(color.red, 0), title="Donchian Upper 2")
plot(donchianLower2, color=color.new(color.red, 0), title="Donchian Lower 2")
plot(donchianMid2, color=color.new(color.red, 80), title="Donchian Mid 2")

// Entry Conditions
longCondition = ta.crossover(fastEma, slowEma) and rsi > rsiOverbought
shortCondition = ta.crossunder(fastEma, slowEma) and rsi < rsiOversold

// Stop Loss and Take Profit
var float longStopLoss = na
var float longTakeProfit1 = na
var float longTakeProfit2 = na
var float shortStopLoss = na
var float shortTakeProfit1 = na
var float shortTakeProfit2 = na

if longCondition
    longStopLoss := high * 0.99
    longTakeProfit1 := longStopLoss * 1.02618
    longTakeProfit2 := longStopLoss * 1.036185
    strategy.entry("Long", strategy.long)
    
if shortCondition
    shortStopLoss := low * 1.01
    shortTakeProfit1 := shortStopLoss * 0.97382
    shortTakeProfit2 := shortTakeProfit1 * 0.96381
    strategy.entry("Short", strategy.short)

// Exit Conditions
if not na(longStopLoss)
    strategy.exit("Take Profit 1", "Long", limit=longTakeProfit1)
    strategy.exit("Take Profit 2", "Long", limit=longTakeProfit2)
    strategy.exit("Stop Loss", "Long", stop=longStopLoss)

if not na(shortStopLoss)
    strategy.exit("Take Profit 1", "Short", limit= shortTakeProfit1)
    strategy.exit("Take Profit 2", "Short", limit=shortTakeProfit2)
    strategy.exit("Stop Loss", "Short", stop=shortStopLoss)

// Labels for buy and sell signals
if longCondition
    label.new(bar_index, low, "Buy", color=color.green, style=label.style_label_up, textcolor=color.white)

if shortCondition
    label.new(bar_index, high, "Sell", color=color.red, style=label.style_label_down, textcolor=color.white)

// Alerts
alertcondition(longCondition, title="Long Entry Alert", message="Long entry signal")
alertcondition(shortCondition, title="Short Entry Alert", message="Short entry signal")

متعلقہ

مزید