
La estrategia se llama “la estrategia de inversión del martes ((filtración de fin de semana) ” y la idea principal es comprar el lunes de apertura de compra y el miércoles de apertura de venta para capturar la inversión del martes. La estrategia filtra indicadores como el RSI, el ATR y excluye ciertos momentos como el mes de mayo para mejorar la probabilidad de éxito de la estrategia y el riesgo de ganancias.
La estrategia de inversión del martes (filtrado el fin de semana) se basa en una combinación de indicadores como la línea media, el RSI y el ATR para juzgar los precios de compra y venta en un momento específico para capturar el movimiento inverso del martes. La estrategia tiene una baja frecuencia de negociación, un costo de operación bajo y, a través de filtros por períodos de tiempo y filtros de indicadores, mejora la ganancia y el riesgo de la estrategia. Sin embargo, la estrategia también tiene ciertas limitaciones y riesgos, como un mal desempeño en condiciones de tendencia, así como oportunidades de compra y venta y un período de tenencia fijo.
/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-31 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © muikol
//@version=5
strategy("Turnaround Tuesday", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.035)
// Inputs for MA period, filter_1, filter_2, month filter, and testing period
ma_period = input(30, title="Moving Average Period")
use_filter_1 = input(true, title="Use RSI Filter")
use_filter_2 = input(true, title="Use ATR Filter")
use_month_filter = input(true, title="Exclude May")
start_date = input(defval=timestamp("2009-01-01 00:00:00"), title="Start Backtest")
end_date = input(defval=timestamp("2025-01-01 00:00:00"), title="End Backtest")
// Data calculations
MA_tt = ta.sma(close, ma_period)
atr10 = ta.atr(10)
rsi3 = ta.rsi(close, 3)
c_1 = close[1]
// Entry conditions
isMonday = dayofweek == dayofweek.monday
bear = close[1] < MA_tt[1]
filter_1 = use_filter_1 ? rsi3[1] < 51 : true
filter_2 = use_filter_2 ? c_1/atr10[1] < 95 : true
notMay = use_month_filter ? month != 5 : true
entryCondition = isMonday and bear and notMay and filter_1 and filter_2
// Date check
inTestPeriod = true
// Exit conditions
isWednesdayOpen = dayofweek == dayofweek.wednesday
// Entry and exit triggers
if entryCondition and inTestPeriod
strategy.entry("Buy", strategy.long)
if isWednesdayOpen and strategy.position_size > 0 and inTestPeriod
strategy.close("Buy")
// Plot the moving average
plot(MA_tt, title="Moving Average", color=color.blue)