बहु-अवधि ईएमए क्रॉसओवर मात्रात्मक ट्रेडिंग रणनीति


निर्माण तिथि: 2023-12-27 17:09:23 अंत में संशोधित करें: 2023-12-27 17:09:23
कॉपी: 0 क्लिक्स: 643
1
ध्यान केंद्रित करना
1621
समर्थक

बहु-अवधि ईएमए क्रॉसओवर मात्रात्मक ट्रेडिंग रणनीति

अवलोकन

इस लेख में तीन अलग-अलग चक्रों पर आधारित एक मात्रात्मक ट्रेडिंग रणनीति का वर्णन किया गया है। इसका उद्देश्य ईएमए के चौराहे का उपयोग करना है ताकि स्टॉक मार्केट में दीर्घकालिक और अल्पकालिक रुझानों की पहचान की जा सके और प्रभावी ट्रेडिंग निर्णय लिए जा सकें।

रणनीति सिद्धांत

रणनीति तीन अलग-अलग चक्रों के ईएमए का उपयोग करती हैः 10 दिन, 100 दिन और 200 दिन। जब छोटी अवधि ईएमए ((10 दिन) लंबी अवधि ईएमए ((100 दिन या 200 दिन) से गुजरती है, तो क्रॉसिंग की दिशा के आधार पर एक खरीद या बेचने का संकेत उत्पन्न होता है। रणनीति में एक समय फ़िल्टर भी शामिल है जो यह सुनिश्चित करता है कि केवल एक विशिष्ट समय अवधि के भीतर व्यापार किया जाए। इस संयोजन से रणनीति की लचीलापन और अनुकूलन क्षमता बढ़ जाती है।

श्रेष्ठता विश्लेषण

इस रणनीति का लाभ इसकी सरलता और उच्च अनुकूलनशीलता में निहित है। बहु-चक्र ईएमए बाजार की प्रवृत्तियों के लिए एक बहु-कोण अवलोकन प्रदान करता है, जो व्यापारिक निर्णयों की सटीकता को बढ़ाता है। साथ ही, समय फ़िल्टर बाजार की अस्थिरता से बचता है और संभावित जोखिम को कम करता है।

जोखिम विश्लेषण

इस रणनीति के प्रभावी होने के बावजूद, कुछ जोखिम हैं। मुख्य जोखिम यह है कि बाजार की अचानक घटनाओं के कारण रणनीति विफल हो सकती है। इसके अलावा, ईएमए संकेतक में विलंबता हो सकती है, जो बाजार में बदलाव को दर्शाती है। इन जोखिमों से निपटने के तरीकों में वास्तविक समय में बाजार की निगरानी और निर्णय लेने की सटीकता बढ़ाने के लिए अन्य तकनीकी संकेतकों के साथ संयोजन शामिल है।

अनुकूलन दिशा

रणनीतियों के अनुकूलन के दिशा में बाजार विश्लेषण की गहराई और चौड़ाई को बढ़ाने के लिए कई तकनीकी संकेतकों, जैसे कि सापेक्ष ताकत सूचकांक (आरएसआई) और ब्रीज बैंड का एकीकृत उपयोग शामिल है। इसके अलावा, ईएमए चक्र को समायोजित करके विभिन्न बाजार स्थितियों के लिए बेहतर अनुकूलन किया जा सकता है।

संक्षेप

कुल मिलाकर, इस प्रकार की बहु-चक्र ईएमए क्रॉस-क्वांटिफाइड ट्रेडिंग रणनीति एक कुशल उपकरण है जो व्यापारियों को परिवर्तनशील बाजारों में बेहतर निर्णय लेने में मदद कर सकती है। इस रणनीति में बाजार में बदलाव के लिए अनुकूलन और अनुकूलन के माध्यम से भविष्य के ट्रेडों में उच्च रिटर्न प्राप्त करने की क्षमता है।

रणनीति स्रोत कोड
/*backtest
start: 2022-12-20 00:00:00
end: 2023-12-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
start = timestamp(2023,1,1,0,0)
end = timestamp(2024,1,1,0,0)
strategy("Tester Emas", overlay = true)

periodo1 = input(10,"Periodo_1")
periodo2 = input(100,"Periodo_2")
periodo3 = input(200,"Periodo_3")

//definir media moviles
ema1 = ta.ema(close,periodo1)
ema2 = ta.ema(close,periodo2)
ema3 = ta.ema(close,periodo3)

//Desde
desde_a = input(2000, title = "Desde año")
desde_m = input.int(   1, title = "Desde mes", minval=1, maxval = 12)
desde_d = input.int(   1, title = "Desde dia", minval=1, maxval = 31)

//Hasta
hasta_a = input(2030, title = "Hasta año")
hasta_m = input.int(   1, title = "Hasta mes", minval=1, maxval = 12)
hasta_d = input.int(   1, title = "Hasta dia", minval=1, maxval = 31)

FechaValida() => true

//Condicion de entradas
longCondition = ta.crossover(ema1, ema2)
shortCondition = ta.crossunder(ema1,ema2)

alcista = (ema1 > ema2) and (ema2 > ema3)
comprado =strategy.position_size > 0



//Comprar o vender segun las condiciones de entradas

//if (longCondition)
if (not comprado and alcista and FechaValida())
    // Round redondea mi capital para comprar las acciones en cantidades enteras
    cantidad = math.round(strategy.equity/ close)
    strategy.entry("Compra", strategy.long, cantidad)
//if (shortCondition)
if (comprado and not alcista and FechaValida())
    //strategy.entry("Venta", strategy.short)
    strategy.close("Compra" , comment = "Venta")

if (comprado and not FechaValida())
    //Cierre x finalizacion de periodo
    //strategy.entry("Venta", strategy.short)
    strategy.close("Compra" , comment = "Venta x fin")

//Graficar las medias moviles
plot(ema1, color = color.green, title = "Ema1")
plot(ema2, color = color.yellow, title = "Ema2")
plot(ema3, color = color.red, title = "Ema2")
//GMarca los cruces de medias
bgcolor(longCondition ? color.green : na)
bgcolor(shortCondition ? color.red : na)