
Esta es una estrategia que combina el RSI aleatorio, el EMA cruzado y el VMACD para identificar los puntos de inflexión del mercado, que funcionan mejor cuando la tendencia bajista está a punto de invertirse.
La estrategia se basa en una combinación de los siguientes indicadores:
Se produce una señal de compra cuando el RSI aleatorio rebota desde la zona de sobreventa y atraviesa la línea lenta en la línea rápida de EM, mientras que el VMACD también comienza a subir. Además, se produce una compra como señal auxiliar si el precio a corto plazo rompe el SMA de 10 ciclos (la media móvil simple).
La estrategia sigue en tiempo real los cambios en estos indicadores y calcula el SMA, el EMA, etc. Después de un cierto tiempo. Cuando se activa la condición de compra, se abre una posición de compra con un número fijo de contratos.
La estrategia combina varios indicadores para identificar las oportunidades de reversión del mercado. Las principales ventajas son:
En resumen, esta estrategia puede ser eficaz para capturar señales de reversión y construir posiciones de más de un lado después de una caída a un cierto nivel, lo que genera un beneficio.
A pesar de las ventajas de esta estrategia, existen algunos riesgos a tener en cuenta, principalmente:
En relación con estos riesgos, se puede optimizar aún más:
La estrategia se puede optimizar aún más en las siguientes direcciones:
La estrategia de búsqueda de ondas de la fusión de VRSI-EMA y VMACD es, en general, una buena estrategia para identificar oportunidades de reversión de la caída. Combina varios indicadores para formar una señal de compra y puede determinar eficazmente el momento de la reversión.
/*backtest
start: 2022-11-14 00:00:00
end: 2023-11-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("Wavefinder+", overlay=true)
length = input(20)
confirmBars = input(2)
price = close
slow = input(12, "Short period")
fast = input(26, "Long period")
signal = input(9, "Smoothing period")
maFast = ema( volume * close, fast ) / ema( volume, fast )
maSlow = ema( volume * close, slow ) / ema( volume, slow )
da = maSlow - maFast
maSignal = ema( da, signal )
dm=da-maSignal
source = close
lengthRSI = input(14, minval=8), lengthStoch = input(14, minval=5)
smoothK = input(3,minval=3), smoothD = input(3,minval=3)
OverSold = input(25), OverBought = input(75)
rsi1 = rsi(source, lengthRSI)
rsi2= rsi(low, 20)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)
k1= sma(stoch(rsi2, rsi2, rsi2, lengthStoch), smoothK)
d1= sma(k1, smoothD)
delta=k-d1
ma = ema(low, length)
ema5= ema(price,20)
sma= sma(price,10)
bcond = price < ma
lcond = price> ema5
bcount = 0
lcount= 0
bcount := bcond ? nz(bcount[1]) + 1 : 0
lcount := lcond ? nz(lcount[1]) + 1 : 0
if (lcount>1 and change(k)>3 and k>d and k<55 and rising(dm,1)) or ( k[1]-k[2]<-2 and k-k[1]>5 and k>35 and k<80) or (ma-sma>0.05*sma and rising(sma,3) and rising(dm,2))
strategy.entry("Long", strategy.long, qty=10000/close)
if (bcount == confirmBars)
strategy.close("Long")
if close<0.99*sma
strategy.close("Long")
plot(0.99*sma)
plot(ma)
//hline(OverSold,color=blue)
//hline(OverBought,color=blue)
//plot(d, color=red)
//plot(k, color=green,title="k-line")
//(close-close[3]<-0.05*close[3]) or (close-close[2]<-0.05*close[2]) or (close-close[2]<-0.05*close[2]) or (close-close[4]<-0.05*close[4]) or
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)