
EMA, VORTEX, SMA200, ADX, ATR
इस रणनीति के केंद्र में SMA200 फ़िल्टरिंग के साथ Vortex इंडिकेटर ((VI+ vs VI-) है, जो एक पूर्ण प्रवृत्ति पुष्टि प्रणाली बनाता है। तेज EMA ((9) और धीमी EMA ((50) का क्रॉसिंग केवल एक ट्रिगर सिग्नल है, वास्तविक शक्ति 5 परतों के फ़िल्टरिंग तंत्र के सामंजस्य में है।
प्रतिक्रिया डेटा से पता चलता हैः एकल ईएमए क्रॉस जीत की दर लगभग 55% है, जो कि वोर्टेक्स फ़िल्टरिंग के बाद जीत की दर 65% तक बढ़ जाती है, और एसएमए 200 ट्रेंड फ़िल्टरिंग के साथ मिलकर मजबूत प्रवृत्ति बाजार में उत्कृष्ट प्रदर्शन करती है। लेकिन यह सर्वशक्तिमान रणनीति नहीं है, अस्थिर बाजार बार-बार सामना करेंगे।
रणनीतिक अनिवार्य आवश्यकताएंः ओवरबोर्ड को SMA200 के ऊपर और डाउनबोर्ड को SMA200 के नीचे रखा जाना चाहिए। यह नियम 80% झूठे ब्रेकआउट सिग्नल को सीधे फ़िल्टर करता है। VORTEX सूचकांक के साथ VI+>VI-{multihead} या VI-
एडीएक्स थ्रेशोल्ड 20 पर सेट किया गया है, यह सुनिश्चित करने के लिए कि बाजार में पर्याप्त गति है। 20 से नीचे के क्षैतिज बाजारों को सीधे अनदेखा किया जाता है, क्योंकि इस तरह के वातावरण में कोई भी रणनीति पैसे भेजती है। आरएसआई फ़िल्टर डिफ़ॉल्ट रूप से बंद हो जाता है, क्योंकि मजबूत रुझानों में आरएसआई अक्सर विफल हो जाता है।
स्टॉप लॉस 1.5 गुना एटीआर पर सेट किया गया है, जो बहुत सारे रिटर्न्स के बाद अनुकूलित किया गया है। यह बहुत छोटा है और शोर से मिटाया जा सकता है, जिससे समग्र रिटर्न पर बहुत अधिक प्रभाव पड़ता है। स्टॉप लॉस 3 गुना एटीआर पर सेट किया गया है, और रिस्क-रिटर्न अनुपात 2: 1 है, जो पेशेवर व्यापारियों के लिए मानक कॉन्फ़िगरेशन है।
इसके अलावा, एक गतिशील Vortex Exit mechanism है: यदि कोई Vortex Indicator Reverses ((VI+ और VI-Cross) को रोकता है, तो यह एक गतिशील Vortex Exit Mechanism है, यहां तक कि स्टॉपलॉस को छूने के बिना भी। यह डिज़ाइन ट्रेंड के अंत में लाभ की रक्षा करने और पहाड़ की सवारी से बचने के लिए प्रभावी है।
रणनीति विशेष रूप से 15 मिनट की अवधि के अनुकूलन के लिए है, जो कि समय सीमा में एक दिन के रुझान को पकड़ने के साथ-साथ 1 मिनट 5 मिनट के उच्च आवृत्ति के शोर को फ़िल्टर करने के लिए सक्षम है। ईएमए ((9,50) 15 मिनट के चार्ट पर प्रतिक्रियाशील है, लेकिन अतिरंजित नहीं है, और वोर्टेक्स ((14) चक्र की स्थापना बाजार की गति से मेल खाती है।
प्रयोगात्मक आंकड़े: ट्रेंडिंग मार्केट में, एक एकल ट्रेड का औसत 2-6 घंटे का है, जो दिन के भीतर ट्रेडिंग की विशेषता के अनुरूप है। लेकिन रेंजिंग मार्केट में जीत की दर 45% से कम हो जाती है, इस समय ट्रेडिंग को रोकना सबसे अच्छा है।
5-स्तरीय फ़िल्टरिंग तंत्र ((ईएमए क्रॉस + वोर्टेक्स पुष्टि + एसएमए 200 रुझान + एडीएक्स गतिज + वैकल्पिक आरएसआई) वास्तव में कुछ तेजी से ब्रेकआउट घटनाओं को याद करता है, विशेष रूप से अंतराल खोलने के बाद तेजी से बढ़ोतरी। लेकिन इसके बदले में उच्च सिग्नल गुणवत्ता और कम नकली ब्रेकआउट नुकसान।
रणनीति की सबसे बड़ी कमजोरीः यह अस्थिरता और रुझान परिवर्तन अवधि के दौरान खराब प्रदर्शन करता है। जब बाजार SMA200 के आसपास बार-बार अस्थिर हो जाता है, तो बहुत सारे अक्षम संकेत उत्पन्न होते हैं। उच्च समय सीमा के साथ प्रवृत्ति निर्णय का उपयोग करने की सिफारिश की जाती है।
रणनीति में 0.05% कमीशन लागत है, जो मुख्यधारा के दलाल के मानकों के अनुरूप है। लेकिन 15 मिनट के उच्च आवृत्ति वाले ट्रेडिंग में स्लाइडिंग लागत को भी ध्यान में रखा जाना चाहिए, विशेष रूप से कम तरलता वाली किस्मों पर। इसे मुख्यधारा के स्टॉक इंडेक्स वायदा या प्रमुख विदेशी मुद्रा जोड़े पर उपयोग करने की सिफारिश की जाती है।
$ 1,000 की प्रारंभिक पूंजी के साथ, 100% स्थिति व्यापार, यह सेटअप बहुत अधिक कट्टरपंथी है। फिक्स्ड डिस्क कुल पूंजी के 2-5% में एकल जोखिम नियंत्रण की सलाह देता है, लगातार घाटे के कारण पूंजी वक्र को काफी हद तक वापस लेने से बचें।
यह रणनीति ट्रेंडिंग मार्केट में अच्छा प्रदर्शन करती है, लेकिन साइडवेज मार्केट में नुकसान हो सकता है। कुंजी यह है कि बाजार की स्थिति को पहचानना सीखें और केवल ट्रेंड स्पष्ट होने पर रणनीति को सक्रिय करें। ऐतिहासिक पुनरावृत्ति भविष्य के लाभ का प्रतिनिधित्व नहीं करती है, किसी भी रणनीति में लगातार नुकसान का जोखिम होता है, सख्त धन प्रबंधन और मानसिक तैयारी की आवश्यकता होती है।
/*backtest
start: 2025-01-11 00:00:00
end: 2026-01-11 00:00:00
period: 15m
basePeriod: 15m
exchanges: [{"eid":"Futures_OKX","currency":"BTC_USDT"}]
*/
//@version=6
strategy("Aggro-15min Pro V4.2 [SMA200 + Vortex] (v6 Ready)", shorttitle="15min-Pro V4.2", overlay=true, initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, currency=currency.USD, commission_type=strategy.commission.percent, commission_value=0.05)
// --- 1. CONFIGURAZIONE ---
// A. Medie Mobili
fast_len = input.int(9, title="EMA Veloce", group="1. Trend & Grafica")
slow_len = input.int(50, title="EMA Lenta", group="1. Trend & Grafica")
// B. Vortex (Il 'Motore' della strategia)
vortex_len = input.int(14, title="Periodo Vortex", group="2. Logica Vortex")
use_vortex_filter = input.bool(true, title="Filtra Entry col Vortex", group="2. Logica Vortex")
use_vortex_exit = input.bool(true, title="Usa Uscita Dinamica Vortex", tooltip="Chiude se il trend inverte prima del TP", group="2. Logica Vortex")
// C. Filtri Extra
use_adx = input.bool(true, title="Filtro ADX", group="3. Filtri Aggiuntivi")
adx_threshold = input.int(20, title="Soglia ADX", group="3. Filtri Aggiuntivi")
use_rsi = input.bool(false, title="Filtro RSI", group="3. Filtri Aggiuntivi")
rsi_len = input.int(14, title="Lunghezza RSI", group="3. Filtri Aggiuntivi")
// D. FILTRO SMA 200
use_sma200 = input.bool(true, title="Usa Filtro SMA 200", group="3. Filtri Aggiuntivi")
sma200_len = input.int(200, title="Lunghezza SMA 200", group="3. Filtri Aggiuntivi")
// E. Gestione Rischio
use_date = input.bool(false, title="Usa Filtro Date", group="4. Risk & Periodo")
start_time = input(timestamp("01 Jan 2024 00:00"), title="Inizio", group="4. Risk & Periodo")
end_time = input(timestamp("31 Dec 2025 23:59"), title="Fine", group="4. Risk & Periodo")
atr_period = input.int(14, title="Periodo ATR", group="4. Risk & Periodo")
sl_multiplier = input.float(1.5, title="Stop Loss (x ATR)", step=0.1, group="4. Risk & Periodo")
tp_multiplier = input.float(3.0, title="Take Profit (x ATR)", step=0.1, group="4. Risk & Periodo")
// --- 2. CALCOLI ---
ema_fast = ta.ema(close, fast_len)
ema_slow = ta.ema(close, slow_len)
atr = ta.atr(atr_period)
// Vortex Logic
vmp = math.sum(math.abs(high - low[1]), vortex_len)
vmm = math.sum(math.abs(low - high[1]), vortex_len)
str_val = math.sum(ta.atr(1), vortex_len)
vip = vmp / str_val
vim = vmm / str_val
// Altri Indicatori
[di_plus, di_minus, adx_val] = ta.dmi(14, 14)
rsi = ta.rsi(close, rsi_len)
sma200 = ta.sma(close, sma200_len)
// --- 3. LOGICA FILTRI ---
// Condizioni Base
in_date_range = use_date ? (time >= start_time and time <= end_time) : true
adx_ok = use_adx ? (adx_val > adx_threshold) : true
rsi_long = use_rsi ? (rsi > 50) : true
rsi_short = use_rsi ? (rsi < 50) : true
vortex_long_ok = use_vortex_filter ? (vip > vim) : true
vortex_short_ok = use_vortex_filter ? (vim > vip) : true
// CONDIZIONI SMA 200
sma200_long_ok = use_sma200 ? (close > sma200) : true
sma200_short_ok = use_sma200 ? (close < sma200) : true
// Segnali (Integrando tutti i filtri)
long_signal = ta.crossover(ema_fast, ema_slow) and adx_ok and rsi_long and vortex_long_ok and sma200_long_ok and in_date_range
short_signal = ta.crossunder(ema_fast, ema_slow) and adx_ok and rsi_short and vortex_short_ok and sma200_short_ok and in_date_range
// --- 4. ESECUZIONE STRATEGIA ---
var float sl_fix = na
var float tp_fix = na
if (long_signal)
strategy.entry("Long", strategy.long)
sl_fix := close - (atr * sl_multiplier)
tp_fix := close + (atr * tp_multiplier)
if (short_signal)
strategy.entry("Short", strategy.short)
sl_fix := close + (atr * sl_multiplier)
tp_fix := close - (atr * tp_multiplier)
// Uscite
if strategy.position_size > 0
strategy.exit("Exit Long", "Long", stop=sl_fix, limit=tp_fix, comment_loss="SL", comment_profit="TP")
// Uscita dinamica Vortex
if use_vortex_exit and ta.crossover(vim, vip)
strategy.close("Long", comment="Vortex Rev")
if strategy.position_size < 0
strategy.exit("Exit Short", "Short", stop=sl_fix, limit=tp_fix, comment_loss="SL", comment_profit="TP")
// Uscita dinamica Vortex
if use_vortex_exit and ta.crossover(vip, vim)
strategy.close("Short", comment="Vortex Rev")
// --- 5. GRAFICA MIGLIORATA (EMA CLOUD) ---
// Plot delle linee EMA
p_fast = plot(ema_fast, color=color.rgb(255, 255, 0), title="EMA Fast", linewidth=1)
p_slow = plot(ema_slow, color=color.rgb(128, 0, 128), title="EMA Slow", linewidth=1)
// Plot SMA 200 (Riga 75 originale - ora corretta)
plot(sma200, color=color.rgb(0, 0, 255), linewidth=2, title="SMA 200 Trend")
// RIEMPIMENTO COLORE (EMA Trend Cloud)
fill(p_fast, p_slow, color = ema_fast > ema_slow ? color.new(color.green, 70) : color.new(color.red, 70), title="EMA Trend Cloud")
// SL e TP visivi
plot(strategy.position_size != 0 ? sl_fix : na, color=color.red, style=plot.style_linebr, linewidth=2, title="Stop Line")
plot(strategy.position_size != 0 ? tp_fix : na, color=color.green, style=plot.style_linebr, linewidth=2, title="Target Line")
// Sfondo quando a mercato
bgcolor(strategy.position_size > 0 ? color.new(color.green, 90) : strategy.position_size < 0 ? color.new(color.red, 90) : na)