Estratégias
Reversão à média com banda de volatilidade em regime lateral, long-short (um único instrumento ETHUSDT Binance USD-M, barras de 1H, aposta contra desvios extremos ONLY quando um filtro confirma ausência de tendência — correção documentada para a falha da reversão em principais criptomoedas com tendência, com poucos parâmetros)
Resultado: Abandonado
EthRangingRegimeVolBandMeanReversionLS1H
Resumo de Resultados
Hipótese
Correção da iteração 3 para o tempo limite da Camada-3: a versão anterior reconstruía arrays numpy a partir do histórico crescente de barras ENTIRE e executava os ciclos Python ADX sobre todo o histórico em cada barra, resultando num custo total O(n^2) que excedia o limite de 300s do teste de fumo em dados 1H de vários anos. A alteração cirúrgica mínima limita self._bars a uma cauda de comprimento fixo (self._calc_window = max(band_period, 5*adx_period)+10 = 80 barras) antes de construir os arrays, tornando o trabalho por barra O(1) e o custo total O(n). Toda a lógica de sinal/entrada/saída/dimensionamento é idêntica, ao nível dos bytes, à do código que já passou as Camadas 1-2; nenhuma verificação anterior regride. A janela cobre confortavelmente o aquecimento Wilder de ADX (2*adx_period+1) e o período da banda SMA.
Implementação
Reversão à média long-short em 1H em perpétuos ETHUSDT USD-M. Apostava contra desvios extremos do z-score face a uma banda 24 de SMA barras, mas apenas ONLY quando ADX(14) < 25 (regime sem tendência/de lateralização). Mantém-se fora do mercado em regimes de tendência e sai se a tendência começar durante a operação. Saídas por stop-loss e recuperação da média. O cálculo por barra está limitado a uma janela recente de comprimento fixo, para que o backtest decorra em tempo O(n).
Resultados da Verificação
Verificação falhada (Camada 3 — backtest em sandbox): o teste de fumo excedeu o limite de 300s de tempo de relógio. Quase sempre, isto significa trabalho por barra que escala com o histórico — por exemplo, voltar a percorrer toda a série de financiamento/dados suplementares, ou reconstruir uma lista e chamar min()/sorted() dentro de calculate_signal()/on_bar() em cada barra. Pré-calcule arrays de timestamps ordenados ONCE em __init__ e use bisect, ou guarde em cache as consultas indexadas pelo timestamp, para que o custo por barra seja O(log n), e não O(n).
Revisão do Backtest
- Sharpe
- -1,94
- Retorno Total
- -85,70%
- Drawdown Máximo
- 86,79%
- Total de Operações
- 1388
- Taxa de Acerto
- 52,9%
- Fator de Lucro
- 0,72
Implementação correta e fiel: o filtro de regime ADX, a aposta contra desvios do z-score e a lógica de stop/saída exprimem corretamente a hipótese declarada (sem artefactos nem erros contabilísticos, volatilidade plausível 20.6% e sem dias impossíveis).
Amostra e infraestrutura sólidas: 1,388 operações ao longo de mais de 6 anos, muitas operações, um único instrumento líquido, custo O(1) por barra — o próprio backtest é fiável.
O resultado negativo é, por si só, informativo: confirma claramente a premissa de ausência de reversão nas principais criptomoedas, com uma amostra ampla e estatisticamente significativa.
Vantagem consistentemente negativa ao longo de EVERY ano (2020 -13%, 2021 -52%, 2022 -32%, 2023 -2.8%, 2024 -5.8%, 2025 -25.6%, 2026 -18.4%) e em todos os regimes — total_return -85.7%, max_drawdown 86.8%.
Métricas de desempenho ajustadas ao risco profundamente negativas e sem ambiguidade: Sharpe -1.94 (todo o período de CI negativo, ci_high -1.14), Sortino -2.46, PSR 0.0, profit_factor 0.72, information_ratio -1.01, expectativa de -$60.76/operação ao longo de 1,388 operações.
Geometria de ganhos e perdas invertida, que a hipótese afirmava evitar: exit_z=0.3 (pequeno ganho) face ao stop 4% dá avg_win $290 < avg_loss $455 com uma taxa de ganhos de 53%; as comissões consumiram 16% do valor bruto — mas mesmo uma geometria correta não salvaria um sinal sem vantagem preditiva ao longo de 6 anos.
Histórico de Iterações
Verificação falhada (Camada 2 — cenários sintéticos): Parâmetros usados: ['exit_z', 'entry_z', 'risk_frac', 'adx_period', 'band_period', 'min_notional', 'adx_threshold', 'stop_loss_pct'] Verifique se __init__ define todos os atributos com self.parameters.get(). - steady_uptrend: TypeError: o objeto 'float' não pode ser chamado (timestamp da barra: 1735691580000) - steady_downtrend: TypeError: o objeto 'float' não pode ser chamado (timestamp da barra: 1735691580000) - flat_ranging: TypeError: o objeto 'float' não pode ser chamado (timestamp da barra: 1735691580000) - volatility_spike: TypeError: o objeto 'float' não pode ser chamado (timestamp da barra: 1735691580000) - zero_volume: TypeError: o objeto 'float' não pode ser chamado (timestamp da barra: 1735691580000) - price_gap: TypeError: o objeto 'float' não pode ser chamado (timestamp da barra: 1735691580000)
Resumo de Resultados
A reversão de curto prazo não tem vantagem positiva nas principais criptomoedas líquidas, mesmo quando condicionada a um regime ADX sem tendência; por isso, uma operação contra a extensão excessiva em ETH continua a perder em todos os anos e regimes.
O analista emitiu um veredicto de «abandonar» na etapa BACKTEST_REVIEW anterior à otimização, considerando a premissa fundamentalmente inviável, e não um erro corrigível; o código implementou fielmente a hipótese e o backtest era correto e fiável, pelo que não havia defeito a corrigir nem parâmetros por ajustar para a otimização descobrir. Não se chegou à otimização, à revisão posterior do analista nem à revisão de risco.
Estratégia de reversão à média long-short de 1H em ETHUSDT Binance USD-M perpétuo, que apostava contra desvios extremos do z-score face a uma SMA curta, mas apenas quando um filtro de tendência ADX (ADX<25) confirmava um regime sem tendência/de lateralização; mantinha-se fora do mercado durante tendências para evitar contrariar o momentum.
Ao longo de 1,388 operações e mais de 6 anos (2019-2026), perdeu claramente: retorno total -85.7%, Sharpe -1.94 (todo o período de CI negativo, ci_high -1.14), fator de lucro 0.72, expectativa de -$60.76/operação e drawdown máximo de 86.8% com uma taxa de ganhos de 52.9%. Teve resultados negativos em todos os anos e regimes, com geometria invertida de ganhos e perdas (ganho médio de $290 < perda média de $455) e cerca de 16% do valor bruto consumido por comissões.
O Stratmill é uma ferramenta de investigação e paper trading, não constitui aconselhamento financeiro nem é uma corretora. Os resultados de backtest e paper trading são hipotéticos. Negociar envolve risco de perda.