
یہ حکمت عملی دو متحرک اوسط ((EMA) کے کراسنگ پر مبنی ہے جس سے ٹریڈنگ سگنل پیدا ہوتا ہے۔ جب مختصر مدت کے EMA ((20 دن) نیچے سے اوپر کی طرف سے طویل EMA ((50 دن) کو عبور کرتے ہیں تو ، خریدنے کا اشارہ پیدا ہوتا ہے۔ جب مختصر مدت کے EMA اوپر سے نیچے کی طرف سے طویل EMA کو عبور کرتے ہیں تو ، فروخت کا اشارہ پیدا ہوتا ہے۔ اس کے ساتھ ہی ، حکمت عملی نے طویل مدتی رجحانات کا حوالہ دینے کے لئے 200 دن کا EMA بھی تیار کیا ہے۔ اس حکمت عملی کا بنیادی نظریہ یہ ہے کہ مارکیٹ کے رجحانات میں تبدیلی کو پکڑنے کے لئے مختلف دورانیہ کی متحرک اوسط کی کراسنگ کا استعمال کیا جائے ، اور اس طرح تجارت کی جائے۔
ای ایم اے ڈبل مساوی لائن کراسنگ حکمت عملی ایک سادہ اور سمجھنے میں آسان ٹریڈنگ حکمت عملی ہے جو رجحان کی منڈیوں کے لئے موزوں ہے۔ یہ مارکیٹ کے رجحان میں تبدیلی کو پکڑنے کے لئے قلیل مدتی اور طویل مدتی حرکت پذیری اوسط کی کراسنگ کا استعمال کرتا ہے ، جبکہ طویل مدتی رجحانات کا حوالہ بھی متعارف کرایا گیا ہے۔ اگرچہ اس حکمت عملی میں کچھ حدود ہیں ، جیسے کہ اتار چڑھاؤ کی منڈیوں میں خراب کارکردگی ، اور حرکت پذیری اوسط کی پسماندگی ، لیکن اس حکمت عملی کی استحکام اور منافع کو مزید بڑھانے کے لئے دیگر اشارے ، اصلاحی پیرامیٹرز اور خطرے کے کنٹرول کے اقدامات کو شامل کرکے مزید اقدامات کیے جاسکتے ہیں۔
/*backtest
start: 2023-03-23 00:00:00
end: 2024-03-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("EMA Crossover Strategy by Peter Gangmei", overlay=true)
// Define the length for moving averages
short_ma_length = input.int(20, "Short MA Length")
long_ma_length = input.int(50, "Long MA Length")
long_ma_200_length = input.int(200, "Long MA 200 Length")
// Define start time for testing
start_time = timestamp(2024, 01, 01, 00, 00)
// Calculate current date and time
current_time = timenow
// Calculate moving averages
ema20 = ta.ema(close, short_ma_length)
ema50 = ta.ema(close, long_ma_length)
ema200 = ta.ema(close, long_ma_200_length)
// Crossing conditions
crossed_above = ta.crossover(ema20, ema50)
crossed_below = ta.crossunder(ema20, ema50)
// Entry and exit conditions within the specified time frame
if true
if (crossed_above)
strategy.entry("Buy", strategy.long)
alert("Buy Condition", alert.freq_once_per_bar_close)
if (crossed_below)
strategy.entry("Sell", strategy.short)
alert("Sell Condition", alert.freq_once_per_bar_close)
// Plotting moving averages for visualization
plot(ema20, color=color.green, title="EMA20")
plot(ema50, color=color.red, title="EMA50")
plot(ema200, color=color.blue, title="EMA200")
// Placing buy and sell markers
plotshape(series=crossed_above, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal")
plotshape(series=crossed_below, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal")