یہ حکمت عملی ایک مقداری تجارتی نقطہ نظر ہے جس میں رشتہ دار طاقت انڈیکس (آر ایس آئی) اور حرکت پذیر اوسط کنورجنسی تغیر (ایم اے سی ڈی) کے اشارے کو یکجا کیا گیا ہے۔ بنیادی تصور میں آر ایس آئی اوور بک / اوور سیل زون کی نگرانی شامل ہے جبکہ 5 پیریڈ ونڈو کے اندر ایم اے سی ڈی کراس اوورز کے ذریعہ رجحانات کی تصدیق ہوتی ہے۔ یہ طریقہ کار زیادہ درست تجارتی سگنل فراہم کرتا ہے جبکہ غلط سگنل سے ہونے والے خطرات کو مؤثر طریقے سے کم کرتا ہے۔
یہ حکمت عملی کئی اہم اجزاء پر مبنی ہے:
یہ حکمت عملی RSI اور MACD اشارے کو لچکدار اندراج کے شرائط اور رسک کنٹرول میکانزم کے ساتھ جوڑ کر نسبتا complete مکمل تجارتی نظام تیار کرتی ہے۔ اگرچہ اصلاحات کے لئے علاقے موجود ہیں ، لیکن بنیادی فریم ورک اچھی توسیع پذیری پیش کرتا ہے اور ، مزید اصلاح اور بہتری کے ذریعے ، اس میں زیادہ مضبوط تجارتی حکمت عملی میں تیار ہونے کی صلاحیت ہے۔
/*backtest start: 2024-11-12 00:00:00 end: 2024-12-12 00:00:00 period: 2h basePeriod: 2h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("MACD & RSI Strategy with SL/TP and Flexible Entry (5 bars)", overlay=true) // Параметры для RSI и MACD rsiLength = 14 overbought = 70 oversold = 30 [macdLine, signalLine, _] = ta.macd(close, 12, 26, 9) // Рассчитаем RSI rsi = ta.rsi(close, rsiLength) // Проверка пересечения MACD macdCrossOver = ta.crossover(macdLine, signalLine) macdCrossUnder = ta.crossunder(macdLine, signalLine) // Логика для проверки пересечения MACD за последние 5 баров var bool macdCrossOverRecent = false var bool macdCrossUnderRecent = false // Проверяем пересечения за последние 5 баров for i = 0 to 4 if macdCrossOver[i] macdCrossOverRecent := true if macdCrossUnder[i] macdCrossUnderRecent := true // Условия для шортовой сделки: RSI выше 70 (перекупленность) + пересечение MACD за последние 5 баров shortCondition = ta.highest(rsi, 5) > overbought and macdCrossOverRecent // Условия для лонговой сделки: RSI ниже 30 (перепроданность) + пересечение MACD за последние 5 баров longCondition = ta.lowest(rsi, 5) < oversold and macdCrossUnderRecent // Процент для стоп-лосса и тейк-профита takeProfitPercent = 0.02 stopLossPercent = 0.02 // Открытие шортовой позиции if (shortCondition) strategy.entry("Short", strategy.short) // Открытие лонговой позиции if (longCondition) strategy.entry("Long", strategy.long) // Рассчитываем стоп-лосс и тейк-профит для шорта shortStopLoss = strategy.position_avg_price * (1 + stopLossPercent) shortTakeProfit = strategy.position_avg_price * (1 - takeProfitPercent) // Рассчитываем стоп-лосс и тейк-профит для лонга longStopLoss = strategy.position_avg_price * (1 - stopLossPercent) longTakeProfit = strategy.position_avg_price * (1 + takeProfitPercent) // Устанавливаем выход по стоп-лоссу и тейк-профиту для шортов if (strategy.position_size < 0) // Проверяем, что открыта шортовая позиция strategy.exit("Take Profit/Stop Loss Short", "Short", stop=shortStopLoss, limit=shortTakeProfit) // Устанавливаем выход по стоп-лоссу и тейк-профиту для лонгов if (strategy.position_size > 0) // Проверяем, что открыта лонговая позиция strategy.exit("Take Profit/Stop Loss Long", "Long", stop=longStopLoss, limit=longTakeProfit) // Графики для отображения RSI и MACD plot(rsi, "RSI", color=color.purple) hline(overbought, "Overbought", color=color.red) hline(oversold, "Oversold", color=color.green) plot(macdLine, "MACD Line", color=color.blue) plot(signalLine, "Signal Line", color=color.orange)