वास्तविक अस्थिरता पर आधारित भारित मूविंग एवरेज अंतर-कालिक रणनीति


निर्माण तिथि: 2024-01-17 15:09:28 अंत में संशोधित करें: 2024-01-17 15:09:28
कॉपी: 1 क्लिक्स: 572
1
ध्यान केंद्रित करना
1617
समर्थक

वास्तविक अस्थिरता पर आधारित भारित मूविंग एवरेज अंतर-कालिक रणनीति

अवलोकन

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

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

यह रणनीति पहले ऊपरी लहर की मात्रा (उप) और निचली लहर की मात्रा (बाजा) की गणना करती है, और फिर क्रमशः तेज रेखा (कोर्टो) चक्र और धीमी रेखा (लार्गो) चक्र के WMA की गणना करती है। तेज और धीमी रेखा के अंतर को फिर से WMA के माध्यम से सूचकांक (इंड) के लिए गणना की जाती है। जब सूचकांक 0 से गुजरता है तो एक खरीद संकेत उत्पन्न होता है और जब 0 से गुजरता है तो एक बेचने का संकेत उत्पन्न होता है।

बाजार में प्रवेश करने के बाद, रणनीति में 5 पदों का प्रावधान किया गया है, जिससे पिरामिड को समकक्ष रूप से ((दो बार) संचयी तरीके से पूरा किया जा सके। साथ ही, एक स्टॉप लॉस तंत्र स्थापित किया गया है, जिसके बाद स्थिति खोलने पर यह निर्णय लेना होगा कि क्या वर्तमान फ्लोट स्टॉप लॉस लाइन से कम है, जिससे जोखिम को नियंत्रित किया जा सके।

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

इस रणनीति में दीर्घकालिक निर्णय, पिरामिड वृद्धि, और कई स्टॉप-लॉस जैसे तंत्र शामिल हैं, जो जोखिम को प्रभावी ढंग से नियंत्रित करने और स्थिर लाभप्रदता की खोज करने में मदद करते हैं।

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

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

इस रणनीति का मुख्य जोखिम यह है कि एक आकस्मिक घटना हो सकती है जो तेजी से व्यापार को उलट देती है और स्टॉपलॉस कटऑफ को ट्रिगर करती है और नुकसान का कारण बनती है। इसके अलावा, पैरामीटर की गलत सेटिंग रणनीति की स्थिरता को प्रभावित कर सकती है।

स्टॉप लाइन को उचित रूप से ढीला करके बाजार में उलटफेर के जोखिम का सामना किया जा सकता है। अनुकूलित पैरामीटर सेटिंग, समायोजन चक्र पैरामीटर, स्थिति संख्या आदि रणनीति की स्थिरता को बढ़ा सकते हैं।

अनुकूलन दिशा

इस रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः

  1. इस रणनीति को और अधिक अनुकूल बनाने के लिए, सांख्यिकीय मापदंडों को जोड़ना, जो उतार-चढ़ाव की दर, लेनदेन की मात्रा जैसे मापदंडों को संशोधित करने के लिए है।

  2. मशीन लर्निंग मॉडल निर्णय को बढ़ाएं, एलएसटीएम जैसे गहरी सीखने के मॉडल का उपयोग करें, रणनीति की सटीकता में सुधार करें।

  3. स्थिति प्रबंधन तंत्र का अनुकूलन करें, स्थिति वृद्धि को अधिक उचित बनाने के लिए अस्थिरता के अनुपात में वृद्धि दर को समायोजित करने पर विचार करें।

  4. फ्यूचर्स को कवर करने के मॉडल के साथ, वायदा को कवर करने का उपयोग करके जोखिम को और अधिक नियंत्रित किया जाता है।

संक्षेप

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

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © MaclenMtz

//@version=5
strategy("[MACLEN] Rangos", shorttitle="Rangos [https://t.me/Bitcoin_Maclen]", overlay=false )

//------WINDOW----------

i_startTime = input(defval = timestamp("01 Jan 2022 00:00 -0700"), title = "Start Time", group = "Backtest Window")
i_endTime = input(defval = timestamp("31 Dec 2025 00:00 -0700"), title = "End Time")
window = true

//-----------------------------

sube = close>close[1] ? ta.tr : 0
baja = close<close[1] ? ta.tr : 0

corto = input(10)
largo = input(30)
suavizado = input(10)

fastDiff = ta.wma(sube, corto) - ta.wma(baja,corto)
slowDiff = ta.wma(sube, largo) - ta.wma(baja, largo)
ind = ta.wma(fastDiff - slowDiff, suavizado)

iColor = ind>0 ? color.green : ind<0 ? color.red : color.black
plot(ind, color=iColor)
plot(0, color=color.white)

long = ind[1]<ind and ind[2]<ind[1] and ind<0
short = ind[1]>ind and ind[2]>ind[1] and ind>0

plotshape(long and not long[1], style = shape.xcross, color=color.green, location=location.bottom, size=size.tiny)
plotshape(short and not short[1], style = shape.xcross, color=color.red, location=location.top, size=size.tiny)

//Contratos
contrato1 = input(50000)/(16*close)
c1 = contrato1
c2 = contrato1
c3 = contrato1*2
c4 = contrato1*4
c5 = contrato1*8

//cap_enopentrade = strategy.opentrades == 1 ? c1: strategy.opentrades == 2 ? c1+c2: strategy.opentrades == 3 ? c1+c2+c3: strategy.opentrades == 4 ? c1+c2+c3+c4: strategy.opentrades == 5 ? c1+c2+c3+c4+c5 : 0
openprofit_porc = math.round((close-strategy.position_avg_price)/strategy.position_avg_price * 100,2)

porc_tp = input.float(6.5)
safe = input(-6)

//----------------Strategy---------------------------

if strategy.opentrades == 0
    strategy.entry('BUY1', strategy.long, qty=c1, when = long and not long[1] and window)

if strategy.opentrades == 1
    strategy.entry('BUY2', strategy.long, qty=c2, when = long and not long[1] and window and openprofit_porc<safe)

if strategy.opentrades == 2
    strategy.entry('BUY3', strategy.long, qty=c3, when = long and not long[1] and window and openprofit_porc<safe)

if strategy.opentrades == 3
    strategy.entry('BUY4', strategy.long, qty=c4, when = long and not long[1] and window and openprofit_porc<safe)

if strategy.opentrades == 4
    strategy.entry('BUY5', strategy.long, qty=c5, when = long and not long[1] and window and openprofit_porc<safe)

min_prof = strategy.openprofit>0

strategy.close_all(when=short and min_prof)

plot(openprofit_porc)