LazyBear के निचोड़ पर आधारित गति रणनीति

लेखक:चाओझांग, दिनांकः 2023-12-21 14:22:49
टैगः

img

अवलोकन

इस रणनीति का मुख्य विचार खरीदने और बेचने के समय का विश्लेषण करने के लिए LazyBear के निचोड़ गति संकेतक पर आधारित है। यह गति की प्रवृत्ति में झुकाव बिंदुओं का विश्लेषण करता है, क्रमशः बेचने और खरीदने के संकेतों के रूप में चोटियों और घाटों का पता लगाता है। चूंकि यह एक लंबी रणनीति है, यह ऊपर की ओर रुझानों की पहचान करने के लिए 50 अवधि घातीय चलती औसत को भी ध्यान में रखता है। यदि मोमबत्ती की समापन कीमत 50EMA से ऊपर है, और 50EMA की ढलान ऊपर की ओर प्रवृत्ति है, तो खरीद संकेत निष्पादित किया जाता है।

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

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

इसके अलावा, रणनीति गतिशीलता ढलान में परिवर्तन का विश्लेषण करने के लिए रैखिक प्रतिगमन का उपयोग करती है। यह पिछले 20 अवधियों में मूल्य के रैखिक प्रतिगमन मूल्य की गणना करता है, जिसमें सामान्य मूल्य को घटा दिया जाता है। जब रैखिक प्रतिगमन मूल्य की ढलान सकारात्मक होती है, तो इसे एक ऊपर की प्रवृत्ति के रूप में देखा जाता है। जब ढलान नकारात्मक होती है, तो यह एक नीचे की प्रवृत्ति है। निचोड़ क्षेत्र के भीतर, यदि गतिशीलता ढलान में उलट है, तो यह एक खरीद या बिक्री का संकेत देता है। विशेष रूप से, जब निचोड़ क्षेत्र के भीतर, एक गति सकारात्मक से नकारात्मक में फ्लिप एक बिक्री संकेत जारी करता है। और जब निचोड़ क्षेत्र के भीतर, एक गति नकारात्मक से सकारात्मक में फ्लिप एक खरीद संकेत जारी करता है।

झूठे संकेतों को फ़िल्टर करने के लिए, रणनीति यह भी आंकती है कि क्या समापन मूल्य 50 दिन के घातीय चलती औसत से ऊपर है और यदि 50 दिन का घातीय चलती औसत ऊपर की ओर ढलान में है। केवल जब दोनों शर्तें पूरी हो जाती हैं तो खरीद संकेत निष्पादित किया जाएगा।

लाभ विश्लेषण

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

  1. बहुआयामी विश्लेषण और बेहतर सटीकता के लिए बोलिंगर बैंड, केल्टनर चैनल और गति संकेतक का व्यापक अनुप्रयोग।

  2. निचोड़ क्षेत्र गति के उलटों के शिखरों और घाटों की प्रभावी ढंग से पहचान कर सकते हैं और मोड़ को सटीक रूप से पकड़ सकते हैं।

  3. समापन मूल्य और 50 दिनों के ईएमए के आधार पर प्रवृत्ति फ़िल्टरिंग समेकन के दौरान पदों के दोहराए जाने से बचती है।

  4. केवल निचोड़ क्षेत्रों के दौरान उत्सर्जित संकेत झूठे संकेतों को कम करते हैं और लाभप्रदता दर में सुधार करते हैं।

  5. बड़े पैरामीटर अनुकूलन स्थान समायोजन अवधि आदि के माध्यम से लक्षित अनुकूलन की अनुमति देता है।

  6. लंबी और छोटी अवधि को मिलाकर, बड़े चक्र के रुझानों को ध्यान में रखते हुए और मध्यम अवधि के संकेतकों को एकीकृत करते हुए, लंबी दिशा स्पष्ट है।

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

यद्यपि इस रणनीति में कई गैर-कृषि तकनीकी संकेतक हैं, फिर भी कुछ जोखिम हैंः

  1. जब बोलिंगर बैंड और केल्टनर चैनल अलग होते हैं तो खरीद/बिक्री के अवसरों को खोना।

  2. बाजार में जबरदस्त उछाल या गिरावट के दौरान बड़े नुकसान हो सकते हैं।

  3. उच्च अस्थिरता वाले बाजारों में, निचोड़ की स्थिति स्पष्ट नहीं हो सकती है, जिसके परिणामस्वरूप कम संकेत होते हैं।

  4. बुल-बियर संक्रमण के दौरान समायोजन घाटे के लिए प्रवण।

इन जोखिमों से बचने के लिए हम निम्नलिखित उपाय कर सकते हैंः

  1. बोलिंगर बैंड और केल्टनर चैनलों को यथासंभव सिंक्रनाइज़ करने के लिए मापदंडों को अनुकूलित करें।

  2. एकल हानि को नियंत्रित करने के लिए स्टॉप हानि सेट करें.

  3. पोर्टफोलियो रणनीति के हिस्से के रूप में इस रणनीति का उपयोग करें, अन्य रणनीतियों के साथ संयुक्त।

  4. उच्च अस्थिरता वाले बाजारों के दौरान स्थिति को उचित रूप से कम करें।

अनुकूलन दिशाएँ

इस रणनीति के अनुकूलन के लिए अभी भी काफी जगह है, मुख्य रूप से निम्नलिखित दिशाओं मेंः

  1. बोलिंगर बैंड और केल्टनर चैनलों की अवधि का अधिकतम अनुकूलन करना ताकि उन्हें यथासंभव समन्वित किया जा सके।

  2. इष्टतम पैरामीटर संयोजन खोजने के लिए विभिन्न गुणक कारकों का परीक्षण करें।

  3. पुष्टि के लिए अन्य संकेतक जैसे आरएसआई आदि को पेश करने का प्रयास करें।

  4. वेन हुआ पांच रंग लाइन मॉडल के आधार पर, बाजार के चरणों के आधार पर इस रणनीति का चयनपूर्वक उपयोग करें।

  5. गतिशील रूप से मापदंडों को अनुकूलित करने के लिए मशीन लर्निंग आदि को अपनाएं।

  6. सबसे उपयुक्त व्यापारिक उत्पादों को खोजने के लिए विभिन्न सिक्कों पर बैकटेस्ट करें।

  7. लंबी अवधि (दैनिक, साप्ताहिक आदि) में इस रणनीति की प्रभावशीलता का पता लगाएं।

निष्कर्ष

LazyBear Squeeze Momentum Strategy व्यापक रूप से विभिन्न तकनीकी संकेतकों का उपयोग करता है, संपीड़न क्षेत्रों के दौरान व्यापार के लिए गति के उलट को सटीक रूप से पहचानता है, गैर-ट्रेंडिंग बाजारों के दौरान पदों के दोहराए जाने से बचता है। इसमें व्यवस्थित रूप से मात्रात्मक रूप से परिभाषित खरीद और बिक्री नियम हैं, बैकटेस्ट में उत्कृष्ट प्रदर्शन करते हैं। पैरामीटर सेटिंग्स को अनुकूलित करने, नए निर्णय संकेतकों आदि की शुरुआत के माध्यम से, इस रणनीति में सुधार के लिए बड़ी जगह है और मात्रा व्यापारियों द्वारा गहन शोध और अनुप्रयोग के लायक है।


/*backtest
start: 2023-11-20 00:00:00
end: 2023-12-20 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

//
// @author LazyBear 
// List of all my indicators: https://www.tradingview.com/v/4IneGo8h/
//
initialBalance = 8000

strategy("Crypto momentum strategy", overlay=false)


length = input(20, title="BB Length")
mult = input(2.0, title="BB MultFactor")
lengthKC = input(20, title="KC Length")
multKC = input(1.5, title="KC MultFactor")

useTrueRange = input(true, title="Use TrueRange (KC)", type=input.bool)

// Calculate BB
source = close
basis = sma(source, length)
ema = ema(source, 50)
dev = multKC * stdev(source, length)
upperBB = basis + dev
lowerBB = basis - dev

// Calculate KC
ma = sma(source, lengthKC)
range = useTrueRange ? tr : high - low
rangema = sma(range, lengthKC)
upperKC = ma + rangema * multKC
lowerKC = ma - rangema * multKC

sqzOn = lowerBB > lowerKC and upperBB < upperKC
sqzOff = lowerBB < lowerKC and upperBB > upperKC
noSqz = sqzOn == false and sqzOff == false

val = linreg(source - avg(avg(highest(high, lengthKC), lowest(low, lengthKC)), sma(close, lengthKC)), lengthKC, 0)

slope = (val - val[2])
emaSlope = (ema - ema[1])


bcolor = iff(slope > 0, color.lime, color.red)
scolor = noSqz ? color.green : sqzOn ? color.black : color.green
squeeze = (noSqz ? 0 : sqzOn ? 1 : 0)

plot(val, color=color.gray, style=plot.style_line, linewidth=1, title="momentum")
plot(slope, color=bcolor, style=plot.style_circles, linewidth=2, title="slope")
plot(0, color=scolor, style=plot.style_line, linewidth=2, title="squeeze-zero")

co = crossover(slope / abs(slope), 0)
cu = crossunder(slope / abs(slope), 0)

if co and source > ema and emaSlope > 0
    strategy.entry("long", strategy.long, comment="long")
if cu
    strategy.close("long")


अधिक