
Ichimoku Kumo Twist रणनीति Ichimoku सूचक के रूपांतरण लाइन, बेंचमार्क लाइन और गाइड लाइन का उपयोग करके एक ट्रेडिंग सिग्नल बनाने के लिए एक प्रवृत्ति ट्रैकिंग रणनीति है। यह कम जोखिम वाले ब्रेकआउट और ओवरबॉय ओवरसेल अवसरों को प्राप्त करने के लिए अल्पकालिक और मध्यम अवधि के रुझानों के उलट बिंदुओं को खोजने के लिए Ichimoku क्लाउड बैंड के माध्यम से टर्नआउट करता है। यह रणनीति दिन के भीतर व्यापार के लिए या सप्ताह के लिए मध्यम लंबाई के व्यापार के लिए भी काम कर सकती है।
इस रणनीति में मुख्य रूप से इचिमोकु सूचकांक की तीन औसत रेखाओं का उपयोग किया जाता है - रूपांतरण रेखा, आधार रेखा और गाइड लाइन 1, और K लाइन के लिए उच्चतम और निम्नतम मूल्य की गणना के लिए बादल पट्टी की ऊपरी-नीची सीमा। रूपांतरण रेखा पिछले 9 K लाइनों के उच्चतम और निम्नतम मूल्य के मध्य बिंदुओं को गणना करती है, जो कि प्रथम-संतुलन ग्राफ के अल्पकालिक औसत को दर्शाती है; आधार रेखा पिछले 26 K लाइनों के उच्चतम और निम्नतम मूल्य के मध्य बिंदुओं को गणना करती है, जो कि दीर्घकालिक औसत को दर्शाती है। गाइड 1 रूपांतरण रेखा और आधार रेखा के लिए औसत है, गाइड 2 पिछले 52 K लाइनों के मध्य बिंदुओं को दर्शाती है।
जब कंडक्टर 1 कंडक्टर 2 को पार करता है, तो एक खरीद संकेत उत्पन्न होता है, और जब कंडक्टर 1 कंडक्टर 2 को पार करता है, तो एक बेचने का संकेत उत्पन्न होता है। ट्रेडिंग रणनीति ट्रैक करने के लिए है अल्पकालिक और मध्यवर्ती औसत रेखा के गोल्डन फोर्क, प्रवृत्ति में परिवर्तन को पकड़ने के लिए।
Ichimoku Cloud Belt Reversal Strategy (इचिमोकू क्लाउड बैंड रिवर्स रणनीति) एक साथ अल्पकालिक और मध्यावधि रुझानों को जोड़ती है, जिससे ट्रेंड रिवर्सिंग पॉइंट्स की प्रभावी पहचान की जा सकती है।
यह एक समान रेखा पर आधारित रणनीति है, जिसमें कुछ विलंबता है, जो कुछ शोर को फ़िल्टर कर सकती है।
क्लाउड बैंड का उपयोग करके मजबूत और कमजोर रुझानों की स्पष्टता का आकलन करें और बेहतर प्रविष्टियों और निकासों को प्राप्त करें।
Ichimoku मानक पैरामीटर का उपयोग करके पैरामीटर अनुकूलन की आवश्यकता नहीं है।
इचिमोकू सिद्धांत जटिल है, पैरामीटर समायोजन के लिए संवेदनशील नहीं है, और इसे अधिक अनुकूलित करना आसान नहीं है।
बाजारों में कई बार गलत संकेत मिल सकते हैं।
जब अल्पकालिक और मध्यावधि रुझान अलग हो जाते हैं, तो रणनीति विफल हो जाती है।
जोखिम को नियंत्रित करने के लिए स्टॉप लॉस के साथ होना चाहिए, अन्यथा अधिक नुकसान हो सकता है।
सबसे अच्छा संतुलन बिंदु खोजने के लिए एक परिवर्तनीय रेखा और एक बेंचमार्क रेखा के विभिन्न पैरामीटर संयोजनों का परीक्षण किया जा सकता है।
अन्य संकेतकों के साथ संयोजन में प्रवेश संकेतों को फ़िल्टर करें, स्पष्ट रूप से प्रतिकूल स्थितियों में घर बनाने से बचें।
स्टॉप लॉस रणनीति जोड़ें, डायनामिक स्टॉप लॉस या फॉलो-अप स्टॉप लॉस सेट करें।
स्थिति प्रबंधन को अनुकूलित करें, बाजार की स्थिति के अनुसार स्थिति आकार को समायोजित करें।
ट्रेडिंग प्रसंस्करण शुल्क को वापस मापने में शामिल करना, जो वापस मापने के परिणामों को अधिक सटीक बनाता है।
इचिमोकू क्लाउड बेल्ट रिवर्स रणनीति समग्र रूप से एक मध्यम प्रवृत्ति रणनीति है। यह प्रभावी रूप से प्रवृत्ति के मोड़ की पहचान कर सकती है और प्रवृत्ति की दिशा में स्थितियों को खोल सकती है। लेकिन इस रणनीति में कुछ निगरानी लागत भी है, जिसे सख्त जोखिम प्रबंधन उपायों के साथ लंबे समय तक उपयोग करने के लिए जोड़ा जाना चाहिए। पैरामीटर सेटिंग, प्रवेश फ़िल्टर, स्टॉप लॉस आदि को लगातार अनुकूलित करके, इस रणनीति की स्थिरता और लाभप्रदता को बढ़ाया जा सकता है।
/*backtest
start: 2022-10-20 00:00:00
end: 2023-10-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title="Ichimoku Kumo Twist Strategy (Presets)", shorttitle="Kumo Twist Strategy", overlay=true)
xlowest_(src, len) =>
x = src
for i = 1 to len - 1
v = src[i]
if (na(v))
break
x := min(x, v)
x
xlowest(src, len) =>
na(src[len]) ? xlowest_(src, len) : lowest(src, len)
xhighest_(src, len) =>
x = src
for i = 1 to len - 1
v = src[i]
if (na(v))
break
x := max(x, v)
x
xhighest(src, len) =>
na(src[len]) ? xhighest_(src, len) : highest(src, len)
dropn(src, n) =>
na(src[n]) ? na : src
ichiConversionPeriods(presets) =>
if presets == "Crypto Doubled"
20
else
if presets == "Crypto Singled"
10
else
if presets == "Standard Doubled"
18
else
9
ichiBasePeriods(presets) =>
if presets == "Crypto Doubled"
60
else
if presets == "Crypto Singled"
30
else
if presets == "Standard Doubled"
52
else
26
ichiLaggingSpan2Periods(presets) =>
if presets == "Crypto Doubled"
120
else
if presets == "Crypto Singled"
60
else
if presets == "Standard Doubled"
104
else
52
ichiDisplacement(presets) =>
if presets == "Crypto Doubled"
30
else
if presets == "Crypto Singled"
30
else
if presets == "Standard Doubled"
26
else
26
scaling = input(title="Scaling", options=["Linear", "Log"], defval="Linear")
presets = input(title="Presets", options=["Crypto Doubled", "Crypto Singled", "Standard Doubled", "Standard Singled"], defval="Crypto Doubled")
dropCandles = input(1, minval=0, title="Drop first N candles")
showClouds = input(false, "Show Clouds")
stoploss = input(true, title="Stop Loss")
conversionPeriods = ichiConversionPeriods(presets)
basePeriods = ichiBasePeriods(presets)
laggingSpan2Periods = ichiLaggingSpan2Periods(presets)
displacement = ichiDisplacement(presets)
logScaling = scaling == "Log"
lows = dropn(low, dropCandles)
highs = dropn(high, dropCandles)
lowsp = logScaling ? log(lows) : lows
highsp = logScaling ? log(highs) : highs
donchian(len) =>
avg(xlowest(lowsp, len), xhighest(highsp, len))
conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)
golong = crossover(leadLine1, leadLine2)
goshort = crossunder(leadLine1, leadLine2)
strategy.entry("Buy", strategy.long, when=golong, stop=(stoploss ? high+syminfo.mintick : na))
strategy.entry("Sell", strategy.short, when=goshort, stop=(stoploss ? low-syminfo.mintick : na))
conversionLinep = logScaling ? exp(conversionLine) : conversionLine
baseLinep = logScaling ? exp(baseLine) : baseLine
leadLine1p = logScaling ? exp(leadLine1) : leadLine1
leadLine2p = logScaling ? exp(leadLine2) : leadLine2
plot(showClouds ? conversionLinep : na, color=#0496ff, title="Conversion Line")
plot(showClouds ? baseLinep : na, color=#991515, title="Base Line")
p1 = plot(showClouds ? leadLine1p : na, offset = displacement, color=green, title="Lead 1")
p2 = plot(showClouds ? leadLine2p : na, offset = displacement, color=red, title="Lead 2")
fill(p1, p2, color = showClouds ? (leadLine1p > leadLine2p ? green : red) : na)