
La estrategia de la caída y la caída es una estrategia de entrada a través de la detección de una gran cantidad de rayos solares. Cuando se detecta una gran cantidad de rayos solares, hacer más cuando se detecta una gran cantidad de rayos solares. El stop loss se encuentra en el punto más bajo de la columna que desencadena la señal (… y viceversa), el stop loss es 1 vez el stop loss.
La lógica central de esta estrategia es la siguiente:
Calcula el rango de fluctuación total de la línea K actual (el punto más alto - el punto más bajo) y el tamaño de la entidad (el precio de cierre es mayor que el precio de apertura y es positivo, y viceversa negativo)
Calcula el promedio de la amplitud de fluctuación en el pasado en la raíz K de N
Para determinar si la línea K actual es satisfactoria: el rango de oscilación es mayor que el promedio de oscilación y el tamaño de la entidad es mayor que el rango de oscilación y el número mínimo de sistemas reales
Si se cumplen las condiciones anteriores, se dispara la señal: el cable de sol está vacío, el cable de sol está lleno
Se puede elegir si activar o no el stop loss: el stop loss es el punto más bajo de la columna de la señal más un parámetro de fluctuación multiplicado por el factor de stop loss; el stop loss es el doble del stop loss
En el juicio de la entidad, se filtra el segmento de línea para asegurar que haya suficiente fuerza; Calcule dinámicamente la amplitud de fluctuación promedio para evitar que los valores de brecha fijos no puedan adaptarse a los cambios en el mercado; Configure el stop loss para establecer una tasa de retiro razonable, que se puede ajustar mediante un coeficiente.
La mayor ventaja de esta estrategia es que capta señales de cambio de tendencia de alta calidad, basadas principalmente en dos juicios:
La gran cantidad de rayos X y Y indica que la tendencia ya se ha mostrado fuerte en la fase inicial, por lo que es probable que sea un punto de inflexión estructural en toda la tendencia.
Calcular dinámicamente la amplitud media de las oscilaciones para asegurar la captura de las fluctuaciones anormales que superan los niveles normales y así filtrar las reacciones de regresión normales
Además, la configuración del stop loss también es muy razonable, lo que permite controlar eficazmente el stop loss individual, mientras que el stop loss tiene una tasa de retorno de 1, sin perseguir demasiado la caída.
En general, la estrategia ha logrado ubicar un punto de inflexión estructural de alta calidad para una operación eficiente. Esto es muy adecuado para los operadores de seguimiento de tendencias que evitan quedar atrapados en el proceso intermedio.
El principal riesgo de esta estrategia proviene de dos aspectos:
La caída de los precios podría haber sido un impedimento para el crecimiento, lo que genera una señal ineficaz.
La configuración de parada de pérdidas es demasiado flexible para controlar las pérdidas de manera efectiva
Para el primer riesgo, se puede filtrar la tasa de error de juicio mediante el aumento de la amplitud mínima de fluctuación y el tamaño de la entidad, pero también se pierden algunas oportunidades. Es necesario encontrar el punto de equilibrio en función de los resultados de la retroevaluación.
El segundo riesgo se puede optimizar ajustando el coeficiente de parada para que la parada esté más cerca del nivel de soporte, pero no demasiado cerca. También se debe considerar aumentar la tasa de retorno de la parada para compensar las pérdidas causadas por la parada.
La estrategia puede ser mejorada en los siguientes puntos:
Aumentar el conocimiento de la dirección de la tendencia y evitar la operación de contratiempo
Optimización de la configuración de los parámetros para encontrar la combinación óptima de parámetros
Incrementar la filtración de la transacción para asegurar que la transacción de la línea de la aurora y la de la luna sea lo suficientemente alta
Considere agregar más filtros, como plataformas, bandas de brín, etc., para reducir la probabilidad de error.
Prueba de los parámetros de diferentes variedades para optimizar los parámetros
Aumentar el seguimiento del stop loss para que el stop loss se ajuste de forma dinámica a los movimientos de los precios
Considerar la posibilidad de reingreso, es decir, reingreso después de la primera parada
La optimización de los puntos anteriores puede hacer que la estrategia sea más efectiva, lo que realmente aumenta la probabilidad de ganancias. Se necesita un buen análisis y optimización para encontrar los parámetros óptimos.
La estrategia de A y B captura grandes cantidades de rayos X y Y para obtener ganancias eficientes, con una configuración de parada de pérdidas. Se ha logrado ubicar oportunidades de reversión estructuradas de alta calidad que pueden proporcionar información muy valiosa para los operadores de tendencias. A través de la optimización de parámetros y la optimización de reglas, la estrategia puede convertirse en una herramienta de decisión auxiliar muy práctica. Su lógica de negociación simple y su implicación económica directa también la hacen fácil de entender y dominar.
/*backtest
start: 2023-10-06 00:00:00
end: 2023-11-05 00:00:00
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/
// © tweakerID
// This strategy detects and uses big bars to enter a position. When the Big Bar
// is bearish (red candle) the position will be long and viceversa
// for short positions. The stop loss (optional) is placed on the low of the
// candle used to trigger the position and user inputs allow you to modify the
// size of the SL. Take profit is placed on a reward ratio of 1. User can also modify
// the size of the bar body used to determine if we have a real Big Bar and
// filter out Doji bars. Big Bars are determined relative to the previous X period size,
// which can also be modified, as well as the required size of the Big Bar relative to this period average.
//@version=4
strategy("Big Bar Strategy", overlay=false)
direction = input(0, title = "Direction (Long=1, Both=0, Short=-1 ", type=input.integer, minval=-1, maxval=1)
strategy.risk.allow_entry_in(direction == 0 ? strategy.direction.all : (direction < 0 ? strategy.direction.short : strategy.direction.long))
//Inputs
barsizemult=input(1, step=.1, title="SL Mult")
TPbarsizemult=input(1, step=.1, title="TP Mult")
barsizeThreshold=input(.5, step=.1, minval=.5, maxval=.9, title="Bar Body Size")
period=input(10)
mult=input(2, step=.2, title="Big Size Avg Mult to determine Big Bar")
i_reverse=input(false, title="Reverse Trades")
SLon=input(false, title="Use SL / TP")
//Calculations
barsize=high-low
barbodysize=close>open?(open-close)*-1:(open-close)
barsizeavg=sum(barsize, period)/period
bigbar=barsize >= barsizeavg*mult and barbodysize>barsize*barsizeThreshold
//Entry Logic
longCondition = close < open and bigbar //and strategy.position_size==0
shortCondition = close > open and bigbar //and strategy.position_size==0
//SL & TP Calculations
longTP=strategy.position_avg_price + (valuewhen(longCondition,barsize,0)*TPbarsizemult)
longSL=strategy.position_avg_price - (valuewhen(longCondition,barsize,0)*barsizemult)
shortTP=strategy.position_avg_price - (valuewhen(shortCondition,barsize,0)*TPbarsizemult)
shortSL=strategy.position_avg_price + (valuewhen(shortCondition,barsize,0)*barsizemult)
TP=strategy.position_size>0?longTP:shortTP
SL=strategy.position_size>0?longSL:shortSL
//Entries
if (longCondition)
strategy.entry("long", long=not i_reverse?true:false)
alert("Big Bar")
if (shortCondition)
strategy.entry("short", long=not i_reverse?false:true)
alert("Big Bar")
if SLon
strategy.exit("SL & TP", "long", stop=SL, limit=TP)
strategy.exit("SL & TP", "short", stop=SL, limit=TP)
// Plots
barcolor(bigbar ? color.white : na)
plot(barsizeavg, transp=100, title="Barsize Avg")
plot(barsize, transp=100, title="Bar Size")
plot(barbodysize, transp=100, title="Bar Body Size")
plot(SLon?TP:na, color=color.green, style=plot.style_cross, title="TP")
plot(SLon?SL:na, color=color.red, style=plot.style_cross, title="SL")
plotshape(longCondition ? 1 : na, style=shape.triangleup, location=location.belowbar, color=color.green, title="Bullish Setup")
plotshape(shortCondition ? 1 : na, style=shape.triangledown, location=location.abovebar, color=color.red, title="Bearish Setup")