Logo

hw98_console_prompt.avif Teste de estratégias de trading com dados históricos

Backtest de portfólio confiável. Nível de pesquisa quant quant

hamster-bot/tester - Ferramenta avançada para testar seus sistemas de trading com dados históricos.

    hw98_console_prompt.avif Recursos do backtester:
  • Execução simultânea de várias estratégias de tipos diferentes em diferentes timeframes.
  • Tudo isso com saldo compartilhado, para entender como as estratégias coexistem na mesma carteira em tempo real.
  • Suporte a dados de ticks. Simulação do comportamento da estratégia dentro do candle como em negociação real.
  • Sem limites para dados de mercado de entrada. Testes em qualquer período histórico.
  • Teste de lógica complexa própria que é difícil reproduzir com precisão em soluções prontas sem gambiarras.
  • Os backtests rodam no mesmo código de produção usado pelo bot em tempo real.

Implementado como um conector separado hw98_console_prompt.avif para uma "bolsa" (objeto Mock que substitui a bolsa real). Assim é possível testar todo o código já escrito do bot. O bot pensa que está trabalhando em uma bolsa real (envia ordens, recebe saldo e informações de posições). E essa bolsa virtual calcula tudo e gera o relatório.

hw98_console_prompt.avif Dados de mercado para teste

As corretoras de criptomoedas compartilham publicamente dados históricos de mercado. Exemplos: public.bybit.com, data.binance.vision, public.bitmex.com.
O testador baixa o intervalo necessário de dados de trades e monta os candles para o bot. Antes do início do teste, o testador também baixa dados extras para aquecer todos os indicadores de TA usados pela estratégia.
Os dados são salvos na hw98_console_prompt.avif pasta tester/data/{symbol}. Nessa pasta você também pode colocar seus próprios dados em formato CSV.


hw98_console_prompt.avif Comportamento do testador

Do ponto de vista do bot, o testador é apenas mais uma bolsa. O bot se conecta a ela e começa a receber candles, enviar ordens etc. Enquanto isso, o testador apenas emula o comportamento de uma bolsa real.
Saldo é compartilhado entre todas as estratégias. Comportamento como em futuros BYBIT/BINANCE com margem cruzada. O bot pode solicitar saldo Wallet ou Margin. O saldo de margem é calculado considerando todas as posições abertas e o PnL não realizado.
Comportamento real do preço. Quando o bot solicita o candle atual ainda não finalizado, o testador retorna o preço de trade dos dados de ticks (até acabarem os dados de mercado dentro do candle e passar para o próximo). Assim, estratégias dependentes de preço intrabar (por exemplo, slippage, trailing stops etc.) funcionam corretamente.


hw98_console_prompt.avif Relatório

Ao final do teste, um relatório HTML detalhado é salvo na hw98_console_prompt.avif pasta tester/report.

    Conteúdo do relatório:
  • Métricas gerais de todo o sistema de trading:
    • Saldo inicial e saldo final
    • Lucro/prejuízo total em USDT e em %
    • Máximo drawdown
    • Número de trades
    • Percentual de trades lucrativos
    • Profit Factor
    Hamster Bot Backtesting
  • Gráficos de candles individuais para cada estratégia, com marcações das operações e visualização dos indicadores TA da estratégia. Hamster Bot Backtesting
  • Gráfico de saldo de margem (considerando todas as posições abertas e PnL não realizado) e gráfico de saldo Wallet. Hamster Bot Backtesting
  • Gráfico que mostra o tamanho total das posições abertas em USDT (e uma linha em % em eixo separado mostrando a relação entre o total das posições abertas e o saldo de Margem)Hamster Bot Backtesting
  • Tabelas com a lista completa de operações por estratégia. Hamster Bot Backtesting
  • Lista de configurações das estratégias e parâmetros do testador.
  • Resumo consolidado de todas as estratégias. Volume negociado e comissões pagas.Hamster Bot Backtesting


hw98_console_prompt.avif Parâmetros do testador

arquivo: config_tester.json
name_comment - comentário do teste
InitialBalance - saldo inicial para o backtest
StartDate - data de início do backtest no formato 2026-02-03T00:00:00
EndDate - data de término do backtest no formato 2026-02-13T00:00:00
WarmupDays - quantidade de dias de aquecimento antes do início do backtest
MakerFee - taxa maker (0.0001 = 0.01%)
TakerFee - taxa taker (0.0001 = 0.01%)
SlippagePercent - slippage para ordens a mercado (0.0001 = 0.01%)
UpdateData - atualizar dados antes do backtest (true/false)
use_logger - usar logger. Se desativado, acelera o backtest (true/false)

Hamster Bot Backtesting

Além disso, todas as estratégias do bot estão disponíveis em formato PineScript para testes no TradingView.