
एक धीमी गति से ईएमए गोल्ड क्रॉस-ब्रेकिंग रणनीति एक सरल और प्रभावी रणनीति है जो बाजार के रुझानों को ट्रैक करती है। यह विभिन्न चक्रों के ईएमए की औसत रेखा का उपयोग करके क्रॉस-ब्रेकिंग के लिए खरीद और बेचने के संकेत देता है। मूल विचार यह है कि जब एक छोटी अवधि ईएमए पर एक लंबी अवधि ईएमए से गुजरती है, तो एक खरीद संकेत उत्पन्न होता है; जब एक छोटी अवधि ईएमए पर एक लंबी अवधि ईएमए से गुजरती है, तो एक बेचने का संकेत उत्पन्न होता है।
यह रणनीति ट्रेडिंग सिग्नल उत्पन्न करने के लिए 5 चक्र, 8 चक्र और 13 चक्र ईएमए औसत की तुलना पर निर्भर करती है। इसमें शामिल हैंः
इस प्रकार, यह एक लंबी और मध्यम अवधि की प्रवृत्ति को ट्रैक करने का प्रभाव प्राप्त करता है। जब छोटी अवधि की औसत रेखा पर लंबी अवधि की औसत रेखा होती है, तो यह दर्शाता है कि अल्पकालिक प्रवृत्ति बहुमुखी है और इसे खरीदा जा सकता है; जब छोटी अवधि की औसत रेखा के नीचे लंबी अवधि की औसत रेखा होती है, तो यह दर्शाता है कि अल्पकालिक प्रवृत्ति शून्य है और इसे बेचा जाना चाहिए।
इस रणनीति के मुख्य फायदे हैंः
इस रणनीति के कुछ जोखिम भी हैं:
इस रणनीति को निम्नलिखित दिशाओं में अनुकूलित किया जा सकता हैः
संक्षेप में, तेजी से ईएमए गोल्ड क्रॉस ब्रेकिंग रणनीति समग्र रूप से अच्छी तरह से काम करती है, सिग्नल अधिक विश्वसनीय है, कम वापसी है, जो मध्यम-लंबी प्रवृत्ति को ट्रैक करने के लिए उपयुक्त है। पैरामीटर अनुकूलन और नियमों को बेहतर बनाने के माध्यम से बेहतर रणनीति प्रभाव प्राप्त किया जा सकता है।
/*backtest
start: 2023-11-23 00:00:00
end: 2023-11-30 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
//
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © gregoirejohnb
// @It is modified by ttsaadet.
// Moving average crossover systems measure drift in the market. They are great strategies for time-limited people.
// So, why don't more people use them?
//
//
strategy(title="EMA Crossover Strategy by TTS", shorttitle="EMA-5-8-13 COS by TTS", overlay=true, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100, currency=currency.TRY,commission_type=strategy.commission.percent,commission_value=0.04, process_orders_on_close = true, initial_capital = 100000)
// === GENERAL INPUTS ===
//strategy start date
start_year = input(defval=2020, title="Backtest Start Year")
// === LOGIC ===
short_period = input(type=input.integer,defval=5,minval=1,title="Length")
mid_period = input(type=input.integer,defval=8,minval=1,title="Length")
long_period = input(type=input.integer,defval=13,minval=1,title="Length")
rsi_period = input(type=input.integer,defval=14,minval=1,title="Length")
longOnly = input(type=input.bool,defval=false,title="Long Only")
shortEma = ema(close,short_period)
midEma = ema(close,mid_period)
longEma = ema(close,long_period)
rsi = rsi(close, rsi_period)
[diplus, diminus, adx] = dmi(short_period, short_period)
plot(shortEma,linewidth=2,color=color.red,title="Fast")
plot(midEma,linewidth=2,color=color.orange,title="Fast")
plot(longEma,linewidth=2,color=color.blue,title="Slow")
longEntry = crossover(shortEma,midEma) and crossover(shortEma,longEma) //or ((shortEma > longEma) and crossover(shortEma,midEma)))and (adx > 25)
shortEntry =((shortEma < midEma) and crossunder(shortEma,longEma)) or ((shortEma < longEma) and crossunder(shortEma,midEma))
plotshape(longEntry ? close : na,style=shape.triangleup,color=color.green,location=location.belowbar,size=size.small,title="Long Triangle")
plotshape(shortEntry and not longOnly ? close : na,style=shape.triangledown,color=color.red,location=location.abovebar,size=size.small,title="Short Triangle")
plotshape(shortEntry and longOnly ? close : na,style=shape.xcross,color=color.black,location=location.abovebar,size=size.small,title="Exit Sign")
// === STRATEGY - LONG POSITION EXECUTION ===
enterLong() =>
longEntry and
time > timestamp(start_year, 1, 1, 01, 01)
exitLong() =>
crossunder(shortEma,longEma) or crossunder(close, longEma)
strategy.entry(id="Long", long=strategy.long, when=enterLong())
strategy.close(id="Long", when=exitLong())
// === STRATEGY - SHORT POSITION EXECUTION ===
enterShort() =>
not longOnly and shortEntry and
time > timestamp(start_year, 1, 1, 01, 01)
exitShort() =>
crossover(shortEma,longEma)
strategy.entry(id="Short", long=strategy.short, when=enterShort())
strategy.close(id="Short", when=exitShort())