
यह एक मात्रात्मक ट्रेडिंग रणनीति है जो मार्कटटेक्निक (एमटी) विश्लेषण पद्धति पर आधारित है जिसका व्यापक रूप से जर्मन वित्तीय संस्थानों द्वारा उपयोग किया जाता है। यह रणनीति कई आयामों को जोड़ती है जैसे कि मूविंग एवरेज (एसएमए) ट्रेंड ट्रैकिंग, समर्थन और प्रतिरोध स्तर की पहचान, रिवर्सल के-लाइन पैटर्न विश्लेषण, और पिरामिड-शैली की स्थिति जोड़ना ताकि सख्त जोखिम नियंत्रण के माध्यम से मजबूत ट्रेडिंग हासिल की जा सके। रणनीति का मूल बहुआयामी संकेतों के व्यापक निर्णय के माध्यम से बाजार के रुझान की दिशा निर्धारित करना और रुझान बनने पर पिरामिड शैली की स्थिति के माध्यम से मुनाफे का विस्तार करना है।
यह रणनीति एक ट्रेडिंग प्रणाली बनाने के लिए निम्नलिखित प्रमुख घटकों का उपयोग करती है:
यह रणनीति बहुआयामी संकेत विश्लेषण और सख्त जोखिम नियंत्रण के माध्यम से एक संपूर्ण व्यापार प्रणाली का निर्माण करती है। इस रणनीति के मुख्य लाभ संकेतों की विश्वसनीयता और जोखिमों की नियंत्रणीयता में निहित हैं, लेकिन विभिन्न बाजार परिवेशों के लिए पैरामीटर अनुकूलन अभी भी आवश्यक है। अनुशंसित अनुकूलन निर्देशों के माध्यम से, रणनीति की स्थिरता और लाभप्रदता में और सुधार होने की उम्मीद है। यह रणनीति स्पष्ट रुझान वाले बाजारों में उपयोग के लिए उपयुक्त है और स्थिर रिटर्न चाहने वाले व्यापारियों के लिए विचार करने योग्य विकल्प है।
/*backtest
start: 2025-01-02 00:00:00
end: 2025-01-09 00:00:00
period: 30m
basePeriod: 30m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/
//@version=6
strategy("Markttechnik Strategie mit Pyramiding und Drawdown-Limit", overlay=true, pyramiding=2)
// Eingabewerte
lengthSupport = input.int(3, title="Unterstützungs-/Widerstandsfenster", minval=1)
lengthSMA = input.int(10, title="SMA Länge für Trends", minval=1)
riskRewardRatio = input.float(2.0, title="Risk-Reward-Ratio", minval=0.1, step=0.1)
maxDrawdown = input.float(5.0, title="Maximaler Drawdown (%)", minval=0.1, step=0.1)
// Unterstützungs- und Widerstandszonen berechnen
support = ta.lowest(low, lengthSupport)
resistance = ta.highest(high, lengthSupport)
// Trendindikator (SMA-basierter Trend)
sma = ta.sma(close, lengthSMA)
trendUp = close > sma
trendDown = close < sma
// Umkehrstäbe erkennen
isHammer = close > open and (low < open) and ((open - low) > 2 * (close - open))
isShootingStar = open > close and (high > open) and ((high - open) > 2 * (open - close))
// Kauf- und Verkaufssignale
buySignal = isHammer and close > support and trendUp
sellSignal = isShootingStar and close < resistance and trendDown
// Strategiefunktionen: Pyramiding und Drawdown
equityPeak = na(strategy.equity[1]) or strategy.equity > strategy.equity[1] ? strategy.equity : strategy.equity[1] // Höchster Kontostand
drawdown = equityPeak > 0 ? (strategy.equity - equityPeak) / equityPeak * 100 : 0 // Drawdown in Prozent
if buySignal and drawdown > -maxDrawdown
strategy.entry("Buy", strategy.long)
strategy.exit("Sell", "Buy", stop=low - (high - low) * riskRewardRatio, limit=close + (close - low) * riskRewardRatio)
if sellSignal and drawdown > -maxDrawdown
strategy.entry("Sell", strategy.short)
strategy.exit("Cover", "Sell", stop=high + (high - low) * riskRewardRatio, limit=close - (high - close) * riskRewardRatio)
// Unterstützungs- und Widerstandslinien zeichnen
plot(support, color=color.new(color.green, 80), linewidth=1, title="Unterstützungszone")
plot(resistance, color=color.new(color.red, 80), linewidth=1, title="Widerstandszone")
// Trendlinie (SMA)
plot(sma, color=color.blue, linewidth=2, title="SMA-Trend")
// Umkehrstäbe hervorheben
bgcolor(buySignal ? color.new(color.green, 90) : na, title="Kaufsignal Hintergrund")
bgcolor(sellSignal ? color.new(color.red, 90) : na, title="Verkaufssignal Hintergrund")
// Debugging: Drawdown anzeigen
plot(drawdown, title="Drawdown (%)", color=color.purple, linewidth=2, style=plot.style_line)