Discussão do artigo "Desenvolvendo um sistema de Replay — Simulação de mercado (Parte 05): Adicionando Previas"

 

Novo artigo Desenvolvendo um sistema de Replay — Simulação de mercado (Parte 05): Adicionando Previas foi publicado:

Vamos continuar nosso projeto. Agora iremos adicionar dados de forma a ter um comportamento melhor do replay.

Pense no seguinte: Você tem em arquivo todos os ticks de negociação executados em um dia qualquer. Mas apenas utilizando o conteúdo deste arquivo, você não irá conseguir, fazer com que nenhum indicador, lhe diga algo realmente útil. Mesmo que você utilize uma média móvel de 3 períodos, por exemplo, que é justamente a usada no sistema JOE DI NAPOLI. De fato, nenhuma indicação lhe será dada, seja ela de entrada ou saída, antes que no mínimo, 3 barras tenham sido criadas. Somente neste ponto, é que a média irá aparecer no gráfico. Em termos de praticidade, este sistema até o atual momento, é algo completamente inútil e inviável.

Pense só no fato, de você desejar fazer estudos em um tempo gráfico de 5 minutos. Você terá que esperar 15 minutos, para que a média móvel de 3 períodos, simplesmente venha a aparecer no gráfico. E mais outros tantos minutos, para que alguma indicação útil, possa de fato surgir. Ou seja, o sistema precisa ser atualizado, e a forma como fazer esta atualização, será o tema deste artigo.

No vídeo abaixo, você pode ver o sistema funcionando, onde será demonstrado como é possível adicionar indicadores diversos ao sistema de replay.



Autor: Daniel Jose

 

Olá Daniel, primeiro lugar te parabenizar, cada dia você se supera mais. rsrsrs

o conteúdo que traz é riquíssimo, com técnica e excelência na criação de cada linha. sempre procurando fazer da melhor forma. 

Parabéns mesmo. 

Rapaz eu confesso que a programação em mql5 esta sendo muito difícil. eu consigo me virar em visual.net com o básico.

mas aqui não consegui fazer nada mais "sério". tentei até pegar a parte do tape reading do seu projeto mas não funcionou aqui. acredito que tenho que fazer e rever o projeto inteiro. 

é que na correria a gente sempre acaba tentando só a parte que queremos e ai vem os problemas. rsrsr.


estou tentando fazer um EA. mas estou com problema numa variavel, gostaria de saber se pode me ajudar. 

nessa parte do codigo passa   

IndicatorSetDouble(INDICATOR_LEVELVALUE, 0, 100);

mas nessa parte da erro dizendo que tem que ser double

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 1, (double) open_price);

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 2, (double) high_price);

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 3, (double) low_price);

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 4, (double) close_price);

as variaveis foram declaradas como double até forcei ai mas continua dando erro. 

ja tentei INDICATOR_DATA no lugar do INDICATOR_CALCULATIONS e continua dando erro.

pedi para mostrar na tela e as variaveis estão carregando corretamente com valores double.

33573.43 33573.44 33569.979999999996 33569.99


desculpe incomodar, nem sei se poderia colocar aqui

se puder me ajudar ficarei muito grato. 

Anderson.

 
napalermo #:

Olá Daniel, primeiro lugar te parabenizar, cada dia você se supera mais. rsrsrs

o conteúdo que traz é riquíssimo, com técnica e excelência na criação de cada linha. sempre procurando fazer da melhor forma. 

Parabéns mesmo. 

Rapaz eu confesso que a programação em mql5 esta sendo muito difícil. eu consigo me virar em visual.net com o básico.

mas aqui não consegui fazer nada mais "sério". tentei até pegar a parte do tape reading do seu projeto mas não funcionou aqui. acredito que tenho que fazer e rever o projeto inteiro. 

é que na correria a gente sempre acaba tentando só a parte que queremos e ai vem os problemas. rsrsr.


estou tentando fazer um EA. mas estou com problema numa variavel, gostaria de saber se pode me ajudar. 

nessa parte do codigo passa   

IndicatorSetDouble(INDICATOR_LEVELVALUE, 0, 100);

mas nessa parte da erro dizendo que tem que ser double

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 1, (double) open_price);

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 2, (double) high_price);

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 3, (double) low_price);

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 4, (double) close_price);

as variaveis foram declaradas como double até forcei ai mas continua dando erro. 

ja tentei INDICATOR_DATA no lugar do INDICATOR_CALCULATIONS e continua dando erro.

pedi para mostrar na tela e as variaveis estão carregando corretamente com valores double.

33573.43 33573.44 33569.979999999996 33569.99


desculpe incomodar, nem sei se poderia colocar aqui

se puder me ajudar ficarei muito grato. 

Anderson.

Duas coisas:

Primeiro: Quando for postar um código, faça isto usando ALT + S, assim o código fica mais evidente para que possamos entender que é código e não comentário ... A coisa toda irá se apresentar da seguinte forma para todos:

IndicatorSetDouble(INDICATOR_LEVELVALUE, 0, 100);

Assim ficará bem mais simples de entender ...👍

Segundo: Você está tentando fazer um código de Expert Advisor ou um Indicador ?!!?🤨🤨 ... Pois não entendi o que você está tentando fazer ...

 
Daniel Jose #:

Duas coisas:

Primeiro: Quando for postar um código, faça isto usando ALT + S, assim o código fica mais evidente para que possamos entender que é código e não comentário ... A coisa toda irá se apresentar da seguinte forma para todos:

Assim ficará bem mais simples de entender ...👍

Segundo: Você está tentando fazer um código de Expert Advisor ou um Indicador ?!!?🤨🤨 ... Pois não entendi o que você está tentando fazer ...


ok, 

IndicatorSetDouble(INDICATOR_LEVELVALUE, 0, 100);

mas nessa parte da erro dizendo que tem que ser double

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 1, (double) open_price);

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 2, (double) high_price);

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 3, (double) low_price);

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 4, (double) close_price);

ja tentei INDICATOR_DATA no lugar do INDICATOR_CALCULATIONS e continua dando erro.

pedi para mostrar na tela e as variaveis estão carregando corretamente com valores double.

33573.43 33573.44 33569.979999999996 33569.99


ok, obrigado pela ajuda vou sempre fazer isso com códigos. 

estou criando um EA.

na realidade é para ser um gráfico atemporal montado por preço.

 
napalermo #:


ok, 

ja tentei INDICATOR_DATA no lugar do INDICATOR_CALCULATIONS e continua dando erro.

pedi para mostrar na tela e as variaveis estão carregando corretamente com valores double.

33573.43 33573.44 33569.979999999996 33569.99


ok, obrigado pela ajuda vou sempre fazer isso com códigos. 

estou criando um EA.

na realidade é para ser um gráfico atemporal montado por preço.

Leia esta parte da documentação : https://www.mql5.com/pt/docs/runtime/running, isto vai ajudar a você entender por que esta dando errado ...😁👍

Documentação sobre MQL5: Programas MQL5 / Execução de Programa
Documentação sobre MQL5: Programas MQL5 / Execução de Programa
  • www.mql5.com
Execução de Programa - Programas MQL5 - Referência MQL5 - Referência sobre algorítimo/automatização de negociação na linguagem para MetaTrader 5