// Definir macros de sequenciamento do ciclo OnCalculate #ifdef __MQL4__ // para MQL4 (como séries) #define MOnCalcNext( _index ) ( _index-- ) #define MOnCalcBack( _index, _offset ) ( _index + _offset ) #define MOnCalcCheck( _index ) ( _index >= 0 ) #define MOnCalcValid( _index ) ( _index < rates_total ) #define MOnCalcStart \ ( rates_total - ( prev_calculated < 1 ? 1 : prev_calculated ) ) #else // para MQL5 (como não-série) #define MOnCalcNext( _index ) ( _index++ ) #define MOnCalcBack( _index, _offset ) ( _index - _offset ) #define MOnCalcCheck( _index ) ( _index < rates_total ) #define MOnCalcValid( _index ) ( _index >= 0 ) #define MOnCalcStart \ ( prev_calculated < 1 ? 0 : prev_calculated - 1 ) #endif
Por que você não está usando o ArraySetAsSeries()? Isso permitiria usar as mesmas macros nas duas versões da linguagem.
Não estou criticando, só estou curioso.
Acho que é simplesmente mais prático para você.
Eu opto por usar macros para que a decisão seja tomada em tempo de compilação, em vez de usar o ArraySetAsSeries(), que é executado em tempo de execução, em busca de um pouco mais de eficiência.
Nesse caso, como se trata de um indicador muito simples, isso realmente não faz muita diferença, mas para indicadores muito mais complexos, pode fazer.
Optei por usar macros para que a decisão seja tomada na fase de compilação, em vez de usar o ArraySetAsSeries(), que é executado em tempo de execução, com o objetivo de obter um pouco mais de eficiência.
Nesse caso, como se trata de um indicador muito simples, isso realmente não faz muita diferença, mas, para indicadores muito mais complexos, pode fazer.
Obrigado!
De nada!
Eu estava pesquisando como são feitos os cálculos para o Heiken-Ashi e, em relação aos máximos, eles explicam que se trata do “valor máximo entre a alta, a abertura ou o fechamento do período atual” e, “para os mínimos”, do “valor mínimo entre a baixa, a abertura ou o fechamento do período atual”. Isso não é o mesmo que dizer que as máximas e mínimas coincidem com as barras? Se for assim, sua ideia de mostrá-las como linhas é simples e brilhante: dá para ver a tendência do Heiken-Ashi à primeira vista, sem abrir mão das velas normais.
Tradução automática aplicada pelo moderador. No fórum em inglês, por favor, escreva em inglês.
Na maioria das vezes, sim, mas quando a abertura do Heikin Ashi (média móvel) está além da máxima/mínima da vela normal, então essa passa a ser a máxima/mínima do Heikin Ashi.
Peço desculpas, mas não entendi muito bem o que você quis dizer com sua postagem. Você poderia explicar melhor?
Acho que seu código é muito bom e poderoso. Não baixei o mq5.
Com o código para o MT4 que você compartilhou, basta copiar e colar no MetaEditor MQL5 e salvar como mq5, e tudo funciona perfeitamente.
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Heikin Ashi Lines:
Uma maneira mais simples de exibir o Heikin Ashi
Author: FMIC