
Una estrategia de seguimiento de tendencias de línea de paridad basada en un gráfico de una nube de indicadores de popularidad. La estrategia utiliza la línea de giro de un gráfico de nube para emitir señales de compra y venta con anticipación, lo que permite una captura anticipada de la tendencia.
La estrategia se basa principalmente en los siguientes puntos:
Utiliza la línea de conversión y la línea de referencia para construir un mapa de la nube y trazarlo con un desplazamiento de 26 periodos.
Se emite una señal de compra cuando el precio de cierre se encuentra en la parte superior de la nube; se emite una señal de venta cuando el precio de cierre se encuentra en la parte inferior de la nube.
Para filtrar brechas falsas, se requiere que el precio de cierre actual rompa los valores máximos y mínimos de la línea de conversión y la línea de referencia al mismo tiempo.
El límite de pérdidas se establece en el 5% del precio de entrada y se puede cerrar.
Con este tipo de filtración múltiple, se puede identificar eficazmente los puntos de inflexión de la tendencia y capturar nuevas oportunidades de negociación a tiempo. Al mismo tiempo, un filtro de ruptura riguroso también puede reducir la emisión de señales falsas.
Esta estrategia tiene las siguientes ventajas:
La estrategia también tiene algunos riesgos:
El riesgo puede reducirse de la siguiente manera:
La estrategia también puede ser optimizada en los siguientes aspectos:
El sistema de gestión de posiciones se ha incrementado mediante el uso de operadores como:strategy.position_sizeControl de las proporciones de construcción.
Se aprobó una nueva ley para incrementar la filtración de variedades.security()El filtro de variedad de la piscina, el grado de reconocimiento automático de las tendencias.
Aumentar las estrategias de stop loss, estableciendo un stop loss móvil o parcial para controlar aún más el riesgo.
Combinación con otros indicadores, como líneas de Brin, RSI, etc., para construir un sistema de comercio de múltiples indicadores y mejorar la calidad de la señal.
Aplicación de métodos de aprendizaje automático para determinar la fiabilidad de las señales de compra y venta mediante el entrenamiento y el ajuste dinámico de la cantidad de pedidos.
Una estrategia de seguimiento de tendencias de línea de igualdad de oportunidades de doble previsión en una nube mediante la determinación anticipada de la tendencia de una gráfica en la nube, y luego la fusión de filtros de múltiples capas de igualdad de línea, puede identificar efectivamente oportunidades de comercio de alta calidad. La estrategia es más robusta, tiene un gran espacio de optimización y se puede aplicar ampliamente a las operaciones en disco.
/*backtest
start: 2022-12-05 00:00:00
end: 2023-12-11 00:00:00
period: 1d
basePeriod: 1h
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/
// © QuantCT
//@version=4
strategy("Ichimoku Cloud Strategy Idea",
shorttitle="Ichimoku",
overlay=true,
pyramiding=0,
default_qty_type=strategy.percent_of_equity,
default_qty_value=99,
initial_capital=1000,
commission_type=strategy.commission.percent,
commission_value=0.1)
// ____ Inputs
conversion_period = input(9, minval=1, title="Conversion Line Period")
base_period = input(26, minval=1, title="Base Line Period")
lagging_span2_period = input(52, minval=1, title="Lagging Span 2 Period")
displacement = input(26, minval=1, title="Displacement")
long_only = input(title="Long Only", defval=false)
slp = input(title="Stop-loss (%)", minval=1.0, maxval=25.0, defval=5.0)
use_sl = input(title="Use Stop-Loss", defval=false)
// ____ Logic
donchian(len) => avg(lowest(len), highest(len))
conversion_line = donchian(conversion_period)
base_line = donchian(base_period)
lead_line1 = avg(conversion_line, base_line)
lead_line2 = donchian(lagging_span2_period)
chikou = close
chikou_free_long = close > high[displacement] and close > max(lead_line1[2 * displacement], lead_line2[2 * displacement])
enter_long = chikou_free_long and close > max(lead_line1[displacement], lead_line2[displacement])
exit_long = close < lead_line1[displacement] or close < lead_line2[displacement]
chikou_free_short = close < low[displacement] and close < min(lead_line1[2 * displacement], lead_line2[2 * displacement])
enter_short = chikou_free_short and close < min(lead_line1[displacement], lead_line2[displacement])
exit_short = close > lead_line1[displacement] or close > lead_line2[displacement]
strategy.entry("Long", strategy.long, when=enter_long)
strategy.close("Long", when=exit_long)
if (not long_only)
strategy.entry("Short", strategy.short, when=enter_short)
strategy.close("Short", when=exit_short)
// ____ SL
sl_long = strategy.position_avg_price * (1- (slp/100))
sl_short = strategy.position_avg_price * (1 + (slp/100))
if (use_sl)
strategy.exit(id="SL", from_entry="Long", stop=sl_long)
strategy.exit(id="SL", from_entry="Short", stop=sl_short)
// ____ Plots
colors =
enter_long ? #27D600 :
enter_short ? #E30202 :
color.orange
p1 = plot(lead_line1, offset = displacement, color=colors,
title="Lead 1")
p2 = plot(lead_line2, offset = displacement, color=colors,
title="Lead 2")
fill(p1, p2, color = colors)
plot(chikou, offset = -displacement, color=color.blue)