
ڈبل ای ایم اے گولڈ کراسنگ لانگ لائن حکمت عملی ایک رجحان سے باخبر رہنے کی حکمت عملی ہے جس میں صرف ایک سے زیادہ پوزیشنیں کھولی گئیں۔ اس حکمت عملی میں ایک ہی وقت میں مختصر ای ایم اے ، درمیانی ای ایم اے اور طویل ای ایم اے کی تین حرکت پذیر اوسط استعمال کی گئیں۔ خاص طور پر داخلے کا قاعدہ یہ ہے کہ: قیمت طویل مدتی ای ایم اے سے زیادہ ہے ، جبکہ مختصر ای ایم اے نیچے سے درمیانی ای ایم اے کو عبور کرتا ہے جب سونے کی کراسنگ ہوتی ہے تو زیادہ پوزیشن کھولی جاتی ہے۔
تین ای ایم اے سائیکلوں کا استعمال کرتے ہوئے ترتیب دیا جاسکتا ہے ، جو بالترتیب قلیل مدتی ای ایم اے ، درمیانی مدتی ای ایم اے اور طویل مدتی ای ایم اے کا حساب لگاتا ہے۔
اگر قیمت طویل مدتی EMA سے زیادہ ہے تو ، اس کا ثبوت ہے کہ یہ ایک کثیر جہتی رجحان میں ہے۔
اگر قلیل مدتی ای ایم اے نیچے سے درمیانی ای ایم اے کو عبور کرتا ہے اور گولڈن کراس تشکیل دیتا ہے تو ، کثیر جہتی رجحان کو مزید تقویت ملتی ہے۔
جب مذکورہ بالا دونوں شرائط مل کر پوری ہوں تو ، زیادہ پوزیشنیں کھولی جائیں۔
اس حکمت عملی کا سب سے بڑا فائدہ یہ ہے کہ یہ رجحانات کو مؤثر طریقے سے شناخت کرنے کے قابل ہے ، کثیر دورانیہ ای ایم اے کے ساتھ مل کر فیصلہ کرنے کے قابل ہے ، اور قلیل مدتی مارکیٹ کے شور سے گمراہ ہونے سے بچنے کے قابل ہے۔
اس حکمت عملی کا بنیادی خطرہ ایک سے زیادہ پوزیشنوں پر ہے۔ جب مارکیٹ کی صورتحال بدل جاتی ہے تو ، پوزیشنوں کو بروقت بند کرنے میں ناکامی ، جس سے نقصانات میں اضافے کا خطرہ ہوتا ہے۔ اس کے علاوہ ، غلط EMAS سائیکل کی ترتیب بھی تجارت کی کثرت کا سبب بن سکتی ہے ، جس سے تجارت کی لاگت میں اضافہ ہوتا ہے۔
پوزیشنوں کی تعداد میں اضافہ کریں اور جب انخلا ایک خاص تناسب تک پہنچ جائے تو پوزیشنوں کو کم کریں۔
ایک نئی اعلی سٹاپ نقصان کی ترتیب میں اضافہ کریں.
ای ایم اے ایس سائیکل پیرامیٹرز کو بہتر بنانا اور ٹرانزیکشن کی تعدد کو کم کرنا
یہ حکمت عملی مجموعی طور پر مستحکم اور اعلی معیار کی لمبی لائن کی پوزیشن رکھنے کی حکمت عملی ہے۔ اس میں رجحانات کی شناخت کی مضبوط صلاحیت ہے ، اور اس میں خطرہ کنٹرول ہے۔ مزید اصلاح کے ذریعہ ، بہتر مستحکم منافع کی توقع کی جاسکتی ہے۔
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Strategia EMA Long con Opzioni di Uscita Avanzate e Periodi EMA Personalizzabili", overlay=true)
// Parametri di input generali
useVolatilityFilter = input.bool(true, title="Usa Filtro di Volatilità")
atrPeriods = input.int(14, title="Periodi ATR", minval=1)
atrMultiplier = input.float(1.5, title="Moltiplicatore ATR", step=0.1)
useTrailingStop = input.bool(true, title="Usa Trailing Stop")
trailingStopPercent = input.float(15.0, title="Percentuale Trailing Stop", minval=0.1, step=0.1) / 100.0
useEMAExit = input.bool(true, title="Usa Uscita EMA Corta incrocia EMA Media al Ribasso")
// Parametri di input per periodi EMA personalizzabili
emaLongTermPeriod = input.int(200, title="Periodo EMA Lungo Termine", minval=1)
emaShortTermPeriod = input.int(5, title="Periodo EMA Breve Termine", minval=1)
emaMidTermPeriod = input.int(10, title="Periodo EMA Medio Termine", minval=1)
// Calcolo delle EMA con periodi personalizzabili
longTermEMA = ta.ema(close, emaLongTermPeriod)
shortTermEMA = ta.ema(close, emaShortTermPeriod)
midTermEMA = ta.ema(close, emaMidTermPeriod)
// Calcolo ATR e soglia di volatilità
atr = ta.atr(atrPeriods)
atrThreshold = ta.sma(atr, atrPeriods) * atrMultiplier
// Condizione di entrata
enterLongCondition = close > longTermEMA and shortTermEMA > midTermEMA
enterLong = useVolatilityFilter ? (enterLongCondition and atr > atrThreshold) : enterLongCondition
if (enterLong)
strategy.entry("Enter Long", strategy.long)
// Tracking del prezzo di entrata e del massimo prezzo raggiunto per il trailing stop
var float entryPrice = na
var float maxPriceSinceEntry = na
if (strategy.position_size > 0)
maxPriceSinceEntry := math.max(na(maxPriceSinceEntry) ? high : maxPriceSinceEntry, high)
entryPrice := na(entryPrice) ? strategy.position_avg_price : entryPrice
else
maxPriceSinceEntry := na
entryPrice := na
// Calcolo del valore del trailing stop
trailStopPrice = maxPriceSinceEntry * (1 - trailingStopPercent)
// Implementazione delle condizioni di uscita
exitCrossUnder = close < longTermEMA
emaCross = ta.crossunder(shortTermEMA, midTermEMA)
if (useEMAExit and emaCross)
strategy.close("Enter Long", comment="EMA Cross Exit")
if (useTrailingStop)
strategy.exit("Trailing Stop", from_entry="Enter Long", stop=trailStopPrice)
// Visualizzazioni
plot(longTermEMA, color=color.yellow, title="EMA Lungo Termine")
plot(shortTermEMA, color=color.blue, title="EMA Breve Termine")
plot(midTermEMA, color=color.green, title="EMA Medio Termine")
plot(useVolatilityFilter ? atrThreshold : na, color=color.purple, title="ATR Threshold")
plot(strategy.position_size > 0 ? trailStopPrice : na, color=color.orange, title="Trailing Stop Value", style=plot.style_linebr)