یہ آر ایس آئی ، ایم اے سی ڈی اور چلتی اوسط کا استعمال کرتے ہوئے ایک مجموعہ حکمت عملی ہے۔ اس میں آر ایس آئی سے زیادہ خرید / فروخت کے سگنل ، ایم اے سی ڈی کی حساسیت اور داخلہ پوائنٹس کا تعین کرتے وقت چلتی اوسط کے اشارے کا اثر شامل ہے۔
حکمت عملی بنیادی طور پر لانگ انٹری کا فیصلہ کرنے کے لئے مندرجہ ذیل چار شرائط کا جائزہ لیتی ہے:
جب مندرجہ ذیل دو اخراج کی شرائط پوری ہو جائیں تو حکمت عملی نقصان کو روکنے کے لئے پوزیشنوں کو بند کرے گی:
اس طرح حکمت عملی بروقت نقصان کو روکتی ہے اور منافع لینے یا واپسی کے وقت بڑے نقصانات سے بچتی ہے.
اس حکمت عملی کا سب سے بڑا فائدہ اشارے کے مجموعی استعمال میں ہے، ہر اشارے کے فوائد کو مکمل طور پر استعمال کرتے ہوئے:
آر ایس آئی کا اطلاق رینج سے منسلک مارکیٹوں میں پوزیشنوں کو بار بار کھولنے سے ہونے والی ٹرانزیکشن فیس کے نقصان سے بچتا ہے۔
MACD ہسٹوگرام اشارے کی حساسیت موڑ کے نکات کو بروقت پکڑنے کو یقینی بناتی ہے۔
چلتی اوسط مختصر مدت کے مارکیٹ شور کو فلٹر کرتی ہے اور اشارے کے اثر کو مکمل طور پر کھیل دیتی ہے۔
اس حکمت عملی کے اہم خطرات میں شامل ہیں:
ہائی ریٹریسیشن کا خطرہ۔ رجحان کی پیروی کرنے والی حکمت عملیوں کی طرح حرکت پذیر اوسط کا سب سے بڑا خطرہ رجحان کے الٹ جانے کی وجہ سے بڑا پل بیک ہے۔ اس کو پوزیشن سائزنگ ، اسٹاپ نقصان وغیرہ کے ذریعہ فعال طور پر کنٹرول کیا جاسکتا ہے۔
پیرامیٹر کی اصلاح میں دشواری۔ کثیر اشارے سے ملنے والی حکمت عملیوں میں پیرامیٹر کی ترتیب اور اصلاح میں زیادہ دشواری ہوتی ہے۔ پیرامیٹرز کو بہتر بنانے کے لئے واک فارورڈ ، جینیاتی الگورتھم جیسے طریقے اپنائے جاسکتے ہیں۔
اسٹریٹیجی کو مندرجہ ذیل پہلوؤں میں مزید بہتر بنایا جاسکتا ہے:
غلط سگنل سے بچنے کے لئے اضافی فلٹرز کو بڑھانا، مثال کے طور پر حجم، اتار چڑھاؤ کے اشارے وغیرہ کے ساتھ مل کر.
ٹیسٹ پیرامیٹر کے اختلافات زیادہ مصنوعات کو فٹ بیٹھتے ہیں۔ زیادہ اقسام کو اپنانے کے لئے پیرامیٹرز کو ایڈجسٹ کریں۔
چلتی اوسط پیرامیٹر کی ترتیبات کو بہتر بنائیں۔ مختلف لمبائی پیرامیٹرز کے اختلافات کی جانچ کریں۔
موافقت پذیر چلتی اوسط کی تحقیق کریں، مارکیٹ کے نظام کی بنیاد پر مختلف پیرامیٹر سیٹ کو تبدیل کریں۔
اختتام کے طور پر ، یہ حکمت عملی چلتی اوسط اور رجحان کی پیروی کرنے والی حکمت عملی کا ایک عام بہتر ورژن ہے۔ یہ وقت کے اندراج اور نقصان کو روکنے کے پہلوؤں میں ایم اے سی ڈی اور آر ایس آئی جیسے مرکزی دھارے کے اشارے کی طاقتوں کو جذب کرتا ہے۔ اگلے اقدامات پیرامیٹر کی اصلاح اور رسک کنٹرول جیسے نقطہ نظر سے بہتر ہوسکتے ہیں تاکہ حکمت عملی کو زیادہ مضبوط اور زیادہ مصنوعات کے مطابق بنایا جاسکے ، جس کے نتیجے میں زیادہ استحکام پیدا ہو۔
/*backtest start: 2022-12-29 00:00:00 end: 2024-01-04 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Improved RSI MACD Strategy with Moving Averages", overlay=true) // Inputs src = input(close, title="RSI Source") // RSI Settings lengthRSI = input.int(14, minval=1) // Stop Loss Settings stopLossPct = input.float(0.09, title="Stop Loss Percentage") takeProfitPct = input.float(0.15, title="Take Profit Percentage") // MACD Settings fastlen = input(12) slowlen = input(26) siglen = input(9) // Strategy Settings longEntry = input(0, title="Long Entry Level") exitLevel = input(0, title="Exit Level") // EMA Settings emaShortLength = input(8, title="Short EMA Length") emaLongLength = input(21, title="Long EMA Length") atrMultiplier = input.float(2, title="atrMultiplier") atrLength = input.int(20, title="atrLength") // Indicators rsi1 = ta.rsi(src, lengthRSI) [macd, signal, hist] = ta.macd(src, fastlen, slowlen, siglen) // Calculate EMAs emaShort = ta.ema(src, emaShortLength) emaLong = ta.ema(src, emaLongLength) // Calculate ATR atr = ta.atr(atrLength) // Variables var bool canEnterLong = na // Strategy conditions longCondition = hist > longEntry and rsi1 > 50 and emaShort > emaLong and close > emaLong + atrMultiplier * atr // Entries and Exits if hist < exitLevel and emaShort < emaLong canEnterLong := true strategy.close("Long") // Store last entry price var lastEntryPrice = float(na) var lastEntryPrice2 = float(na) if longCondition strategy.entry("Long", strategy.long) canEnterLong := false lastEntryPrice := close if lastEntryPrice < close lastEntryPrice := close // Calculate Stop Loss and Take Profit Levels based on last entry price stopLossLevel = lastEntryPrice * (1 - stopLossPct) // Check for stop loss and take profit levels and close position if triggered if (strategy.position_size > 0) last_buy = strategy.opentrades[0] if (close < stopLossLevel) strategy.close("Long", comment="Stop Loss Triggered") if (close * (1 - takeProfitPct) > strategy.opentrades.entry_price(strategy.opentrades - 1) ) strategy.close("Long", comment="Take Profit Triggered")