- iAC
- iAD
- iADX
- iADXWilder
- iAlligator
- iAMA
- iAO
- iATR
- iBearsPower
- iBands
- iBullsPower
- iCCI
- iChaikin
- iCustom
- iDEMA
- iDeMarker
- iEnvelopes
- iForce
- iFractals
- iFrAMA
- iGator
- iIchimoku
- iBWMFI
- iMomentum
- iMFI
- iMA
- iOsMA
- iMACD
- iOBV
- iSAR
- iRSI
- iRVI
- iStdDev
- iStochastic
- iTEMA
- iTriX
- iWPR
- iVIDyA
- iVolumes
Funções Indicadores Técnicos
Todas as funções, como iMA, iAC, iMACD, iIchimoku etc, tem uma cópia do indicador técnico correspondente criada no cache global do terminal do cliente. Se uma cópia do indicador com esses parâmetros já existe, a nova cópia não é criada, e o contador de referências para a cópia existente aumenta.
Essas funções retornam o manipulador da cópia apropriada do indicador. Além disso, usando este manipulador, você pode receber os dados calculados pelo indicador correspondente. Os dados do buffer correspondentes (indicadores técnicos contêm dados calculados nos seus buffers internos, que podem variar de 1 a 5, dependendo do indicador) podem ser copiados para um programa de MQL5 utilizando a função CopyBuffer().
Você não pode consultar os dados do indicador diretamente após ter sido criado, porque o cálculo de valores dos indicadores requer algum tempo, por isso é melhor criar o indicador manipulando em OnInit(). A Função iCustom() cria o indicador personalizado correspondente, e retorna seu manipulador no caso de ser criado com êxito. Indicadores personalizadas podem conter até 512 buffers de indicador, o conteúdo do qual pode também ser obtida através da função CopyBuffer(), usando o manipulador obtido.
Existe um método universal para a criação qualquer indicador técnico usando a função IndicatorCreate(). Esta função aceita os seguintes dados como parâmetros de entrada:
- Nome do símbolo;
- timeframe;
- tipo de indicador para criar;
- número de parâmetros de entrada do indicador;
- um array do tipo MqlParam contendo todos os parâmetros de entrada necessários.
A memória do computador pode ser liberada a partir de um indicador que não é mais utilizado, usando a função IndicatorRelease(),onde o manipulador de indicador é transmitido.
Nota. Chamada repetida da função do indicador com os mesmos parâmetros dentro de um MQL5-programa não resulta num aumento múltiplo do contador de referência, o contador será aumentado apenas uma vez por 1. No entanto, é recomendado obter os manipuladores de indicadores em função OnInit() ou no construtor da classe, e ainda utilizar estes manipuladores em outras funções. O contador de referência diminui quando um MQL5-programa é desinicializado.
Todas as funções de indicador tem pelo menos dois parâmetros - o símbolo e o período. O NULL Valor do símbolo significa o símbolo corrente, o valor 0 (zero) do período significa o prazo corrente.
Função |
Retorna o manipulador do indicador: |
---|---|
Accelerator Oscillator |
|
Accumulation/Distribution |
|
Average Directional Index |
|
Average Directional Index by Welles Wilder |
|
Alligator |
|
Adaptive Moving Average |
|
Awesome Oscillator |
|
Average True Range |
|
Bears Power |
|
Bollinger Bands® |
|
Bulls Power |
|
Commodity Channel Index |
|
Chaikin Oscillator |
|
Custom indicator |
|
Double Exponential Moving Average |
|
DeMarker |
|
Envelopes |
|
Force Index |
|
Fractals |
|
Fractal Adaptive Moving Average |
|
Gator Oscillator |
|
Ichimoku Kinko Hyo |
|
Market Facilitation Index by Bill Williams |
|
Momentum |
|
Money Flow Index |
|
Moving Average |
|
Moving Average of Oscillator (MACD histogram) |
|
Moving Averages Convergence-Divergence |
|
On Balance Volume |
|
Parabolic Stop And Reverse System |
|
Relative Strength Index |
|
Relative Vigor Index |
|
Standard Deviation |
|
Stochastic Oscillator |
|
Triple Exponential Moving Average |
|
Triple Exponential Moving Averages Oscillator |
|
Williams' Percent Range |
|
Variable Index Dynamic Average |
|
Volumes |