Estrategia de media móvil exponencial doble de Williams y Kinko Hyo de Ichimoku


Fecha de creación: 2024-02-18 16:20:12 Última modificación: 2024-02-18 16:20:12
Copiar: 1 Número de Visitas: 559
1
Seguir
1617
Seguidores

Estrategia de media móvil exponencial doble de Williams y Kinko Hyo de Ichimoku

Descripción general

La estrategia combina el William BSI Moving Average y el gráfico de equilibrio de primera mano, dos indicadores técnicos, para aprovechar sus respectivas ventajas y mejorar la precisión de las decisiones de negociación. Entre ellos, el William BSI Moving Average refleja plenamente la tendencia de los cambios en los precios, mientras que el gráfico de equilibrio de primera mano permite determinar la reversión de la tendencia con anticipación.

El principio

Las medias móviles binarias de William contienen líneas rápidas y lentas. La fórmula de cálculo de la línea rápida es: 2 (n/2 promedios móviles ponderados) y la fórmula de cálculo de la línea lenta es: n promedios móviles ponderados. Cuando la línea rápida rompe la línea lenta desde la dirección inferior, es una señal de compra; cuando cae desde la dirección superior, es una señal de venta.

El gráfico de equilibrio a primera vista contiene los cuatro componentes de la línea de cambio de mano, la línea de referencia, la línea de vanguardia y la gráfica de la nube. De ellos, el cruce de oro de la línea de cambio de mano y la línea de referencia es una señal de compra, el cruce de muerte es una señal de venta.

La estrategia combina las ventajas de dos indicadores, el primero es que se determina que el indicador de William emite una señal, y el segundo es que se determina que el indicador de la carta de equilibrio es una confirmación, que puede filtrar efectivamente las señales falsas y mejorar la precisión de la decisión.

Las ventajas

  1. Las medias móviles binarias de William son sensibles y pueden determinar la dirección de una tendencia más fuerte.
  2. El equilibrio de la primera vista es el indicador de la tendencia anterior, que permite anticipar la inversión de la tendencia.
  3. La combinación de estos dos indicadores, que se verifican entre sí, reduce las señales falsas.
  4. Se puede adaptar a diferentes ciclos y variedades a través de la optimización de parámetros.

Riesgo y optimización

  1. Se pueden generar señales frecuentes en mercados no en tendencia. Se pueden ajustar adecuadamente los parámetros y filtrar algunas señales.
  2. En el cruce de líneas rápidas y lentas, hay un cierto retraso. Se puede combinar con el mapa de la nube para evitar perder los mejores puntos de compra y venta.
  3. Se recomienda su uso en combinación con un indicador de tendencia o un indicador de fluctuación para evitar aún más las señales falsas.

Resumir

Esta estrategia aprovecha al máximo las ventajas de los indicadores William para determinar la dirección de la tendencia y de la visión anticipada de la cartografía de equilibrio, lo que puede mejorar significativamente la precisión de las decisiones comerciales. Mediante el ajuste de parámetros y la combinación de otros indicadores, la estrategia de optimización sostenible se adapta mejor a los cambios en el mercado.

Código Fuente de la Estrategia
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3

strategy("Hull MA-X + Ichimoku Kinko Hyo", shorttitle="Hi", overlay=true, default_qty_type=strategy.percent_of_equity, max_bars_back=1000, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0)

keh=input(title="Double HullMA",defval=12, minval=1)
n2ma=2*wma(close,round(keh/2))
nma=wma(close,keh)
diff=n2ma-nma
sqn=round(sqrt(keh))
n2ma1=2*wma(close[1],round(keh/2))
nma1=wma(close[1],keh)
diff1=n2ma1-nma1
sqn1=round(sqrt(keh))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
b=n1>n2?lime:red
c=n1>n2?green:red
d=n1>n2?red:green

TenkanSenPeriods = input(9, minval=1, title="Tenkan Sen Periods")
KijunSenPeriods = input(24, minval=1, title="Kijun Sen Periods")
SenkouSpanBPeriods = input(51, minval=1, title="Senkou Span B Periods")
displacement = input(24, minval=1, title="Displacement")
donchian(len) => avg(lowest(len), highest(len))
TenkanSen = donchian(TenkanSenPeriods)
KijunSen = donchian(KijunSenPeriods)
SenkouSpanA = avg(TenkanSen, KijunSen)
SenkouSpanB = donchian(SenkouSpanBPeriods)
SenkouSpanH = max(SenkouSpanA[displacement - 1], SenkouSpanB[displacement - 1])
SenkouSpanL = min(SenkouSpanA[displacement - 1], SenkouSpanB[displacement - 1])
ChikouSpan = close[displacement-1]

Hullfast=plot(n1,color=c)
Hullslow=plot(n2,color=c)
plot(cross(n1, n2) ? n1:na, style = circles, color=b, linewidth = 4)
plot(cross(n1, n2) ? n1:na, style = line, color=d, linewidth = 3)
plot(TenkanSen, color=blue, title="Tenkan Sen", linewidth = 2)
plot(KijunSen, color=maroon, title="Kijun Sen", linewidth = 3)
plot(close, offset = -displacement, color=orange, title="Chikou Span", linewidth = 2)
sa=plot (SenkouSpanA, offset = displacement, color=green,  title="Senkou Span A", linewidth = 2)
sb=plot (SenkouSpanB, offset = displacement, color=red,  title="Senkou Span B", linewidth = 3)
fill(sa, sb, color = SenkouSpanA > SenkouSpanB ? green : red)

longCondition = n1>n2 and close>n2 and close>ChikouSpan and close>SenkouSpanH and (TenkanSen>KijunSen or close>KijunSen)
if (longCondition)
    strategy.entry("Long",strategy.long)

shortCondition = n1<n2 and close<n2 and close<ChikouSpan and close<SenkouSpanL and (TenkanSen<KijunSen or close<KijunSen)
if (shortCondition)
    strategy.entry("Short",strategy.short)

closelong = n1<n2 and close<n2 and (TenkanSen<KijunSen or close<TenkanSen or close<KijunSen or close<SenkouSpanL)
if (closelong)
    strategy.close("Long")

closeshort = n1>n2 and close>n2 and (TenkanSen>KijunSen or close>TenkanSen or close>KijunSen or close>SenkouSpanH)
if (closeshort)
    strategy.close("Short")