Problemas para operar robôs scalp no mini-dólar - página 2

 
Trader_Patinhas:

Sério? Essa eu nunca tinha reparado!!!

Em ativos de baixa liquidez isso pode dar resultados extremamente distorcidos, pois o LAST pode estar muito acima ou muito abaixo do valor atual de BID/ASK.

Olá bom dia!

vai mais além disso, pois os  backtests e otimizações de estratégias vão exibir resultados com compras feitas em LAST=BID e as vendas feitas em LAST=ASK. Não importa a liquidez a distorção do resultado é gritante. 

 
Sugiro a leitura do artigo abaixo.
The Mathematics of Scalping
The Mathematics of Scalping
  • Jonathan
  • jonathankinlay.com
NOTE: if you are unable to see the Mathematica models below, you can download the free Wolfram CDF player and you may also need this plug-in. You can also download the complete Mathematica CDF file here. In this post I want to explore aspects of scalping, a type of strategy widely utilized by high frequency trading firms. I will define a...
 
Joscelino Celso de Oliveira:
Sugiro a leitura do artigo abaixo.

Ótimo artigo Joscelino Celso de Oliveira, obrigado por compartilhar.
Sds.,
Rogério Figurelli

 
Joscelino Celso de Oliveira:
Sugiro a leitura do artigo abaixo.

Excelente artigo, @Joscelino Celso de Oliveira.

Confirmou teoricamente algumas intuições e observações experimentais minhas e ainda abriu minha cabeça para algumas ideias novas.

Vou estudar os outros artigos desse autor também!

Muitíssimo obrigado por compartilhar. Valeu muito! 

 
Rogerio Giannetti Torres:

Olá bom dia!

vai mais além disso, pois os  backtests e otimizações de estratégias vão exibir resultados com compras feitas em LAST=BID e as vendas feitas em LAST=ASK. Não importa a liquidez a distorção do resultado é gritante. 

Oi @Rogerio Giannetti Torres

Vc está se referindo ao testador de estratégias, certo?

Porque na conta demo ele vai considerar que o negócio foi fechado pelo valor da ordem (no caso de ordem limite) ou pelo valor bid/ask (no caso da ordem a mercado), certo?

 
Trader_Patinhas:

Oi @Rogerio Giannetti Torres

Vc está se referindo ao testador de estratégias, certo?

Porque na conta demo ele vai considerar que o negócio foi fechado pelo valor da ordem (no caso de ordem limite) ou pelo valor bid/ask (no caso da ordem a mercado), certo?

Opa, não vi a pergunta.

Em DEMO(*) todas as operações são feitas pelo último negócio e não pela oferta bid/ask!  Bem fácil de testar, abra BGI ou ICF ou SJC veja os preços  last/bid/ask,  abra uma posição a mercado, tanto faz de compra ou de venda a ordem será executada pelo preço last.

Para mim, esse é principal motivo da divergência de resultado do robô rodando em  DEMO e rodando em conta REAL. Isso também responde o porquê do otimizador de estratégia furar tanto. Pois é só imaginar a quantidade posições com lucro das compras abertas com last=bid  e das vendas aberta com last=ask.  

(*) Não sei isso é uma característica do MT5 DEMO para bolsa de valores ou se todas as nossas corretoras implantaram o MT5 DEMO da mesma forma!

 
Rogerio Giannetti Torres:

Opa, não vi a pergunta.

Em DEMO(*) todas as operações são feitas pelo último negócio e não pela oferta bid/ask!  Bem fácil de testar, abra BGI ou ICF ou SJC veja os preços  last/bid/ask,  abra uma posição a mercado, tanto faz de compra ou de venda a ordem será executada pelo preço last.

Para mim, esse é principal motivo da divergência de resultado do robô rodando em  DEMO e rodando em conta REAL. Isso também responde o porquê do otimizador de estratégia furar tanto. Pois é só imaginar a quantidade posições com lucro das compras abertas com last=bid  e das vendas aberta com last=ask.  

(*) Não sei isso é uma característica do MT5 DEMO para bolsa de valores ou se todas as nossas corretoras implantaram o MT5 DEMO da mesma forma!

Isso explica porque quase toda estratégia de micro-scalping que eu testo dá lucros gigantescos na conta demo e depois dá prejuízo na conta real, kkk !!!

 
Trader_Patinhas:

Excelente artigo, @Joscelino Celso de Oliveira.

Confirmou teoricamente algumas intuições e observações experimentais minhas e ainda abriu minha cabeça para algumas ideias novas.

Vou estudar os outros artigos desse autor também!

Muitíssimo obrigado por compartilhar. Valeu muito! 

https://en.wikipedia.org/wiki/Skew_normal_distribution


Eu uso isso.

Skew normal distribution - Wikipedia
Skew normal distribution - Wikipedia
  • en.wikipedia.org
Skew Normal Parameters Support PDF CDF Mean Mode Variance Skewness Ex. kurtosis MGF CF where "erf" is the error function. Then the probability density function (pdf) of the skew-normal distribution with parameter is given by This distribution was first introduced by O'Hagan and Leonard (1976). Approximations to this distribution that are easier...
 
Rogerio Giannetti Torres:

Opa, não vi a pergunta.

Em DEMO(*) todas as operações são feitas pelo último negócio e não pela oferta bid/ask!  Bem fácil de testar, abra BGI ou ICF ou SJC veja os preços  last/bid/ask,  abra uma posição a mercado, tanto faz de compra ou de venda a ordem será executada pelo preço last.

Para mim, esse é principal motivo da divergência de resultado do robô rodando em  DEMO e rodando em conta REAL. Isso também responde o porquê do otimizador de estratégia furar tanto. Pois é só imaginar a quantidade posições com lucro das compras abertas com last=bid  e das vendas aberta com last=ask.  

(*) Não sei isso é uma característica do MT5 DEMO para bolsa de valores ou se todas as nossas corretoras implantaram o MT5 DEMO da mesma forma!

Existem muito mais furos do que você conseguirá imaginar... Ainda estou pensando se vou dizer que "furos" são esses...

 
Rogerio Giannetti Torres:

Opa, não vi a pergunta.

Em DEMO(*) todas as operações são feitas pelo último negócio e não pela oferta bid/ask!  Bem fácil de testar, abra BGI ou ICF ou SJC veja os preços  last/bid/ask,  abra uma posição a mercado, tanto faz de compra ou de venda a ordem será executada pelo preço last.

Para mim, esse é principal motivo da divergência de resultado do robô rodando em  DEMO e rodando em conta REAL. Isso também responde o porquê do otimizador de estratégia furar tanto. Pois é só imaginar a quantidade posições com lucro das compras abertas com last=bid  e das vendas aberta com last=ask.  

(*) Não sei isso é uma característica do MT5 DEMO para bolsa de valores ou se todas as nossas corretoras implantaram o MT5 DEMO da mesma forma!

Olá  Rogerio Giannetti Torres, boas observações e perguntas, vou tentar contribuir com meus dois centavos nesse assunto, que me parece de alta relevância para quem acredita no potencial dos recursos de conta demo e backtesting, como meu caso. Na verdade, com a entrada forte da inteligência artificial no mercado, não consigo imaginar um robô alpha sem explorar fortemente esses recursos.

Bem, antes de mais nada, note-se que no mercado Forex não existe o preço Last. Na verdade, provavelmente por isso, esse preço nem existia quando se começou a testar o MT5 na B3, em 2014, sendo justamente um problema que foi demandado por mim e outros pioneiros naquela época, tanto para o fabricante quanto para as corretoras. Pouco tempo depois a plataforma teve a significativa evolução de trabalhar com recursos de DOM, com a entrada do preço Last. Vários desses recursos já foram implantados dentro de padrões mundiais, o que facilitou a entrada do MT5 em vários outros mercados, de forma diferente das plataformas nacionais, muitas vezes amarradas a questões e recursos tipicamente regionais.

Entretanto, acredito que a maior divergência esteja no fato de que o pessoal busca estratégias operando no limite, típicas de scalpers, esperando que o backtesting vá gerar resultados realistas sem nenhuma alteração no EA, justamente em um ambiente onde a plataforma ainda necessita de uma série de melhorias — ainda que se perceba várias ações nesse sentido —  para alinhamento com o funcionamento real das bolsas de forma simulada, e onde o escorregamento de preços (slippage) é extremamente complexo de ser simulado em qualquer plataforma (ainda mais agora, com a entrada do RLP no mercado). Ou seja, um bom robô hoje, independentemente de plataforma, tem que estar de olho no peixe e no gato, como se diz popularmente, e não adianta jogar a responsabilidade em A ou B, mas sim trabalhar para ter uma arquitetura própria que transforme esses problemas em oportunidades e diferencial competitivo. Mas esse é assunto para outra thread específica.

Voltando ao mundo real, outro problema que vejo seguidamente no fórum é a confusão que se faz em relação ao que é exatamente o preço Last, apesar desse nome (último) ser exatamente o que ele representa em uma bolsa: o preço da última negociação de qualquer instrumento, ou seja, o preço de mercado. Em outras palavras, no mercado de ações, é justamente o preço do último negócio, que determina justamente a cotação atual de qualquer ativo. Nesse caso, o último preço representa exatamente o alinhamento do maior preço que algum trader estava disposto a pagar por uma ação (ou seja, o Bid) com o menor preço que algum trader estava disposto a vender uma ação (ou seja, o Ask). Após esse negócio (ou vários outros nas mesmas condições), evidentemente os preços são mantidos dentro de um spread, que é a diferença a ser vencida novamente para a formação de um novo preço de mercado.

Dito isso, minha visão é que se o robô for bem projetado, levando em conta os limites da estrutura de geração de ticks do MT5, e mais recentemente a tecnologia de testes com ticks reais, a qualidade da operação em conta demo e backtesting, em comparação com a operação real, pode aumentar significativamente. O problema é que a maior parte desses preços são apenas uma simulação e não reais, e aí começa o desafio!

Quem desejar se aprofundar nisso, recomendo os dois artigos abaixo:

The algorithm of ticks' generation within the strategy tester of the Metatrader 5 terminal
https://www.mql5.com/en/articles/75

Testing trading strategies on real ticks
https://www.mql5.com/en/articles/2612

Seja como for, acredito que a evolução necessária no MT5 é justamente permitir que recursos como Livro/DOM sejam utilizados no backtesting, o que é extremamente complexo pelo grande volume de dados, mas que se justifica com o recurso de simulação em Cloud.

Enquanto isso não acontecer, me parece que o mais prudente é criar soluções de contorno nos algoritmos buscando emular com a maior precisão possível, dentro dos limites da arquitetura da plataforma, o que acontece de fato no mercado real.

Sds.,
Rogério Figurelli

The Algorithm of Ticks' Generation within the Strategy Tester of the MetaTrader 5 Terminal
The Algorithm of Ticks' Generation within the Strategy Tester of the MetaTrader 5 Terminal
  • www.mql5.com
The MetaTrader 5 terminal contains an integrated development environment for the development of fully automated strategies (trading robots), which can perform trading without any human intervention. Another name for these trading robots is Expert Advisors. Expert Advisors and technical indicators for the MetaTrader 5 terminal are written using...
Razão: