
इस रणनीति में स्टोचैस्टिक ऑसिलेटर और मूविंग एवरेज को मिलाकर ट्रेडिंग सिग्नल उत्पन्न किया जाता है। ट्रेडिंग सिग्नल के लिए स्टोचैस्टिक ऑसिलेटर के ओवरबॉय और ओवरसोल और मूविंग एवरेज के ट्रेंड को देखना आवश्यक होता है। जब स्टोचैस्टिक ऑसिलेटर ओवरबॉय और मूविंग एवरेज के नीचे होता है, तो एक शून्य सिग्नल उत्पन्न होता है, और जब ओवरसोल और मूविंग एवरेज के ऊपर होता है, तो कई सिग्नल उत्पन्न होते हैं। साथ ही, इस रणनीति में एक स्टोचैस्टिक ऑसिलेटर फ़िल्टर भी शामिल किया गया है, और जब स्टोचैस्टिक ऑसिलेटर के लाइन 50 से नीचे एक निश्चित मात्रा में K लाइन को बनाए रखता है, तो डी लाइन के साथ क्रॉसिंग भी इसी तरह के ट्रेडिंग सिग्नल उत्पन्न कर सकता है।
यादृच्छिक उतार-चढ़ाव के संकेतकों की गणना करें, K लाइन और D लाइन प्राप्त करें। पैरामीटर समायोज्य हैं, जिसमें यादृच्छिक संकेतकों की अवधि, K मान समतल, D मान समतल, ओवरबॉट और ओवरसोल्ड क्षेत्र शामिल हैं।
चलती औसत की गणना करें, डिफ़ॉल्ट रूप से समापन मूल्य का उपयोग करें, आवधिक समायोज्य।
गणना यादृच्छिक संकेतक फिल्टर. जब K लाइन 50 से नीचे एक निश्चित K लाइन बनाए रखने के बाद, एक फिल्टर सिग्नल उत्पन्न.
एक बहु-उपयोगी संकेत के लिए शर्तेंः एक यादृच्छिक संकेतक ओवरसेलिंग क्षेत्र में ऊपर की ओर या एक यादृच्छिक संकेतक फ़िल्टर सिग्नल और एक चलती औसत ऊपर की ओर।
खाली सिर सिग्नल उत्पन्न करने के लिए शर्तेंः एक यादृच्छिक संकेतक ओवरबॉय क्षेत्र में क्रॉस डाउन या एक यादृच्छिक संकेतक फ़िल्टर सिग्नल और एक चलती औसत डाउन।
मल्टी हेड प्वाइजिंग शर्तें: यादृच्छिक K लाइन पर चलती औसत को पार करना और औसत रेखा को नीचे की ओर मोड़ना
शून्य-सीमा स्थितियां: यादृच्छिक K रेखा के नीचे चलती औसत के माध्यम से और औसत ऊपर की ओर मुड़ता है
पोजीशन मैनेजमेंट में फिक्स्ड फंड का उपयोग किया जाता है, डिफ़ॉल्ट 10%। साथ ही स्टॉप लॉस सेट किया जाता है, डिफ़ॉल्ट 2%।
ओवरबॉय और ओवरसोल और ट्रेंड के साथ मिलकर, आप ट्रेंड में गिरावट को रोक सकते हैं।
यादृच्छिक संकेतक फ़िल्टर अक्सर उतार-चढ़ाव की स्थिति में व्यापार से बचने के लिए।
स्टॉप-लॉस सेटिंग्स रिट्रीट को नियंत्रित करने में मदद करती हैं।
कोड संरचना स्पष्ट है, और पैरामीटर आगे अनुकूलन के लिए अनुकूलन योग्य हैं.
यादृच्छिक सूचकांक में एक प्रकार का अंतराल होता है, जो कि बेहतरीन खरीद-बिक्री बिंदुओं को याद कर सकता है।
रुझान मोड़ बिंदुओं पर खराब सटीकता के साथ, स्टॉप लॉस की उच्च आवृत्ति हो सकती है।
फिक्स्ड अनुपात निधि प्रबंधन लगातार घाटे के मामले में वापस ले लिया गया है।
अधिक फ़िल्टरिंग, जैसे कि मूल्य व्यवहार और अन्य सहायक संकेतक, सिग्नल की सटीकता में सुधार करते हैं।
संकेतों को मजबूत और कमजोर में विभाजित करें, जब मजबूत संकेत दिखाई देते हैं तो स्थिति बढ़ाएं।
इस प्रकार, हम ट्रेंड टर्निंग प्वाइंट के बारे में अपने फैसले को अनुकूलित कर सकते हैं ताकि हम अधिक जानकारी प्राप्त कर सकें।
स्थिति प्रबंधन को अनुकूलित करने के लिए, स्थिति समायोजन के मुकाबले अस्थिर लाभ और हानि आदि पर विचार किया जा सकता है।
विभिन्न मापदंडों के संयोजनों को आज़माएं और सबसे अच्छा खोजें।
इस रणनीति के आधार पर यादृच्छिक उतार-चढ़ाव के संकेतक के साथ संयोजन में चलती औसत के लिए प्रवृत्ति का न्याय, जबकि रैंडम संकेतक ही फ़िल्टर का उपयोग करें, एक अपेक्षाकृत विश्वसनीय व्यापार संकेत उत्पन्न. रणनीति की समग्र विचार स्पष्ट है, प्रवृत्ति की स्थिति में उपयोग करने के लिए उपयुक्त है. लेकिन क्योंकि यादृच्छिक संकेतक lags की उपस्थिति, प्रदर्शन में खराब प्रदर्शन कर सकते हैं, समग्र अनुकूलता और कठोरता आगे की जांच के बाद है.
/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Pablo_2uc
//@version=5
strategy("Estrategia Estocástico + MA con Stop Loss y Filtro Estocástico", overlay=true)
// Parámetros del Estocástico
length = input.int(14, title="Longitud Estocástico")
smoothK = input.int(3, title="Suavizado K")
smoothD = input.int(3, title="Suavizado D")
oversold = input.int(20, title="Sobreventa")
overbought = input.int(80, title="Sobrecompra")
// Parámetros de la Media Móvil
maLength = input.int(9, title="Longitud MA")
maSource = input(close, title="Fuente MA")
// Capital inicial
capital = 5000
// Tamaño de posición (10% del capital)
positionSize = capital * 0.10
// Stop Loss (2% del precio de entrada)
stopLossPercent = input.int(2, title="Stop Loss (%)") / 100
// Número de ruedas para el filtro estocástico
filterPeriods = input.int(12, title="Ruedas de Filtro Estocástico")
// Cálculo del Estocástico
k = ta.sma(ta.stoch(close, high, low, length), smoothK)
d = ta.sma(k, smoothD)
// Cálculo de la Media Móvil
ma = ta.sma(maSource, maLength)
// Filtro estocástico
stochasticFilter = ta.sma(k > 50 ? 1 : 0, filterPeriods)
// Condiciones de entrada en largo y corto
longCondition = (ta.crossunder(k, oversold) or ta.crossover(stochasticFilter, 1)) and ma > ma[1]
shortCondition = (ta.crossover(k, overbought) or ta.crossover(stochasticFilter, 1)) and ma < ma[1]
// Condiciones de salida
exitLongCondition = ta.crossover(k, ma) and ma < ma[1]
exitShortCondition = ta.crossunder(k, ma) and ma > ma[1]
// Estrategia
if (longCondition)
strategy.entry("Long", strategy.long, qty=positionSize)
strategy.exit("Exit Long", "Long", stop=close * (1 - stopLossPercent))
if (shortCondition)
strategy.entry("Short", strategy.short, qty=positionSize)
strategy.exit("Exit Short", "Short", stop=close * (1 + stopLossPercent))
// Cierre de posiciones
if (exitLongCondition)
strategy.close("Long")
if (exitShortCondition)
strategy.close("Short")