
Esta estrategia calcula la línea de Heikin-Ashi, suaviza el precio de la línea K, y en combinación con el indicador MACD emite una señal de negociación para lograr una estrategia de negociación cuantitativa que siga la tendencia de la línea media y larga.
Calcula el precio de apertura y cierre de Heikin-Ashi, el precio más alto y el precio más bajo, traza la línea de Heikin-Ashi y suaviza el movimiento de los precios en la línea K.
Configure los parámetros MACD: longitud de línea rápida 12, longitud de línea lenta 26, longitud de línea de señal 9.
Calcular las diferencias entre la línea lenta de la DEA, la línea rápida de la DEA y el MACD. Dibujar un gráfico de columnas de la MACD.
Hacer más cuando el MACD está encima de 0, hacer vacío cuando el MACD está debajo de 0.
Establece filtros de año, mes y día para operar solo en el período de tiempo especificado.
El filtro Heikin-Ashi es eficaz para filtrar el ruido del mercado e identificar tendencias.
El MACD ofrece puntos de venta y compra de tendencias más claros.
La combinación de Heikin-Ashi y MACD puede mejorar la calidad de los puntos de compra y venta y aumentar la rentabilidad de las operaciones.
Configuración de condiciones de filtro de tiempo para determinar el mejor momento de negociación en función de la retroalimentación de datos históricos y aumentar la rentabilidad.
Si la tendencia se invierte, puede haber grandes pérdidas.
Los parámetros del MACD están mal configurados y pueden generar demasiadas señales no válidas.
El filtro de tiempo es demasiado rígido y puede perder mejores oportunidades de negocio.
Respuesta:
Establezca un parador de pérdidas para controlar las pérdidas únicas.
Optimización de los parámetros MACD para determinar la mejor combinación de parámetros.
En combinación con otros indicadores, las tendencias locales se juzgan.
Prueba diferentes combinaciones de parámetros para encontrar el mejor.
Mecanismos adicionales para detener los pérdidas, como dejar un alto / rastrear el alto.
El punto de inflexión fue el resultado de la combinación de los indicadores EMA, KDJ y otros.
Añadir indicadores de energía y evitar la divergencia de energía.
La estrategia calcula el precio de la línea de nivelación Heikin-Ashi, junto con el indicador MACD Tradingview para determinar la dirección de la tendencia y el punto de entrada. La estrategia permite una estrategia cuantitativa basada en el seguimiento de la tendencia. En comparación con la estrategia MACD común, se suaviza la curva de precios, se filtra parte del ruido y se puede determinar la dirección de la tendencia con mayor claridad.
/*backtest
start: 2023-11-18 00:00:00
end: 2023-12-18 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("MACD ASHI BARS .v1 ", overlay=false,default_qty_type = strategy.percent_of_equity, default_qty_value = 100,commission_type=strategy.commission.percent,commission_value=0.1,slippage=1)
// Calculation HA Values
haopen = 0.0
haclose = (open + high + low + close) / 4
haopen := na(haopen[1]) ? (open + close) / 2 : (haopen[1] + haclose[1]) / 2
hahigh = max(high, max(haopen, haclose))
halow = min(low, min(haopen, haclose))
// HA colors
hacolor = haclose > haopen ? color.green : color.red
src=haclose
fastmacd = input(12,title='MACD Fast Line Length')
slowmacd = input(26,title='MACD Slow Line Length')
signalmacd = input(9,title='Signal Line Length')
macdslowline1 = sma(src,slowmacd)
macdslowline2 = sma(macdslowline1,slowmacd)
DEMAslow = ((2 * macdslowline1) - macdslowline2 )
macdfastline1 = sma(src,fastmacd)
macdfastline2 = sma(macdfastline1,fastmacd)
DEMAfast = ((2 * macdfastline1) - macdfastline2)
MACDLine = (DEMAfast - DEMAslow)
SignalLine = sma(MACDLine, signalmacd)
delta = MACDLine-SignalLine
swap1 = delta>0?color.green:color.red
plot(delta,color=swap1,style=plot.style_columns,title='Histo',histbase=0,transp=20)
p1 = plot(MACDLine,color=color.blue,title='MACD Line')
p2 = plot(SignalLine,color=color.red,title='Signal')
fill(p1, p2, color=color.blue)
hline(0)
yearfrom = input(2020)
yearuntil =input(2042)
monthfrom =input(1)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)
if ( crossover(delta,0) and year >= yearfrom and year <= yearuntil and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil)
strategy.entry("MMAL", strategy.long, stop=close, oca_name="TREND", comment="AL")
else
strategy.cancel(id="MMAL")
if ( crossunder(delta,0) and year >= yearfrom and year <= yearuntil and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil )
strategy.entry("MMSAT", strategy.short,stop=close, oca_name="TREND", comment="SAT")
else
strategy.cancel(id="MMSAT")