इचिमोकू क्लाउड चार्ट पर आधारित मात्रात्मक ट्रेडिंग रणनीति


निर्माण तिथि: 2024-01-12 14:20:43 अंत में संशोधित करें: 2024-01-12 14:20:43
कॉपी: 0 क्लिक्स: 680
1
ध्यान केंद्रित करना
1617
समर्थक

इचिमोकू क्लाउड चार्ट पर आधारित मात्रात्मक ट्रेडिंग रणनीति

अवलोकन

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

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

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

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

अंत में, इस रणनीति में ट्रैक किए गए स्टॉप-लॉस तंत्र का उपयोग किया गया है। विशेष रूप से, एटीआर के 2 गुना के रूप में वापस लेने के लिए, वास्तविक समय में स्टॉप-लॉस लाइन को लॉक करने के लिए; हवाई आदेश के लिए, एटीआर के 2 गुना के रूप में वापस लेने के लिए, वास्तविक समय में स्टॉप-लॉस लाइन को लॉक करने के लिए।

रणनीति का विश्लेषण

  1. इचिमोकु क्लाउड ग्राफिक्स पर आधारित, ट्रेंड्स को प्रभावी ढंग से कैप्चर करें
  2. एटीआर सूचक के साथ स्टॉप लॉस स्टॉप, जो जोखिम को नियंत्रित करता है
  3. ट्रैक किए गए स्टॉप लॉस के साथ, लाभ को अच्छी तरह से लॉक किया जा सकता है
  4. रणनीति तर्क सरल, स्पष्ट, समझने और सत्यापित करने में आसान है
  5. विभिन्न बाजारों के अनुसार समायोज्य पैरामीटर

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

  1. इचिमोकु क्लाउड मैप पैरामीटर सेटिंग के प्रति संवेदनशील है, अनुचित सेटिंग्स ट्रेडिंग अवसरों को याद कर सकती हैं या गलत संकेत दे सकती हैं
  2. ट्रैक स्टॉप यदि सेटिंग बहुत बड़ी है, तो यह बहुत जल्दी स्टॉप हो सकता है
  3. मजबूत स्टॉक एटीआर सूचकांक द्वारा दी गई स्टॉप लाइन को तोड़ सकते हैं या स्टॉप लाइन को ट्रैक कर सकते हैं
  4. लेन-देन की लागत भी लाभप्रदता को प्रभावित करती है

जोखिम के लिए समाधानः

  1. इचिमोकु क्लाउड मैप के लिए पैरामीटर का अनुकूलन करें और सबसे उपयुक्त सेटिंग्स खोजें
  2. उचित ट्रैक स्टॉप लॉस का आकलन करें, न तो बहुत बड़ा और न ही बहुत छोटा
  3. मजबूत शेयरों के लिए उचित रूप से कम हो सकती है।
  4. कम शुल्क वाले ब्रोकर चुनें

रणनीति अनुकूलन दिशा

  1. गलत ट्रेडों को कम करने के लिए अन्य तकनीकी संकेतकों के साथ सिग्नल फ़िल्टरिंग
  2. ऐतिहासिक डेटा/पुनरावलोकन के आधार पर पैरामीटर का अनुकूलन
  3. विभिन्न नस्लों के लिए पैरामीटर सेटिंग्स अनुकूलित किया जा सकता है
  4. स्टॉप लॉस को गतिशील रूप से समायोजित करने पर विचार करें
  5. एल्गोरिदम के साथ विशेषता इंजीनियरिंग, अधिक विश्वसनीय ट्रेडिंग सिग्नल बनाने के लिए

संक्षेप

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

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

//@version=5
strategy("Ichimoku Cloud Strategy with SL, TP, and Trailing Stop", overlay=true)

conversionPeriods = input(9, "Conversion Line Length")
basePeriods = input(26, "Base Line Length")
laggingSpan2Periods = input(52, "Leading Span B Length")
displacement = input(26, "Lagging Span")
atrLength = input(14, title="ATR Length")

donchian(len) => math.avg(ta.lowest(len), ta.highest(len))
conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = math.avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)

// Plot the Ichimoku Cloud components
plot(conversionLine, color=color.blue, title="Conversion Line")
plot(baseLine, color=color.red, title="Base Line")
plot(leadLine1, color=color.green, title="Leading Span A")
plot(leadLine2, color=color.orange, title="Leading Span B")
plot(leadLine1 > leadLine2 ? leadLine1 : leadLine2, color=color.green, title="Kumo Cloud Upper Line")
plot(leadLine1 < leadLine2 ? leadLine1 : leadLine2, color=color.red, title="Kumo Cloud Lower Line")

// ATR for stop loss and take profit
atrValue = ta.atr(atrLength)
stopLoss = atrValue * 2
takeProfit = atrValue * 4

// Strategy entry and exit conditions
longCondition = ta.crossover(close, leadLine1) and close > leadLine2
shortCondition = ta.crossunder(close, leadLine1) and close < leadLine2

// Plot buy and sell signals
plotshape(series=longCondition ? leadLine1 : na, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=shortCondition ? leadLine1 : na, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)

// Execute strategy orders with stop loss and take profit
strategy.entry("Buy", strategy.long, when=longCondition)
strategy.close("Buy", when=shortCondition) // Close buy position when sell condition is met
strategy.entry("Sell", strategy.short, when=shortCondition)
strategy.close("Sell", when=longCondition) // Close sell position when buy condition is met

// Trailing stop
strategy.cancel("Trailing Stop")
var float trailingStopPrice = na
if (longCondition)
    trailingStopPrice := math.max(trailingStopPrice, close - atrValue * 2)
    strategy.exit("Trailing Stop", from_entry="Buy", trail_offset=atrValue * 2, trail_price=trailingStopPrice)
else if (shortCondition)
    trailingStopPrice := math.min(trailingStopPrice, close + atrValue * 2)
    strategy.exit("Trailing Stop", from_entry="Sell", trail_offset=atrValue * 2, trail_price=trailingStopPrice)