Pergunta sobre dados e backtesting
9 respostas
clonex / Ivan Hudec
9 anos atrás #112483
Hi,
Talvez uma pergunta de novato:
Estou desenvolvendo uma estratégia intradiária que usaria 1 H TF
Nas primeiras tentativas, eu estava usando dados horários importados do MT4 diretamente da IRONFX com o método "Selected Timeframe Only". Os resultados foram ótimos e as estratégias entraram por stop. Em outros testes, usei dados de ticks da dukascopy e os resultados foram completamente diferentes. No manual, há uma seção onde está escrito
"Selected Timeframe only" (Período selecionado somente), juntamente com "Trade On Bar Open" (Comércio na abertura da barra), é o modo de teste mais rápido. Ele usa apenas o período de tempo principal para simular os preços.
Marca Fric
9 anos atrás #125894
Olá,
Sim, as ordens de parada e limite geralmente são preenchidas dentro da barra e, dependendo da sua estratégia, pode ser muito impreciso testá-la com a precisão do período de tempo selecionado.
As diferenças podem ser realmente muito grandes.
Recomendo que você use pelo menos 1 minuto, ou precisão de simulação de tick, e para os testes finais use dados reais de tick da Dukascopy.
Marcar
EstratégiaQuant arquiteto
SammyDoe
9 anos atrás #126928
Olá Mark,
Você poderia explicar a diferença entre "Selected Timeframe only" e "Trade on Bar open"?
Com "Selected Timeframe only" definido para a geração de estratégia em dados H1, há apenas negociações inseridas E fechadas na barra completa.
Isso significa, obviamente, que também o TP e o SL são executados somente em barras completas,
Eu esperava exatamente isso para "Negocie na abertura da barra".
Então, novamente... Qual é a diferença entre os dois modos?
Obrigado.
Matusiak Adrian
9 anos atrás #126930
Olá, Sammy,
Acho que "Selected Timeframe only" testa a abertura/fechamento/alta/baixa da barra, e "Trade on Bar open" testa somente a abertura do preço da barra.
Mas essa é apenas minha opinião - aguarde a resposta de Mark. Com certeza ele saberá melhor.
Marca Fric
9 anos atrás #127013
Sim, a diferença está no manuseio do Stop Loss, Profit Target.
A precisão do timeframe selecionado significa que ele usa o candle inteiro para determinar se o SL ou o PT foi atingido. Se, por exemplo, o SL for acionado dentro do candle, ele será ativado no nível de preço do SL.
Com a negociação na abertura da barra, ele verifica se o SL/PT é acionado somente na abertura da barra, de modo que sua negociação sairá pelo preço na abertura da barra, e não pelo nível exato do SL.
A negociação na abertura da barra é um modo muito especial e deve ser usado somente se você souber o que deseja.
Você deve usar a precisão do período de tempo selecionado para o backtesting padrão.
Marcar
EstratégiaQuant arquiteto
SammyDoe
9 anos atrás #127059
Mark, tudo bem.
Basicamente, eu consegui.
Mas então surge a pergunta: por que toda e qualquer negociação é fechada no horário integral para a geração de H1, mesmo que houvesse um SL ou TP dentro da barra?
Tudo isso com Precisão do período de tempo selecionado.
Isso se refere à lista de negociações das estratégias geradas.
Poderia isso deve ser considerado um bug na versão 3.7?
Matusiak Adrian
9 anos atrás #127067
Então... temos que usar "selected timeframe only" com "Enter at market" apenas?
Como fazer com que a estratégia abra ordens somente na nova barra? Temos que marcar apenas "Open" nos blocos de construção?
Marca Fric
9 anos atrás #127280
Sammy - isso é estranho, você poderia anexar uma estratégia (.str) aqui? Vou dar uma olhada nela, mas não acho que haja um bug no SQ.
Adrian - Não, você pode usar o período de tempo selecionado com qualquer tipo de ordem, mas se quiser abrir ordens na abertura de uma nova barra, deverá usar a opção Entrar no mercado. As ordens Stop/Limit podem abrir negociações também dentro da barra.
Marcar
EstratégiaQuant arquiteto
SammyDoe
9 anos atrás #127655
Ok Marc... um pouco atrasado, mas aqui estão os arquivos.
O chamado "Strategy1.2_selectedTimeframeOnly_precision.str" mostra todas as negociações fechadas sempre em horário integral (o que não é esperado),
Enquanto o arquivo "Strategy1.2_1min_precision.str" mostra negociações fechando com uma granularidade de minutos (o que é esperado).
Você poderia verificar essa inconsistência?
Edit: Btw. agora me parece que apenas o horário de fechamento informado está errado para 'selectedTimeframeOnly',
pois além dessa diferença todas as negociações são as mesmas em ambos os arquivos.
Mas, novamente, surge a pergunta: por que as negociações são exatamente as mesmas para os dois modos de precisão?
Qual é a diferença aqui?
Marca Fric
9 anos atrás #127909
O chamado "Strategy1.2_selectedTimeframeOnly_precision.str" mostra todas as negociações fechadas sempre em horário integral (o que não é esperado),
mas esse é o comportamento esperado. Com a precisão "Selected timeframe", o backtester não olha dentro das barras, portanto, não saberia quando exatamente o SL/TP foi acionado.
Ele só pode verificar se o SL/TP foi atingido nessa barra ou não, mas não quando exatamente, por isso ele usa tempos de barra completos.
Marcar
EstratégiaQuant arquiteto
Visualizando 9 respostas - 1 até 9 (de um total de 9)