Esta es una estrategia de comercio de criptomonedas MACD sencilla pero eficiente diseñada específicamente para los mercados de criptomonedas y adecuada para gráficos de mayor plazo como 1 hora, 4 horas, 1 día, etc. La estrategia utiliza el indicador MACD para determinar la dirección de la tendencia del mercado y las señales comerciales se generan con un promedio móvil simple. La mayor ventaja de esta estrategia es ser simple, eficiente y fácil de entender e implementar, especialmente adecuado para los mercados de criptomonedas altamente volátiles. Sin embargo, también hay algunos riesgos que necesitan una mayor optimización y mejora.
La estrategia utiliza el indicador MACD para determinar la tendencia del mercado y generar señales comerciales. La MACD consiste en la línea rápida, la línea lenta y el histograma MACD. La línea rápida es el promedio móvil a corto plazo y la línea lenta es el promedio móvil a largo plazo. Cuando la línea rápida cruza por encima de la línea lenta, es una señal de compra. Cuando la línea rápida cruza por debajo de la línea lenta, es una señal de venta. El histograma MACD es la diferencia entre la línea rápida y la línea lenta. El histograma positivo significa un mercado alcista con tendencia al alza mientras que el histograma negativo significa un mercado bajista. Esta estrategia utiliza un promedio móvil simple para validar aún más las señales y evitar señales falsas.
Las principales ventajas de esta estrategia sencilla pero eficaz son:
Utilizando el MACD para determinar la dirección del mercado, un indicador técnico maduro y fiable para juzgar con precisión la tendencia;
Combinando una media móvil simple para filtrar señales, evitando señales falsas y mejorando la precisión;
Específicamente diseñado para los mercados de criptomonedas altamente volátiles donde el MACD tiene el mejor rendimiento;
La lógica es simple y clara, fácil de entender e implementar, baja barrera para la adopción;
Pueden ejecutarse en plazos más largos para reducir la frecuencia de las operaciones y reducir los costes de las mismas.
Sin embargo, también existen algunos riesgos de esta estrategia:
El uso de una media móvil simple para filtrar podría perder el mejor precio de entrada en algunas condiciones de mercado;
No haber obtenido beneficios ni haber detenido pérdidas podría dar lugar a una enorme pérdida en una sola operación;
Las posibles señales de retraso y las falsas señales podrían causar pérdidas innecesarias.
No se ha considerado el impacto del marco de tiempo y la frecuencia de las operaciones en la rentabilidad general.
Estos riesgos deben abordarse mediante una mayor optimización.
Basándose en los riesgos mencionados anteriormente, la estrategia puede mejorarse en las siguientes direcciones:
ensayar diferentes combinaciones de parámetros e indicadores para encontrar el ajuste óptimo;
Añadir la lógica de stop loss y de toma de ganancias para limitar la pérdida máxima de una sola operación;
Optimizar la lógica de entrada con una confirmación de señal más estricta para garantizar señales de alta calidad;
Considere el impacto de los diferentes plazos y frecuencias de negociación en la rentabilidad general.
Mediante optimizaciones en estas direcciones, la estabilidad, la rentabilidad y la viabilidad de esta estrategia pueden mejorarse en gran medida.
En resumen, esta es una estrategia de negociación MACD con un gran valor práctico. Es simple, eficiente y fácil de implementar, perfecta para las personas que quieren comenzar con el comercio de algo rápidamente. Al mismo tiempo, hay un amplio margen para nuevas optimizaciones para convertirlo en un algoritmo estable para ganar dinero adecuado para el comercio en vivo a largo plazo.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © SoftKill21 //@version=4 strategy("MACD crypto strategy", overlay=true) // Getting inputs //fast_length = input(title="Fast Length", type=input.integer, defval=12) //slow_length = input(title="Slow Length", type=input.integer, defval=26) //src = input(title="Source", type=input.source, defval=close) //signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9) //sma_source = input(title="Simple MA(Oscillator)", type=input.bool, defval=true) //sma_signal = input(title="Simple MA(Signal Line)", type=input.bool, defval=false) fast_length = 12 slow_length = 26 src = input(title="Source", type=input.source, defval=close) signal_length = 9 sma_source = true sma_signal = false // Calculating fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length) slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length) macd = fast_ma - slow_ma signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length) hist = macd - signal longcondition = hist > 0 shortcondition = hist < 0 //sl = input(0.5, title="SL") //tp = input(0.1, title="tp") strategy.entry("long",1,when=longcondition) strategy.entry("short",0,when=shortcondition) //strategy.exit("x_long", "long" ,loss = close * sl / syminfo.mintick, profit = close * tp / syminfo.mintick , alert_message = "closelong") //strategy.entry("short",0, when= loss = close * sl / syminfo.mintick) //strategy.exit("x_short", "short" , loss = close * sl / syminfo.mintick, profit = close * tp / syminfo.mintick,alert_message = "closeshort") // risk = input(2, type=input.float,title="Risk percentage of BALANCE") // strategy.risk.max_intraday_loss(risk, strategy.percent_of_equity)