SOMENTE LEITURA

O fórum agora é um arquivo somente para leitura.

Para relatórios de bugs e perguntas sobre a plataforma → [email protected]

Nossa comunidade vive no Discord e no YouTube - junte-se a nós!

JUNTE-SE A NÓS EM Discórdia YouTube

Espalhamento e Escorregamento para diferentes CFD's e testes de robustez.

4 respostas

TONY DAVIS

Assinante, bbp_participante, cliente, comunidade, sq-ultimate, 6 respostas.

Perfil da visita

3 anos atrás #280693

Olá a todos eu tenho algumas perguntas sobre spreads e deslizamentos para outras classes de ativos que não sejam Pares de Forex.

Por exemplo, eu tenho um teste de robustez onde eu uso o teste MonteCarlo Slippage de 0-5pips como um teste de robustez e outro que varia o spread de, digamos, 0-10 pips, dependendo do par de moedas que estou testando. Descobri que este é um grande teste para filtrar as estratégias ruins que não conseguem lidar com grandes escorregamentos e spreads.

Tenho me deparado com problemas ao desenvolver estratégias sobre CDF's XAUUSD e BTCUSD sobre dados Dukascopy. Por exemplo, o spread padrão de ouro no Duka's é de 60pips. Alguém sabe o que o média escorregamento em pips esperado na execução? Devo usar um múltiplo do spread padrão, digamos 160pips(2x spread padrão) slippage ou isto é para muito? Existe algum recurso onde eu possa encontrar valores de escorregamento estimados online para cada CFD ou alguém tem alguma informação sobre quais valores eu deveria usar?

Tenho o mesmo problema com os CFD's Bitcoin, pois seu spread é de 150pips padrão e o deslizamento em 1-10 pips não afeta em nada os backtests realmente.

Obrigado de antemão.

Tony.

0

Massimo Scapini

Assinante, bbp_participant, cliente, comunidade, sq-ultimate, 59 respostas.

Perfil da visita

3 anos atrás #280748

Pessoalmente, utilizo a seguinte idéia: em um cenário vivo, o deslize não deve ser maior que a faixa de preço de 1Min (Máx - Mín), com algumas exceções.

Seguindo esta idéia, calculei a média e o desvio padrão da faixa de preços (1 ano de 1 Min. de dados baixados do Dukas). Veja a tabela em anexo.

Em seguida, eu utilizo a seguinte fórmula para o teste MC:

Max slippage = Multiplier * (Avg(Max-Min) + 2 * Std Dev(Max-Min))

2*Std Dev cobre 95% das faixas de preço possíveis, assumindo uma Distribuição Gaussiana

Os multiplicadores são usados para afinar o teste "agressividade". Eu normalmente uso o 50% (que normalmente equivale a colocar o escorregamento na faixa de 2x - 3x Spread), mas eu o aumento/diminuição com base no % de estratégias que são descartadas pelo teste.

Pessoalmente, acredito que um teste mais preciso deveria acrescentar um deslizamento aleatório a cada comércio em vez de mudá-lo em cada corrida de MC, mas concordo que é uma boa maneira de testar a robustez de uma estratégia.

Espero que isto possa ajudar

NB. O método também pode ser tornado mais preciso calculando o Alcance Verdadeiro ao invés do simples Min-Max, mas eu preferi manter as coisas simples

 

Anexos:
Você deve ser logado para ver os arquivos anexos.

1

TONY DAVIS

Assinante, bbp_participante, cliente, comunidade, sq-ultimate, 6 respostas.

Perfil da visita

3 anos atrás #280840

Massimo agradece muito a sua ajuda.

Estou interessado em como você calcula o desvio padrão de spread e a média de 1 minuto de intervalo. Isto é feito através do SQX ou você está usando algum outro software?

Eu gostaria de realizar alguns testes por conta própria usando este método em outros pares que você não tem em sua lista.

0

Massimo Scapini

Assinante, bbp_participant, cliente, comunidade, sq-ultimate, 59 respostas.

Perfil da visita

3 anos atrás #280842

O cálculo da faixa de 1M é fácil. Basta baixar o período desejado (eu uso 1 ano) de dados Dukascopy 1Min usando o Sqx Data Manager, carregá-los no Excel e calcular a média e o desvio padrão de (máx - min) de cada barra.

Eu tomo a chanche para sugerir um método similar para estimar os multiplicadores ATR se você usar perdas de parada baseadas na volatilidade e metas de lucro. Neste caso, você deve baixar e calcular nos mesmos prazos que você usa para negociar.

Para os spreads você tem que usar os dados de seu corretor. Se seu corretor publicar o uso médio de spread que para os testes padrão e usar um multiplicador do padrão para a simulação MC (eu uso 2). Meu corretor não publica mais a média para o padrão, eu pego o alvo que eles publicam e o multipliquei por 1,5.

Para ser mais preciso, você deve obter dados de seu corretor (o que pretendo fazer mais cedo ou mais tarde). Para isso, você pode encontrar EAs simples na Web (se você usar Metatrader, você pode encontrar um exemplo em anexo)

Desejo-lhe um alto fator de lucro!

Anexos:
Você deve ser logado para ver os arquivos anexos.

1

Massimo Scapini

Assinante, bbp_participant, cliente, comunidade, sq-ultimate, 59 respostas.

Perfil da visita

1 ano atrás #288509

Tornei o exercício anterior mais preciso, baixando dados de ticks do MT5 em vez de usar dados M1.

É impossível usar dados de um ano (ou mais) por meio do Excel (podem ser vários milhões de linhas!), por isso escrevi um script gawk simples que pode ser executado também no ambiente Windows se você baixar o programa (ele não é nativo do Windows).

Es:

gawk -f CalculateSpreadAndSlippage.txt -v TickSize=0.01 Palladium.csv

Você recebe

================= Palladium.csv ==================
80 dias 624455/624375 Ticks de spread/slippage analisados

Spread mínimo: 0,750000 75,0 Pips
Spread médio: 2,057152 205,7 pips
Sigma Spread : 0.463115 46.3 Pips

Deslizamento mínimo: 0,000000 0,0 Pips
Deslizamento médio: 0.270144 27.0 Pips
Sigma Slippage : 0.273029 27.3 Pips

Você pode usar esses dados para simulações e testes de robustez de MC.

Por exemplo

  • Use 205 para Spread e 27 para Slippage no Builder
  • Use de 75 a 343 para simulações de Spread MC (de min a avg + 3 * Sigma)
  • Use de 0 a 108 para simulações de Slippage MC (de min a avg + 3 * Sigma)

 

 

Anexos:
Você deve ser logado para ver os arquivos anexos.

1

Visualizando 4 respostas - 1 até 4 (de um total de 4)