
La estrategia es una estrategia conjunta que combina la estrategia de reversión de tendencia y la estrategia de volatilidad estadística para obtener una señal de negociación más fuerte.
La estrategia tiene dos partes:
La estrategia de cambio de tendencia
Estrategias de fluctuación estadística
Finalmente, si las dos señales estratégicas coinciden, es decir, son bajistas o bajistas, se genera una señal de negociación; si no coinciden, no se realiza una negociación.
La estrategia combina dos tipos diferentes de estrategias para mejorar la fiabilidad de la señal.
El análisis de las formas permite capturar con precisión los puntos de inflexión de la tendencia y evitar ser engañados por los cambios bruscos en los precios.
La tasa de volatilidad estadística refleja las fluctuaciones del mercado en los últimos meses y permite filtrar los períodos de mayor volatilidad y oportunidades de negociación.
Las dos estrategias se verifican mutuamente y, en combinación, se utilizan para capturar mejor los puntos de inflexión clave del mercado, lo que genera una señal de negociación más precisa y confiable.
La forma 123 no puede evitar por completo el riesgo de una falsa ruptura. Si se produce una vibración anormal, la señal puede ser mal interpretada.
La tasa de volatilidad estadística solo considera los datos históricos y no puede predecir las tendencias futuras de las fluctuaciones. Si las fluctuaciones del mercado se amplifican o contraen repentinamente, también es fácil generar señales erróneas.
Ambas estrategias dependen de la optimización de los parámetros. Si los parámetros se ajustan incorrectamente, la calidad de la señal se verá muy afectada.
Las estrategias conjuntas pueden mejorar la fiabilidad, pero también pueden perder algunas señales individuales más fuertes.
El sistema de votación se basa en la combinación de más indicadores, como la banda de Brin, KDJ, etc.
Aumentar los algoritmos de aprendizaje automático para evaluar la probabilidad de una reversión de tendencia con más datos históricos.
Configuración de la señal de filtración de los umbrales fuertes y débiles para evitar la interferencia de ruido.
Optimización de la configuración de parámetros, ajuste de parámetros para diferentes variedades y períodos.
Aumentar el mecanismo de suspensión de pérdidas para controlar el riesgo de las estrategias conjuntas.
Esta estrategia mejora la calidad de la señal al aplicar una estrategia de inversión de tendencia y una estrategia de volatilidad estadística, lo que permite dar instrucciones de negociación más precisas en los puntos clave del mercado. Sin embargo, también se debe tener en cuenta el riesgo de error de juicio y la optimización de los parámetros.
/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 31/07/2021
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// This indicator used to calculate the statistical volatility, sometime
// called historical volatility, based on the Extreme Value Method.
// Please use this link to get more information about Volatility.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
SV(Length,TopBand,LowBand) =>
pos = 0.0
xMaxC = highest(close, Length)
xMaxH = highest(high, Length)
xMinC = lowest(close, Length)
xMinL = lowest(low, Length)
SqrTime = sqrt(253 / Length)
Vol = ((0.6 * log(xMaxC / xMinC) * SqrTime) + (0.6 * log(xMaxH / xMinL) * SqrTime)) * 0.5
nRes = iff(Vol < 0, 0, iff(Vol > 2.99, 2.99, Vol))
pos := iff(nRes > TopBand, 1,
iff(nRes < LowBand, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Statistical Volatility", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Statistical Volatility ----")
LengthSV = input(30, minval=1)
TopBand = input(0.005, step=0.001)
LowBand = input(0.0016, step=0.001)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posSV = SV(LengthSV,TopBand,LowBand)
pos = iff(posReversal123 == 1 and posSV == 1 , 1,
iff(posReversal123 == -1 and posSV == -1, -1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1 , 1, pos))
if (possig == 1 )
strategy.entry("Long", strategy.long)
if (possig == -1 )
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )