
La estrategia de comercio de punto de cambio de doble línea es una estrategia de comercio basada en el cruce de la línea de equilibrio. Utiliza dos promedios móviles con diferentes parámetros para determinar el momento de entrada y salida en función de su evolución. La estrategia es simple, intuitiva, fácil de implementar y se aplica a la negociación de líneas medianas y largas.
La estrategia utiliza el precio como fuente de entrada de precios y calcula el promedio de dos parámetros diferentes, SMA1 y SMA2 respectivamente. La estrategia utiliza el indicador de ROC para determinar el giro de la línea media. Cuando el valor de ROC de SMA1 supera el umbral positivo establecido, se considera que SMA1 gira hacia arriba y se registra la señal de aumento de SMA1; cuando el valor de ROC de SMA1 cae por debajo del umbral negativo establecido, se considera que SMA1 gira hacia abajo y se registra la señal de descenso de SMA1. La lógica de juicio de SMA2 es similar.
Cuando SMA1 gira hacia arriba y la línea K superior SMA2 gira hacia abajo, produce una señal de compra, hacer más; cuando SMA1 gira hacia abajo y la línea K superior SMA2 gira hacia arriba, produce una señal de venta, hacer vacío.
La estrategia utiliza dos giros de línea de equilibrio para determinar la dirección de la operación, un giro de línea de equilibrio para confirmar el momento de entrada, y un cruce de dos líneas de equilibrio para asegurar que la tendencia de la hora de entrada cambie, lo que puede filtrar eficazmente las brechas falsas.
El uso de doble cruce equilátero y el juicio de giro, puede filtrar eficazmente las brechas falsas y mejorar la precisión de la entrada.
El cambio de la línea media en combinación con el indicador ROC permite determinar con claridad el momento del cambio y evitar el comercio frecuente.
Utilizando líneas medias y largas, se puede seguir la tendencia principal y obtener mayores ganancias de la tendencia.
La lógica de la estrategia es simple, clara y fácil de entender, adecuada para los principiantes en el comercio cuantitativo.
Parámetros personalizables, adaptados a diferentes entornos de mercado, con una mayor adaptabilidad.
El cruce de dos líneas equidistantes puede generar una gran cantidad de falsas señales en situaciones de temblor, lo que puede causar pérdidas.
Los parámetros de ROC necesitan ser optimizados con precisión, de lo contrario, el cambio a la identificación puede tener errores y afectar el rendimiento de la estrategia.
Los grandes ciclos de movimiento de los mercados pueden desencadenar múltiples paros, que se pueden evitar ampliando el alcance de los paros.
En el caso de los medios de comunicación, los medios de comunicación no pueden responder a las emergencias, como las noticias importantes, basándose únicamente en el indicador de la línea media, lo que puede causar pérdidas.
Tenga en cuenta que los parámetros optimizados para el problema de la sobreadaptación, el ciclo de prueba debe ser lo suficientemente largo como para incluir diferentes situaciones.
Optimización de los parámetros de las medias móviles para encontrar la mejor combinación de periodos medios
Optimización de los parámetros de ROC para mejorar la precisión de reconocimiento de giro
Aumento de los mecanismos de detención de pérdidas, que pueden utilizarse para romper los niveles de precios personalizados
Añadir condiciones adicionales, como el disparo del indicador de volumen de transacciones, para evitar falsas rupturas
Mejorar la eficacia de la toma de decisiones en combinación con otros indicadores, como MACD, BOLL, etc.
Utiliza métodos como el aprendizaje automático para optimizar los parámetros y adaptarse a los cambios en el mercado
En general, la estrategia de doble línea de conversión de puntos es una estrategia de seguimiento de tendencias sencilla y práctica. Se puede implementar solo con los indicadores básicos de la línea de conversión, la lógica es clara y fácil de entender, y es muy adecuada para que los principiantes en el comercio cuantitativo aprendan y practiquen.
The Dual Moving Average Turning Point strategy is a trend following strategy based on moving average crossovers. It uses two moving averages with different parameter settings and determines entry and exit points according to their turning directions. This strategy is simple and intuitive, easy to implement, and suitable for medium-to-long term trading.
The strategy uses Price as the price input source and calculates two moving averages, SMA1 and SMA2, with different parameters. It uses the ROC indicator to determine the turning directions of the moving averages. When SMA1’s ROC value exceeds the positive threshold, it is considered an upward turn of SMA1 and an upward signal is recorded. When SMA1’s ROC value breaks the negative threshold, it is considered a downward turn of SMA1 and a downward signal is recorded. The judgment logic for SMA2 is similar.
When SMA1 turns upward and the previous bar’s SMA2 turns downward, a buy signal is generated to go long. When SMA1 turns downward and the previous bar’s SMA2 turns upward, a sell signal is generated to go short.
The strategy uses the turning directions of two moving averages to determine the trading direction and the turning of one moving average to confirm entry timing. The dual moving average crossover ensures the trend has changed when entering the market, which helps avoid false breakouts.
Using dual moving average crossover and turning points can effectively filter out false breakouts and improve entry accuracy.
Combining moving average turning points with the ROC indicator can clearly identify turning points and avoid frequent trading.
Adopting medium-to-long-term dual moving averages can track the main trend and achieve sizable trend profits.
The strategy logic is simple and clear, easy to understand and implement, suitable for quant trading beginners.
Customizable parameters suit different market environments with strong adaptability.
Dual moving average crossovers may generate many false signals in ranging markets, leading to losses.
The ROC parameters need precise optimization, otherwise turn recognition will have errors, affecting strategy performance.
Large periodic ranging markets may trigger stop loss multiple times. Expanding stop loss range can avoid it.
Relying solely on moving averages, it’s hard to respond to sudden events like major news, which may lead to losses.
Note the overfitting problem in parameter optimization. Test period should be long enough to include different market conditions.
Optimize moving average parameters to find the best moving average period combination.
Optimize ROC parameters to improve turning point recognition accuracy.
Add stop loss mechanisms such as dynamic stop loss based on breaking customized price levels.
Add additional conditions like volume indicators to avoid false breakouts.
Incorporate other indicators like MACD, BOLL to improve decision making.
Use machine learning etc. to auto optimize parameters and adapt to market changes.
In summary, the Dual Moving Average Turning Point strategy is a simple and practical trend following strategy. It can be implemented with basic moving average indicators and has clear, easy-to-understand logic, making it very suitable for quant trading beginners to learn and practice. With parameter optimization and stop loss optimization, the strategy stability can be greatly improved. Combining with other auxiliary indicators can further enhance the strategy. The highly customizable strategy can be flexibly applied to different market environments and is a recommended dual moving average trading strategy.
[/trans]
/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("MA Turning Point Strategy", overlay=true)
src = input(close, title="Source")
price = request.security(syminfo.tickerid, timeframe.period, src)
ma1 = input(25, title="1st MA Length")
type1 = input("HMA", "1st MA Type", options=["SMA", "EMA", "HMA", "VWMA"])
f_hma(_src, _length)=>
_return = wma((2*wma(_src, _length/2))-wma(_src, _length), round(sqrt(_length)))
price1 = if (type1 == "SMA")
sma(price, ma1)
else
if (type1 == "EMA")
ema(price, ma1)
else
if (type1 == "VWMA")
vwma(price, ma1)
else
f_hma(price, ma1)
plot(series=price1, style=line, title="1st MA", color=blue, linewidth=2, transp=0)
lookback1 = input(1, "Lookback 1")
roc1 = roc(price1, lookback1)
ma1up = false
ma1down = false
ma2up = false
ma2down = false
ma1up := nz(ma1up[1])
ma1down := nz(ma1down[1])
ma2up := nz(ma2up[1])
ma2down := nz(ma2down[1])
trendStrength1 = input(2.5, title="Minimum slope magnitude * 100", type=float) * 0.01
if crossover(roc1, trendStrength1)
ma1up := true
ma1down := false
if crossunder(roc1, -trendStrength1)
ma1up := false
ma1down := true
longCondition = ma1up and ma1down[1]
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = ma1down and ma1up[1]
if (shortCondition)
strategy.entry("Short", strategy.short)