Type/to search

Estratégia personalizada de início de backtest

Common strategy
Created: 2023-09-26 20:53:15
Last modified: 3 years ago
1
Follow
1802
Followers

Visão Geral

O objetivo desta estratégia é permitir que o usuário personalize o horário de início do backtest, possibilitando uma simulação mais flexível e personalizada.

Princípio da Estratégia

Esta estratégia utiliza as funções time e timestamp do Pine Script para implementar um horário de início de backtest personalizado.

Primeiro, permite que o usuário insira, nas configurações, o ano, mês, dia, hora e minuto personalizados para iniciar o backtest. Em seguida, utiliza essas entradas para gerar um carimbo de data/hora, armazenado na variável startTime.

Na condição da estratégia, é adicionada uma nova condição startTime. A estratégia só será iniciada quando o tempo atual for maior ou igual a startTime.

Por exemplo:

pine
longCondition = crossover(sma(close, 14), sma(close, 28)) if (longCondition and startTime) strategy.entry("My Long Entry Id", strategy.long)

Dessa forma, é possível implementar um horário de início de backtest personalizado. O usuário pode configurar livremente o horário de início do backtest conforme necessário, sem ficar limitado a horários fixos no código.

Análise de Vantagens

Esta estratégia de horário de início personalizado para backtest apresenta as seguintes vantagens:

  1. Mais flexibilidade: O usuário pode personalizar completamente o horário de início do backtest, sem estar restrito a um ponto fixo no tempo.

  2. Mais realismo: É possível definir o horário de início do backtest como o momento real em que a estratégia seria executada, tornando a simulação mais próxima das condições reais de mercado.

  3. Facilidade para backtest orientado a eventos: Permite definir o horário de início com base na ocorrência de um evento específico, possibilitando testar a estratégia para aquele evento.

  4. Facilidade de ajuste de condições: É muito conveniente ajustar as condições de início do backtest, permitindo simulações direcionadas para diferentes fases.

  5. Reprodutível e confiável: Ao parametrizar o horário de início, é possível repetir a simulação e obter resultados confiáveis.

Análise de Riscos

O uso de um horário de início personalizado para backtest também apresenta alguns riscos:

  1. Resultados do backtest dependentes do horário de início: Diferentes horários de início podem levar a grandes variações nos resultados do backtest.

  2. Necessidade de escolha cuidadosa do horário de início: Um horário de início inadequado pode distorcer o backtest, não refletindo a realidade.

  3. Aumento do risco de overfitting: É fácil ajustar o horário de início para se adequar aos dados históricos, aumentando o risco de overfitting.

  4. Redução da comparabilidade dos resultados: Os resultados do backtest com horário personalizado podem não ser diretamente comparáveis aos de um backtest com horário fixo.

Soluções correspondentes:

  1. Realizar múltiplos backtests, avaliando o impacto da variação do horário de início nos resultados.

  2. Escolher momentos de eventos significativos como horário de início, reduzindo distorções no backtest.

  3. Ajustar o horário de início com cuidado, evitando overfitting aos dados históricos.

  4. Manter um backtest com horário de início fixo como referência, para comparação com o backtest personalizado.

Direções de Otimização

Esta estratégia de horário de início personalizado pode ser otimizada nos seguintes aspectos:

  1. Suporte à personalização do horário de início e término, permitindo uma configuração flexível de toda a janela de tempo do backtest.

  2. Suporte a múltiplos modos de tempo: data específica, data relativa, orientado a eventos, etc., tornando a configuração mais inteligente e conveniente.

  3. Suporte a interface gráfica de configuração, tornando os parâmetros de tempo mais intuitivos.

  4. Suporte a diferentes granularidades de tempo: ano, mês, dia, hora, minuto, segundo, etc.

  5. Registro da configuração de tempo do backtest, garantindo que os resultados sejam reproduzíveis, rastreáveis e comparáveis.

  6. Adição de validação para configurações inadequadas de tempo, evitando que configurações irracionais comprometam a qualidade do backtest.

  7. Fornecimento de função de vínculo do horário de início, permitindo sincronizar e copiar o horário de início para múltiplas estratégias com um clique.

Conclusão

Esta estratégia implementa uma configuração personalizada e flexível do horário de início do backtest, reduzindo as limitações e aproximando a simulação das condições reais de negociação. No entanto, é preciso estar atento à dependência dos resultados do backtest em relação ao horário de início, adotando medidas como múltiplos backtests e abordagens orientadas a eventos para reduzir distorções. Esta estratégia ainda possui muitas direções de otimização, podendo no futuro oferecer uma configuração de tempo de backtest mais inteligente e conveniente.

Source
Pine
/*backtest
start: 2022-09-19 00:00:00
end: 2023-09-25 00:00:00
period: 2d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("C320up Strategy Tester Start Time", overlay = true)
// Copy and paste below into your strategy
// Strategy Tester Start Time
Strategy parameters
Strategy parameters
Start Year
Start Month
Start Day
Start Hour
Start Minute
Comment
All comments (0)
No data
No data
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)