Esta estratégia é uma estratégia de inversão transversal da média, baseada em médias móveis simples. Utiliza medias móveis simples de comprimento 1 e comprimento 5, que são típicas estratégias de acompanhamento de tendências, quando as médias móveis de curto período atravessam a média móvel de longo período abaixo e quando elas atravessam a média móvel de longo período abaixo.
Esta estratégia consiste em calcular a média móvel simples de 1 dia SMA1 e 5 dias SMA5, com mais entradas quando o SMA5 é colocado no SMA1 e mais entradas quando o SMA5 é colocado no SMA1.
Otimizar:
Esta estratégia é uma estratégia simples e equilibrada, com características de operação simples e fácil de implementar, que permite a verificação rápida de ideias estratégicas. Mas sua tolerância e margem de lucro são limitadas e precisam ser otimizadas em parâmetros e condições de filtragem para adaptá-las a mais ambientes de mercado. Como a primeira estratégia de quantificação para iniciantes, ela contém componentes básicos que podem ser melhorados iterativamente como um quadro simples.
/*backtest start: 2023-02-19 00:00:00 end: 2024-02-19 00:00:00 period: 2d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Valeria 181 Bot Strategy Mejorado 2.21", overlay=true, margin_long=100, margin_short=100) var float lastLongOrderPrice = na var float lastShortOrderPrice = na longCondition = ta.crossover(ta.sma(close, 1), ta.sma(close, 5)) if (longCondition) strategy.entry("Long Entry", strategy.long) // Enter long shortCondition = ta.crossunder(ta.sma(close, 1), ta.sma(close, 5)) if (shortCondition) strategy.entry("Short Entry", strategy.short) // Enter short if (longCondition) lastLongOrderPrice := close if (shortCondition) lastShortOrderPrice := close // Calculate stop loss and take profit based on the last executed order's price stopLossLong = lastLongOrderPrice - 5 // 10 USDT lower than the last long order price takeProfitLong = lastLongOrderPrice + 151 // 100 USDT higher than the last long order price stopLossShort = lastShortOrderPrice + 5 // 10 USDT higher than the last short order price takeProfitShort = lastShortOrderPrice - 150 // 100 USDT lower than the last short order price // Apply stop loss and take profit to long positions strategy.exit("Long Exit", from_entry="Long Entry", stop=stopLossLong, limit=takeProfitLong) // Apply stop loss and take profit to short positions strategy.exit("Short Exit", from_entry="Short Entry", stop=stopLossShort, limit=takeProfitShort)