Estrategia de indicadores de combinación de doble estocástica y media móvil ponderada por volumen

El autor:¿ Qué pasa?, Fecha: 2023-10-26 17:18:53
Las etiquetas:

img

Resumen general

Esta es una estrategia que utiliza una combinación de indicadores estocásticos duales y promedio móvil ponderado por volumen para identificar tendencias.

Estrategia lógica

La estrategia aplica principalmente la identificación de tendencias a través de las siguientes partes:

  1. Calcular un indicador estocástico a corto plazo con entrada de longitud del período ((30) y parámetro suave 2

  2. Calcular un indicador estocástico de largo período con entrada de longitud del período ((90) y parámetro suave 2

  3. Agregue los estocásticos de corto y largo plazo para obtener una curva estocástica combinada

  4. Calcular una media móvil ponderada por volumen de la curva ts con la entrada de longitud del período ((30)

  5. Comparar el valor actual del TSI con su valor de hace 1 período, cuando el TSI sube, indica una tendencia alcista, cuando el TSI cae, indica una tendencia bajista

  6. Combinar con la posición de la curva estocástica para identificar señales alcistas o bajistas

  • Cuando el TSL sube y el TS está en la zona media, es una señal alcista
  • Cuando el TSL cae y el TS está en la zona media, es una señal bajista.

Análisis de ventajas

La estrategia combina la identificación de tendencias y el análisis de sobrecompra-sobreventa, lo que permite identificar con bastante fiabilidad la dirección de la tendencia.

  1. El doble Estocástico puede reflejar situaciones de sobrecompra/sobreventa a corto y a largo plazo, evitando perder algunas señales

  2. La media móvil ponderada por volumen puede filtrar algunas señales falsas de ruptura

  3. La posición de la curva estocástica confirma la fiabilidad de las señales de tendencia

  4. Los parámetros ajustables se adaptan a diferentes mercados

  5. Lógica clara y sencilla, fácil de entender y modificar

Riesgos y mejoras

También hay algunos riesgos a tener en cuenta para esta estrategia:

  1. Los estocásticos pueden dar señales falsas, es necesario filtrar con indicadores de período más largo

  2. Los períodos fijos pueden no ser adecuados para todos los mercados, la optimización dinámica podría ayudar

  3. Basados en indicadores puramente técnicos, los fundamentos pueden mejorar la precisión

  4. Datos de volumen inexactos afectan a los resultados, es necesario verificar la calidad de los datos

  5. Historial insuficiente de pruebas previas, se necesitan más datos para la validación

  6. Los puntos de entrada pueden ser mejorados, en lugar de largo directo en cruces bajo más bajo

Conclusión

En resumen, esta estrategia identifica tendencias utilizando estocásticos duales y VWMA, que pueden identificar con fiabilidad inversiones de tendencia en teoría. Pero se necesita ajuste de parámetros para mercados específicos, y existe el riesgo de señales falsas. Se recomienda combinar otros factores como fundamentos, tendencias a largo plazo, etc. para el juicio, para mejorar la estrategia Profit Factor.


/*backtest
start: 2022-10-19 00:00:00
end: 2023-10-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="Trend Finder V2", shorttitle="TFV2", format=format.price, precision=2, overlay = true)

//----------Indicator------------//

periodK = input(30)
periodD = 3
smoothK = 2

periodK_two = input(90)
periodD_two = 3
smoothK_two = 2

k = sma(stoch(close, high, low, periodK), smoothK)
d = sma(k, periodD)

k_two = sma(stoch(close, high, low, periodK_two), smoothK_two)
d_two = sma(k, periodD_two)

ts = k + k_two
tsl = vwma(ts, input(30, title = "VWMA Length"))

//--------Label parameter--------// 

up_label = tsl[1] < 100 and tsl > 100 ? 1 : 0
down_label = tsl[1] > 100 and tsl < 100 ? 1 : 0

//----------Color Code-----------//

//tsl_col = tsl > 100 and tsl > tsl[1] ? color.aqua : tsl > 100 and tsl < tsl[1] ? color.green : tsl < 100 and tsl > tsl[1] ? color.maroon : tsl < 100 and tsl < tsl[1] ? color.red : color.silver

//tsl_col = tsl > 100 and ts < 100 and ts > ts[1] ? color.aqua : tsl > 100 and ts > 100 and (ts > ts[1] or ts < ts[1]) ? color.green : tsl < 100 and ts > 100 and ts < ts[1] ? color.red : tsl < 100 and ts < 100 and (ts < ts[1] or ts > ts[1]) ? color.maroon : color.purple  

tsl_col = ts > ts[1] and tsl > tsl[1] ? color.lime : ts < ts[1] and tsl < tsl[1] ? color.red : color.yellow 

ts_col = (tsl_col == color.lime or tsl_col == color.maroon) and (k>k[1] and k < 30) ? color.lime :  (tsl_col == color.green or tsl_col == color.red) and (k < k[1] and k > 70)  ? color.red : color.silver

//-------------Plots-------------//

buy = tsl_col[1] == color.yellow and tsl_col == color.lime ? 1 : 0
sell = tsl_col[1] == color.yellow and tsl_col == color.red ? -1 : 0

plotcandle(open,high,low,close, color=tsl_col)

strategy.entry("Long", strategy.long,when=buy==1)
strategy.close("Long", when=sell==-1)


Más.