
La estrategia toma decisiones de negociación basadas en los altibajos de los precios de apertura de 5 minutos, y establece diferentes condiciones de activación con el uso de brechas de dos etapas, con el objetivo de capturar grandes cambios de precios en una tendencia oscilante.
La estrategia se basa en el precio de apertura de la línea K de 5 minutos completos a las 2 horas diarias y calcula el porcentaje de alza y bajada de la línea K de 5 minutos en el momento. Se toma una decisión de compra o venta correspondiente cuando la alza y bajada excede el intervalo de la primera etapa establecida. Al mismo tiempo, se establece un stop loss y un stop loss para salir de la posición.
Si se activa el stop loss, se cancelará la orden anterior cuando la tendencia a la baja continúe expandiéndose y supere la condición de activación de la brecha de la segunda etapa, se utilizará una nueva orden de compra o venta bajo la brecha de la segunda etapa y se continuará con el seguimiento de los stop losses y los stops.
Con la configuración de un intervalo de dos etapas, se puede filtrar parte del ruido en situaciones de volatilidad y solo se puede operar con cambios de precio más significativos. Al mismo tiempo, la activación de un intervalo de segunda etapa puede reducir los casos en que el stop loss se activa con demasiada frecuencia.
Respuesta:
La estrategia de captura de los movimientos de precios a través de dos pasos de brecha, con eficacia de filtración de ruido en situaciones de crisis. La estrategia Concept es simple y claro, a través de la optimización de los parámetros puede obtener un mejor efecto.
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Auto Entry Bot", overlay=true)
// Define input for the stop loss and take profit levels
stopLossPips = input.int(200, title="Stop Loss Pips", minval=1)
takeProfitPips = input.int(400, title="Take Profit Pips", minval=1)
// Calculate the percentage change from the 5-minute opening candle at 2:00 AM
var float openPrice = na
if (hour == 2 and minute == 0)
openPrice := open
percentageChange = (close - openPrice) / openPrice * 100
// Track the cumulative percentage change
var float cumulativeChange = 0
// Define input for the percentage change trigger
triggerPercentage1 = input.float(0.25, title="Percentage Change Trigger (%)", minval=0.01, step=0.01)
triggerPercentage2 = input.float(0.35, title="Additional Trigger Percentage (%)", minval=0.01, step=0.01)
// Check for price change trigger
if (percentageChange >= triggerPercentage1)
// Sell signal
strategy.entry("Sell", strategy.short)
strategy.exit("ExitSell", loss=stopLossPips, profit=takeProfitPips)
cumulativeChange := 0 // Reset cumulative change after a trade
if (percentageChange <= -triggerPercentage1)
// Buy signal
strategy.entry("Buy", strategy.long)
strategy.exit("ExitBuy", loss=stopLossPips, profit=takeProfitPips)
cumulativeChange := 0 // Reset cumulative change after a trade
// If the price keeps hitting stop loss, activate the second trigger
if (strategy.position_size < 0 and percentageChange <= -triggerPercentage2)
strategy.cancel("Sell") // Cancel previous sell order
strategy.entry("Sell2", strategy.short)
strategy.exit("ExitSell2", loss=stopLossPips, profit=takeProfitPips)
cumulativeChange := 0 // Reset cumulative change after a trade
if (strategy.position_size > 0 and percentageChange >= triggerPercentage2)
strategy.cancel("Buy") // Cancel previous buy order
strategy.entry("Buy2", strategy.long)
strategy.exit("ExitBuy2", loss=stopLossPips, profit=takeProfitPips)
cumulativeChange := 0 // Reset cumulative change after a trade