
EMA/MACD/RSI کراسنگ حکمت عملی ایک مقدار کی تجارت کی حکمت عملی ہے جو متعدد تکنیکی اشارے کو جوڑتی ہے۔ اس حکمت عملی میں بنیادی طور پر انڈیکس کی حرکت پذیری اوسط ((EMA) ، حرکت پذیری اوسط کی ہم آہنگی کے بکھرے ہوئے اشارے ((MACD) اور نسبتا strong مضبوط اشارے ((RSI) کے کراس سگنل کا استعمال کیا جاتا ہے تاکہ مارکیٹ کے رجحانات کا اندازہ لگایا جاسکے اور تجارتی سگنل پیدا کیا جاسکے۔ حکمت عملی میں متحرک اسٹاپ نقصانات کو ترتیب دینے اور خطرے کو مؤثر طریقے سے کنٹرول کرنے کے لئے اوسط حقیقی طول و عرض ((ATR) بھی متعارف کرایا گیا ہے۔ اس کثیر اشارے کے امتزاج کا طریقہ کار تجارتی سگنل کی درستگی اور وشوسنیی کو بڑھانے کے لئے ہے۔
اس حکمت عملی کا بنیادی اصول یہ ہے کہ ایک سے زیادہ اشارے کے ایک کراسنگ اور تعاون کے ذریعے انٹری اور آؤٹ ٹائمنگ کا تعین کیا جائے:
خریدنے کی شرط یہ ہے کہ تیز EMA پر سست EMA یا MACD لائن پر سگنل لائن سے گزرے ، جبکہ RSI oversold سطح سے زیادہ ہے۔ بیچنے کی شرط اس کے برعکس ہے۔ حکمت عملی میں پوزیشنوں کی موجودہ حیثیت کی جانچ پڑتال کے ذریعے پوزیشن کھولنے سے بچنے اور فنڈز کے استعمال کی کارکردگی کو بہتر بنانے کی حکمت عملی بھی شامل ہے۔
EMA/MACD/RSI کراس حکمت عملی ایک جامع تکنیکی تجزیہ ٹریڈنگ سسٹم ہے جو متعدد اشارے کے ہم آہنگی کے ذریعے ٹریڈنگ کے مواقع کی نشاندہی اور خطرے کا انتظام کرتی ہے۔ اس حکمت عملی کے بنیادی فوائد اس کے کثیر جہتی مارکیٹ تجزیہ نقطہ نظر اور لچکدار خطرے کے انتظام کے طریقہ کار میں ہیں۔ تاہم ، صارفین کو مختلف مارکیٹ کے ماحول میں حکمت عملی کی کارکردگی کے اختلافات پر دھیان دینے کی ضرورت ہے ، اور مخصوص تجارتی اقسام اور مارکیٹ کی صورتحال کے لئے پیرامیٹرز کو بہتر بنانے کی ضرورت ہے۔ اس حکمت عملی میں مستقل بہتری اور اصلاح کے ذریعہ ، جیسے مزید اشارے متعارف کرانے اور اسٹاپ نقصان کے طریقہ کار کو بہتر بنانے کے ذریعہ ، اس میں ایک مستحکم اور صحت مند تجارتی آلہ بننے کی صلاحیت موجود ہے۔ عملی طور پر استعمال کرنے کے لئے ، مناسب واپسی اور تجارت کی مشابہت کی سفارش کی جاتی ہے ، اور مارکیٹ کی بصیرت اور خطرے کے انتظام کے اصولوں کے ساتھ مل کر بہترین تجارتی اثر و رسوخ حاصل کرنے کے لئے۔
/*backtest
start: 2024-10-06 00:00:00
end: 2024-10-13 00:00:00
period: 3h
basePeriod: 3h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Mister Buy / sell signals", overlay=true, shorttitle="Mister Buy / sell signals")
// ─────────────────────────────────────────────────────────────
// Paramètres des EMA et adaptation selon le timeframe
ema_fast_length = input(3, title="EMA Rapide (12)")
ema_slow_length = input(4, title="EMA Lente (26)")
ema_long_length = input(5, title="EMA Longue (50)")
// Paramètres MACD
macd_fast_length = input(1, title="MACD Période Rapide")
macd_slow_length = input(2, title="MACD Période Lente")
macd_signal_length = input(3, title="MACD Signal (9)")
// Paramètres RSI
rsi_length = input(42, title="RSI Période")
rsi_overbought = input(70, title="RSI Zone de surachat")
rsi_oversold = input(30, title="RSI Zone de survente")
// Paramètres ATR
atr_length = input(12, title="ATR Période")
atr_multiplier = input(1.0, title="Multiplicateur ATR pour Stop")
// ─────────────────────────────────────────────────────────────
// Calcul des EMA
ema_fast = ta.ema(close, ema_fast_length)
ema_slow = ta.ema(close, ema_slow_length)
ema_long = ta.ema(close, ema_long_length)
// Calcul du RSI
rsi = ta.rsi(close, rsi_length)
// Calcul du MACD
[macdLine, signalLine, _] = ta.macd(close, macd_fast_length, macd_slow_length, macd_signal_length)
// Calcul de l'ATR pour gérer les stops
atr_value = ta.atr(atr_length)
// ─────────────────────────────────────────────────────────────
// Conditions d'achat et de vente basées sur MACD, EMA et RSI
buy_condition = (ta.crossover(ema_fast, ema_slow) or ta.crossover(macdLine, signalLine)) and rsi > rsi_oversold
sell_condition = (ta.crossunder(ema_fast, ema_slow) or ta.crossunder(macdLine, signalLine)) and rsi < rsi_overbought
// ─────────────────────────────────────────────────────────────
// Vérification des positions ouvertes pour éviter les doublons
long_position = strategy.position_size > 0 // Position d'achat ouverte
short_position = strategy.position_size < 0 // Position de vente ouverte
// ─────────────────────────────────────────────────────────────
// Gestion des positions et Stop Loss
long_stop = close - atr_value * atr_multiplier
short_stop = close + atr_value * atr_multiplier
// Entrer les positions uniquement si aucune position n'est ouverte dans la même direction
if (buy_condition and not long_position)
strategy.entry("Buy", strategy.long)
strategy.exit("Exit Buy", from_entry="Buy", stop=long_stop)
if (sell_condition and not short_position)
strategy.entry("Sell", strategy.short)
strategy.exit("Exit Sell", from_entry="Sell", stop=short_stop)
// ─────────────────────────────────────────────────────────────
// Affichage des EMA et du MACD sur le graphique
plot(ema_fast, color=color.green, linewidth=2, title="EMA Rapide (12)")
plot(ema_slow, color=color.red, linewidth=2, title="EMA Lente (26)")
plot(ema_long, color=color.blue, linewidth=1, title="EMA Longue (50)")
plot(macdLine, color=color.green, title="MACD Line")
plot(signalLine, color=color.red, title="MACD Signal Line")
// ─────────────────────────────────────────────────────────────
// Signaux graphiques pour les points d'entrée et de sortie
// Affichage des signaux d'achat si aucune position Buy n'est active
plotshape(series=buy_condition and not long_position, title="Signal Achat", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY", textcolor=color.white)
// Affichage des signaux de vente si aucune position Sell n'est active
plotshape(series=sell_condition and not short_position, title="Signal Vente", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL", textcolor=color.white)