La idea central de esta estrategia consiste en comprar acciones al cierre del mercado y venderlas al día siguiente al abrir el mercado, con el fin de beneficiarse del aumento del precio al abrir.
La estrategia se basa en dos juicios:
Los operadores intradía tienden a hacer long en el mercado abierto, elevando los precios de apertura.
Los precios de cierre reflejan el verdadero valor de las existencias.
Específicamente, la estrategia comprueba si el precio de cierre está por encima del promedio móvil simple de 200 días al cierre del mercado (20:00).
En el día siguiente de apertura del mercado (9:30), cierra las posiciones largas abiertas el día anterior, y cierra también las posiciones cortas.
Al comprar a precios de cierre bajos y vender a precios de apertura altos, pretende beneficiarse del aumento del precio de apertura.
Las ventajas de esta estrategia:
Utilice la inercia de los operadores intradiarios para ir largo en abierto y vender para obtener ganancias.
El MA de 200 días ayuda a identificar la tendencia.
La baja frecuencia con sólo dos puntos de comercio diarios reduce los costos de transacción.
El backtesting proporciona confianza en los parámetros.
El sistema automatizado minimiza la interferencia emocional.
Los riesgos a considerar:
El precio de apertura puede revertirse bruscamente, dando lugar a pérdidas.
El precio de cierre puede ser manipulado.
La suspensión de las existencias puede impedir la apertura de posiciones.
Los altos costos de transacción hacen que el comercio frecuente sea caro.
El ajuste inadecuado de los parámetros conduce a un comercio excesivo o a pérdidas.
Las soluciones incluyen:
Establecer el stop loss para limitar las pérdidas.
Compruebe el volumen y los ajustes para validar el precio de cierre.
Priorizar las existencias de liquidez.
Optimizar la longitud del MA y los tiempos de negociación.
La estrategia puede mejorarse mediante:
Añadir paradas para reducir las pérdidas en la inversión de apertura.
Utilizando otros indicadores para determinar el rango de precios.
Considerando el riesgo de liquidez y seleccionando existencias líquidas.
Probando diferentes parámetros de MA.
Optimización de los tiempos de apertura/cierre.
Comprueba las noticias para la validez del precio de cierre.
Considerando los costos de transacción y seleccionando las existencias de bajo costo.
Utilizando modelos multifactoriales.
La estrategia obtiene ganancias del aumento del precio de apertura comprando bajo al cierre y vendiendo alto al abierto. Tiene algunas ventajas, pero también riesgos a considerar. Optimizaciones adicionales en parámetros, paradas, selección de acciones pueden mejorar el rendimiento. En general, proporciona una idea de estrategia de posición de cierre simple para los operadores intradiarios.
/*backtest start: 2023-10-10 00:00:00 end: 2023-11-09 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/ // © Youngmoneyinvestments //@version=5 strategy("End of Day Trading Strategy", overlay=true) // Get the daily open, high, low, and close prices daily_open = request.security(syminfo.tickerid, "D", open) daily_close = request.security(syminfo.tickerid, "D", close) // Calculate the 200 period SMA on daily close sma200 = ta.sma(daily_close, 200) // Define the entry and exit conditions end_of_day = (hour == 20) and (minute == 0) // Assuming the end of the regular trading hours is 20:00 start_of_day = (hour == 9) and (minute == 30) // Assuming the start of the trading session is 09:30 long_condition = end_of_day and (daily_close > sma200) short_condition = end_of_day and (daily_close < sma200) // Execute the strategy logic if (long_condition) strategy.entry("Long", strategy.long) if (short_condition) strategy.entry("Short", strategy.short) // Exit conditions if (strategy.position_size > 0 and start_of_day) // If we are long, sell at the open of the session strategy.close("Long") if (strategy.position_size < 0 and start_of_day) // If we are short, buy at the open of the session strategy.close("Short") // Plot the SMA on the chart plot(sma200, "200 SMA", color=color.blue)