
यह रणनीति एक मात्रात्मक ट्रेडिंग प्रणाली है जिसमें Z-स्कोर, अपेक्षाकृत मजबूत संकेतकों (RSI) और सुपरट्रेंड (Supertrend) संकेतक शामिल हैं। यह रणनीति कीमतों के सांख्यिकीय विचलन की निगरानी करके, गतिशीलता संकेतकों और प्रवृत्ति की पुष्टि के साथ, बाजार में उच्च संभावना वाले अवसरों की तलाश करती है। यह रणनीति न केवल बाजार में ओवरबॉय और ओवरसेल अवसरों को पकड़ने में सक्षम है, बल्कि यह प्रवृत्ति की पहचान के माध्यम से झूठे संकेतों को फ़िल्टर करने के लिए भी सक्षम है।
रणनीति का मुख्य तर्क तीन प्रमुख तकनीकी संकेतकों के समन्वय पर आधारित हैः पहला, कीमतों के लिए एक Z स्कोर की गणना करके कि वर्तमान कीमतें ऐतिहासिक औसत से कितनी दूर हैं, जिसमें 75 चक्रों के लिए एक चलती औसत और मानक अंतर का उपयोग किया गया है। जब Z स्कोर 1.1 से अधिक या -1.1 से कम होता है, तो यह दर्शाता है कि कीमतों में एक महत्वपूर्ण सांख्यिकीय विचलन है। दूसरा, आरएसआई को एक गतिशीलता के रूप में पेश करना, जो स्थिति खोलने पर आरएसआई को दिशा-निर्देशित करने की आवश्यकता की पुष्टि करता है (बहुमुखी समय पर आरएसआई> 60, खाली समय पर आरएसआई <40) । अंत में, एक सुपरट्रेंडिंग सूचक का उपयोग एक प्रवृत्ति फ़िल्टर के रूप में किया जाता है, जो 11 चक्रों के एटीआर और 2.0 के गुणक पर आधारित है। यह रणनीति केवल तभी ट्रेडिंग सिग्नल देती है जब तीनों शर्तें एक साथ पूरी होती हैं।
यह एक मात्रात्मक ट्रेडिंग रणनीति है जिसमें सांख्यिकीय विधियों और तकनीकी विश्लेषण का संयोजन किया गया है, ताकि कई संकेतों की पुष्टि के माध्यम से ट्रेडिंग की विश्वसनीयता में सुधार किया जा सके। रणनीति का मुख्य लाभ इसके उद्देश्यपूर्ण गणितीय मॉडल और परिष्कृत जोखिम नियंत्रण तंत्र में है, लेकिन साथ ही साथ पैरामीटर अनुकूलन और बाजार अनुकूलता के मुद्दों पर ध्यान देने की आवश्यकता है। अनुशंसित अनुकूलन दिशा के माध्यम से, रणनीति में और भी उन्नति की जगह है, विशेष रूप से बाजार की स्थिति और जोखिम नियंत्रण के लिए गतिशील रूप से अनुकूलन के लिए। यह रणनीति बड़े अस्थिर और स्पष्ट रुझान वाले बाजारों में उपयोग के लिए उपयुक्त है।
/*backtest
start: 2024-01-01 00:00:00
end: 2024-11-26 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Z-Score Long and Short Strategy with Supertrend", overlay=true)
// Inputs for Z-Score
len = input.int(75, "Z-Score Lookback Length")
z_long_threshold = 1.1 // Threshold for Z-Score to open long
z_short_threshold = -1.1 // Threshold for Z-Score to open short
// Z-Score Calculation
z = (close - ta.sma(close, len)) / ta.stdev(close, len)
// Calculate Driver RSI
driver_rsi_length = input.int(14, "Driver RSI Length") // Input for RSI Length
driver_rsi = ta.rsi(close, driver_rsi_length) // Calculate the RSI
// Supertrend Parameters
atrPeriod = input.int(11, "ATR Length", minval=1)
factor = input.float(2.0, "Factor", minval=0.01, step=0.01)
// Supertrend Calculation
[supertrend, direction] = ta.supertrend(factor, atrPeriod)
// Conditions for Long and Short based on Z-Score
z_exceeds_long = z >= z_long_threshold and driver_rsi > 60
z_exceeds_short = z <= z_short_threshold and driver_rsi < 40
// Entry Conditions
if (z_exceeds_long and direction < 0) // Enter Long if Z-Score exceeds threshold and Supertrend is down
strategy.entry("Long", strategy.long)
label.new(bar_index, low, text="Open Long", style=label.style_label_up, color=color.green, textcolor=color.white, size=size.small)
alert("Open Long", alert.freq_once_per_bar) // Alert for Long entry
if (z_exceeds_short and direction > 0) // Enter Short if Z-Score exceeds threshold and Supertrend is up
strategy.entry("Short", strategy.short)
label.new(bar_index, high, text="Open Short", style=label.style_label_down, color=color.red, textcolor=color.white, size=size.small)
alert("Open Short", alert.freq_once_per_bar) // Alert for Short entry
// Plot Supertrend
upTrend = plot(direction < 0 ? supertrend : na, "Up Trend", color=color.green, style=plot.style_linebr)
downTrend = plot(direction > 0 ? supertrend : na, "Down Trend", color=color.red, style=plot.style_linebr)
fill(upTrend, downTrend, color=color.new(color.green, 90), fillgaps=false)
// Alert conditions for Supertrend changes (optional)
alertcondition(direction[1] > direction, title='Downtrend to Uptrend', message='The Supertrend value switched from Downtrend to Uptrend')
alertcondition(direction[1] < direction, title='Uptrend to Downtrend', message='The Supertrend value switched from Uptrend to Downtrend')