Participe de nossa página de fãs
Coloque um link para ele, e permita que outras pessoas também o avaliem
Avalie seu funcionamento no terminal MetaTrader 5
- Visualizações:
- 1407
- Avaliação:
- Publicado:
- 2014.01.14 13:24
- Atualizado:
- 2016.11.22 07:33
-
Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance
Quando é utilizado gráficos de texto nos indicadores, muitas vezes é necessário implementar a possibilidade de alterar o tipo de fonte nos parâmetros de entrada do indicador.
A solução mais óbvia em tal caso é que se introduza um nome da fonte manualmente como uma linha nos parâmetros de entrada, porém, ela não é muito conveniente e é propensa a erros. Um método mais eficiente é utilizar as variáveis personalizadas baseado em enumerações e lista de menu suspensas. O módulo da função apresentada é projetada para resolver esta tarefa.
Um exemplo é o suficiente para ser capaz de trabalhar com a biblioteca. Suponha que temos o indicador (ChartInfo_Old.mq5) que exibe um rótulo de texto em um dos cantos do gráfico. Aqui estão seus parâmetros de entrada:
//+----------------------------------------------+ //| Parâmetros de entrada do indicador | //+----------------------------------------------+ input string Text="Real"; // Conteúdo do rótulo texto input color TextColor=Red; // Cor do rótulo de texto input int FontSize=24; // Tamanho da fonte input type_font FontType=Font7; // Tipo da fonte input ENUM_BASE_CORNER WhatCorner=CORNER_LEFT_LOWER; // Localização do canto input uint Y_=1; // Localização vertical
Com esse código a janela de parâmetros de entrada do indicador terá o seguinte aspecto:
Para liberar o usuário da necessidade de inserir manualmente um nome de fonte devemos inserir algumas alterações no código:
1. Adicione o conteúdo do arquivo GetFontName.mqh antes da declaração dos parâmetros de entrada do indicador com a ajuda da diretiva #include:
//+----------------------------------------------+ // type_font Descrição da enumeração | // CFontName Descrição da classe | //+----------------------------------------------+ #include <GetFontName.mqh>
2. Substitua a linha de FontType dos parâmetros de entrada:
input string FontType="Courier New"; // Tipo da fonte
pela linha
input type_font FontType=Font7; // tipo da fonte
Assim, nós mudamos um pouco o significado do uso da variável. Deve-se notar que o significado da variável anterior na nova variável String deve ser declarada a nível global
string sFontType;
Então, a variável FontType do código do indicador deve ser substituída por sFontType. Isso deve ser feito apenas em um lugar:
SetTLabel(0,"Info_Label",0,WhatCorner,ENUM_ANCHOR_POINT(2*WhatCorner),5,Y_,Text,TextColor,sFontType,FontSize);
Agora, a variável sFontType deve ser inicializada no bloco OnInit() . Que pode ser feito com apenas algumas linhas de código:
CFontName FONT; sFontType=FONT.GetFontName(FontType);
O indicador ChartInfo.mq5, após sua revisão, deve ser compilado.
Agora você pode ver as mudanças na janela dos parâmetros de entrada do indicador:
Agora, trabalhar com fontes nos parâmetros de entrada do indicador se tornou muito mais conveniente.
Traduzido do russo pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/ru/code/644
![IncCMOOnArray](https://c.mql5.com/i/code/library.png)
A classe CMOOnArray foi projetada para calcular os valores de CMO (Chande Momentum Oscillator) em buffers de indicadores. O exemplo de utilização da classe CMOOnArray é apresentado.
![X2MA_HTF_Signal](https://c.mql5.com/i/code/indicator.png)
X2MA_HTF_Signal exibe a direção da tendência das três últimas barras do indicador X2MA como três objetos gráficos, cujas cores determinam a direção da tendência.
![XdinMA](https://c.mql5.com/i/code/indicator.png)
Média móvel calculada usando uma simples combinação algébrica de outras duas médias móveis de diferentes períodos. Este indicador permite que você selecione um dos dez tipos de suavização disponíveis.
![IncERDOnArray](https://c.mql5.com/i/code/library.png)
A classe CERDOnArray foi projetada para calcular o Índice de Eficiência (ER) utilizada na Média Móvel Adaptativa (AMA), considerando a direção do movimento dos preços. Quando o preço está se movendo para cima o indicador possui valores positivos, caso ele esteja se movendo para baixo, seus valores são negativos.