Última atualização: maio de 2026. Todas as métricas descritas aqui são campos reais do motor de sandbox da fomoed. Resultados de backtest são educacionais — desempenho passado não prevê retornos futuros.
A diferença entre achar que sua estratégia funciona e saber que ela funciona é um número só: como ela teria se comportado ao longo dos últimos anos de candles reais, incluindo os regimes em que você não estava operando. Isso é um backtest. Feito com honestidade, é o exercício mais útil que um trader discricionário pode rodar antes de automatizar. Feito mal, é um discurso de venda que você escreveu pra si mesmo — cada parâmetro ajustado até a curva ficar linda, e depois o dinheiro de verdade descobre o que você esqueceu de modelar.
O caminho tradicional para um backtest era assim: escrever Python, puxar OHLCV histórico de uma API de exchange, calcular indicadores na unha, simular slippage, contabilizar taxas, lidar com fills parciais, escrever a parte analítica, plotar a curva de capital. A maioria dos traders desiste no passo um. Os poucos que chegam ao passo sete acabam com um motor de backtest sutilmente diferente da plataforma de trading ao vivo onde vão acabar implantando — e essa diferença os devora em produção.
O sandbox da fomoed elimina toda essa pilha. Escolha um par, escolha um template de estratégia, escolha um intervalo de datas, aperte Run. Três anos de candles históricos em cada par suportado, premissas reais de taxa por exchange, o mesmo caminho de código do motor que roda os bots ao vivo, resultado em menos de um minuto. Sem Python, sem chaves de API, sem Jupyter, sem planilha. Este post percorre o fluxo de ponta a ponta e — mais importante — cobre as cinco armadilhas que transformam um backtest bonito em prejuízo real.
Pule a explicação — rode um backtest agora
Conta gratuita, sem cartão, sem Python. Escolha um par, escolha uma estratégia, aperte Run. Primeiro resultado em cerca de um minuto.
Abrir o Sandbox →O que você pode testar no sandbox
Hoje, o motor de sandbox suporta quatro classes de estratégia, cada uma com sua própria superfície de configuração:
Estratégias customizadas baseadas em indicadores
Mean-reversion de RSI, cruzamentos de EMA, confluências de MACD, squeezes de Bollinger Bands, fades de VWAP, setups multi-indicador. Doze indicadores estão expostos (RSI, EMA, SMA, MACD, ATR, ROC, Bollinger, VWAP, Williams %R, Stochastic, OBV, ADX) e qualquer combinação pode atuar como gatilho de entrada ou filtro. O motor lida com parâmetros dinâmicos — comparações de largura de banda, janelas de lookback, condições do tipo "cruzou por cima/por baixo" — então você não precisa fazer a matemática na mão.
Bots DCA e grid
Dollar-cost averaging com escadas opcionais de safety orders, take-profit sobre a posição agregada e condições de gatilho configuráveis. Bots de grid escalonam compras e vendas dentro de um intervalo definido com TP por célula. Os dois rodam dentro do mesmo motor das versões ao vivo — o sandbox não é um caminho de código diferente, é o mesmo loop trader.execute() alimentado por candles históricos em vez de um feed ao vivo.
Smart Money Concepts (SMC)
CHoCH (change of character), BoS (break of structure), order blocks, fair value gaps, retrações de Fibonacci (incluindo a zona OTE de 0.618-0.79) e liquidity sweeps. Sete primitivas, todas detectadas algoritmicamente — o sandbox mostra exatamente os pivôs que o motor ao vivo teria sinalizado em tempo real. Veja nosso guia pilar de SMC para a matemática.
Estratégias por Agente de Trading com IA
Se você consegue descrever a estratégia em duas a quatro frases em inglês simples, o agente de trading com AI da fomoed gera um script em Python que roda dentro do mesmo sandbox. O script pode compor em cima das primitivas de indicadores e SMC, mas não inventar as suas próprias. Útil para "comprar quando RSI<30 AND price>200EMA, sair em +3% ou RSI>70" — digite uma vez, a AI cuida do encadeamento. Veja o pilar do Agente de Trading com IA para a arquitetura.
Como rodar um backtest em 60 segundos
O fluxo de ponta a ponta tem seis cliques, dois deles opcionais. Os números entre parênteses são segundos de relógio realistas para um usuário de primeira viagem.
- Abra o sandbox (5s). Cadastre-se grátis se ainda não fez — e-mail ou wallet, sem KYC, sem cartão. Clique em Sandbox na barra lateral do dashboard.
- Escolha o mercado (10s). Exchange (Hyperliquid / Binance / Bybit / OKX / Decibel / AsterDex / GRVT / Extended / StandX), símbolo (ex.: BTC/USDC:USDC), timeframe (1m / 5m / 15m / 30m / 1h / 4h).
- Escolha o intervalo de datas (5s). O padrão são os últimos 30 dias. Clique nos seletores de data para estender; o sandbox cobre até três anos de histórico por par suportado.
- Configure a estratégia (20s). Escolha um preset (RSI / Custom / DCA / Grid / SMC / Agente de Trading com IA) ou ajuste os parâmetros dos indicadores manualmente. A UI do sandbox espelha exatamente o wizard do bot ao vivo — se você consegue configurar um bot ao vivo, consegue configurar um backtest.
- Clique em Run (15-90s). A maioria dos backtests termina em 10-30 segundos; rodadas de 5 minutos sobre intervalos longos podem levar até 90s na primeira vez (cacheadas nas rodadas seguintes).
- Leia o resultado (os próximos 10 minutos — veja abaixo).
Como ler o resultado com honestidade
Seis métricas importam. As três primeiras são vaidade; as três seguintes são realidade. Olhe para todas as seis — nunca decida com base em uma só.
Win rate
Profit factor
Max drawdown
Sharpe ratio
Curva de capital
Trade log
5 armadilhas de backtest (e como o sandbox lida com elas)
1. Overfitting a um único regime
Você ajusta o limite inferior do RSI de 35 para 32, depois para 28, até a curva de capital ficar deslumbrante. Parabéns — você encontrou os valores de parâmetro que funcionaram naquele trecho específico de histórico de preço. Rode de novo em outro intervalo, os ganhos somem. Como evitar: sempre teste os mesmos parâmetros em pelo menos dois intervalos não sobrepostos (ex.: 2023-2024 E 2024-2025). O sandbox torna isso trivial — duplique a config, mude o intervalo de datas, compare resultados. Se as métricas desabam, você overfit.
2. Fingir que taxas não existem
Uma estratégia de scalp que dispara 30 vezes por dia a 0,1% por fill queima 6% por dia só em taxas. O sandbox aplica taxas de taker reais por exchange (Hyperliquid 0,045%, Binance 0,05%, Bybit 0,055%, etc.) em cada fill. Se você está testando uma estratégia de alta frequência e o resultado não considera taxas, o número que você está encarando é ficção. O profit factor e o PnL líquido do sandbox são pós-taxa. Verifique: olhe o trade log; as taxas por trade devem aparecer como um pequeno arrasto em cada entrada/saída.
3. Supor fills instantâneos
No trading ao vivo, sua ordem não fecha exatamente no preço que você queria — tem slippage, especialmente em tamanhos maiores ou pares mais finos. Um backtest ingênuo executa no open da próxima barra, o que é otimista. O sandbox usa um modelo de fill conservador: ordens a mercado executam no preço de abertura da barra mais uma tolerância de slippage configurável (padrão 0,05%); take-profits executam quando o high da barra toca o nível de TP (ou no close, dependendo do toggle "touch vs close"); stop losses executam no preço de SL quando acionados intrabar. Verifique: aperte a tolerância de slippage e rode de novo; se o resultado desmorona, sua estratégia depende de fills perfeitos.
4. Look-ahead bias
Essa é traiçoeira. Se sua estratégia usa o close do candle atual para decidir se entra naquele mesmo candle, você está trapaceando — em tempo real o candle ainda não tinha fechado quando a decisão foi tomada. O sandbox impõe causalidade: na barra N o motor enxerga apenas o OHLCV das barras 0 até N-1. Os valores dos indicadores usados na abertura da barra N são calculados a partir das N-1 barras anteriores. Se você descreve uma estratégia que quer ler "close do candle atual", o sandbox usa o close da barra anterior como proxy. Verifique: uma estratégia que lê "preço recuperou a EMA nesta barra" deve ser reformulada como "barra anterior recuperou a EMA".
5. Cegueira a mudanças de regime
Tendências em cripto parecem diferentes em regimes diferentes — acumulação, markup, distribuição, markdown. Uma estratégia que imprime dinheiro durante a fase de markup geralmente sangra durante a distribuição. A janela padrão de 3 anos do sandbox cobre pelo menos um ciclo completo incluindo um drawdown relevante, mas você deveria explicitamente fatiar o intervalo e checar cada subperíodo. Verifique: rode a mesma config três vezes — 2023, 2024, 2025 — e olhe as métricas de cada ano independentemente. Se 2024 carrega o resultado inteiro, você está apostando em 2024 se repetir.
Como o sandbox da fomoed se mantém honesto
O motor do sandbox roda o mesmo código Python do bot ao vivo — não é uma implementação paralela. Matemática de indicadores, avaliação de sinais, sizing de posição, dedução de taxas, regras de fill de TP/SL, rastreamento de trailing-stop: tudo single-source-of-truth. Quando você gradua uma estratégia testada em backtest para um bot ao vivo, a única coisa que muda é qual stream de candles o motor lê — parquet histórico vs WS de exchange ao vivo — cada outro byte de lógica é idêntico.
Isso importa porque a maioria das ferramentas de backtest prontas é um caminho de código diferente daquele da plataforma de execução ao vivo onde você acaba implantando. Elas simulam uma lógica "perto o suficiente" com premissas que diferem sutilmente — e essa diferença come silenciosamente sua edge quando os fills reais entram em cena. O sandbox elimina essa diferença por construção.
O motor também publica o schema de resultado abertamente: métricas (win rate, profit factor, max drawdown, Sharpe, PnL bruto/líquido, ganho/perda médios, tempo médio de holding), o trade log completo com motivos e a curva de capital como série temporal. Sem campo oculto de "score" que agrega tudo num número único otimizado para parecer bom — toda métrica é verificável de forma independente a partir do trade log.
Perguntas frequentes
Quanto tempo leva um backtest?
A maioria dos backtests termina em 10-30 segundos para intervalos de menos de um ano. Backtests longos de 5 minutos sobre intervalos plurianuais podem levar até 90 segundos na primeira vez — depois disso, o cache de OHLCV é atingido e re-rodadas ficam 5-10× mais rápidas.
Quanto de dado histórico eu tenho?
Três anos de OHLCV por par suportado em seis timeframes (1m, 5m, 15m, 30m, 1h, 4h). O cache é atualizado todas as noites via cron; se você fizer backtest em um par recém-listado ou com histórico esparso, o motor preenche a lacuna do CCXT ao vivo durante a primeira rodada e cacheia para rodadas futuras.
Os resultados são determinísticos?
Sim — mesma config + mesmo intervalo de datas = mesmo resultado. O motor não tem aleatoriedade oculta; até o slippage é aplicado de forma determinística contra o open/high/low/close do candle. Isso significa que você pode comparar duas configs maçãs com maçãs rodando ambas contra o mesmo intervalo.
Posso exportar o trade log?
Sim — todo resultado de backtest inclui um CSV baixável com cada trade individual (timestamps e preços de entrada/saída, tamanho da posição, taxa, P&L, motivo da saída). Útil se você quer fazer suas próprias análises numa planilha ou notebook pandas.
O backtest modela funding rates?
Para contratos perpétuos, sim — o motor aplica a funding rate realizada de 8 horas em cada janela de funding durante uma posição mantida. As funding rates são puxadas do histórico da exchange quando disponíveis; nos raros casos em que não estão, o motor usa uma premissa conservadora de funding zero.
Qual a diferença entre "touch" e "close" para take-profit?
Touch significa que o TP executa no momento em que o high da barra atinge o preço de TP intrabar. Close significa que só executa se a barra fechar no nível do TP ou acima. Touch é mais otimista (corresponde ao comportamento de uma ordem a mercado num movimento rápido); close é mais conservador (corresponde ao comportamento de uma ordem limitada ou quando a liquidez intrabar é fina). O sandbox permite escolher por TP.
Devo confiar num backtest com 90% de win rate?
Não. Win rate isolado quase nunca é a métrica certa para maximizar — combine com profit factor, max drawdown e a curva de capital. Um win rate de 90% com profit factor de 0,7 significa que você está ganhando pequeno e perdendo grande; vai quebrar devagar. Um win rate de 45% com profit factor de 2,5 significa que você ganha mais do que perde; geralmente é a estratégia melhor.
Pare de adivinhar — teste sua ideia
Você leu até aqui por algum motivo. O sandbox é grátis, não precisa de Python, três anos de dados históricos em cada par suportado.
Começar Grátis →Recursos relacionados
- Como Construir um Bot de Trading com AI em Linguagem Natural (Sem Programar)
- Smart Money Concepts com AI: CHoCH, BoS e Fib
- 15 Prompts de AI Trading Bot Para Copiar e Colar
- Paper Trading: Teste Sua Estratégia Sem Risco
- Melhor Estratégia de Bot Cripto 2026: Um Guia Comparativo
- Motor de Estratégias Customizadas da fomoed
- Agente de Trading com AI da fomoed


