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:
- 2837
- Avaliação:
- Publicado:
- 2018.05.25 13:14
-
Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance
O indicador é assim:
Para conseguir essa aparência visual, foram utilizados três tipos de plotagens:
- DRAW_HISTOGRAM2 ("Level UP");
- DRAW_LINE ("CCI");
- DRAW_HISTOGRAM2 ("Level DOWN").
Parâmetros de entrada do indicador
- Averaging period - período de média do indicador;
- Level UP - valor do nível UP;
- Level DOWN - valor do nível DOWN.
Neste caso, os níveis "UP" e "DOWN" serão exibidos imediatamente na sub-janela do indicador:
Como receber dados do indicador no EA
Como o estilo de plotagem DRAW_HISTOGRAM2 é construído em dois buffers de indicador, na janela "Data Window" vemos dois valores "Level UP" e dois valores "Level DOWN":
Esses valores correspondem aos buffers de indicador de "0" a "4".
No Expert Advisor criamos o identificador do indicador com ajuda de iCustom:
//--- input parameters input int Inp_CCI_ma_period = 14; // Averaging period input double Inp_CCI_LevelUP = 90; // Level UP input double Inp_CCI_LevelDOWN =-90; // Level DOWN //--- int handle_iCustom; // variable for storing the handle of the iCustom indicator //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { //--- create handle of the indicator iCCI handle_iCustom=iCustom(Symbol(),Period(),"CCI Color Levels",Inp_CCI_ma_period,Inp_CCI_LevelUP,Inp_CCI_LevelDOWN); //--- if the handle is not created if(handle_iCustom==INVALID_HANDLE) { //--- tell about the failure and output the error code PrintFormat("Failed to create handle of the iCCI indicator for the symbol %s/%s, error code %d", Symbol(), EnumToString(Period()), GetLastError()); //--- the indicator is stopped early return(INIT_FAILED); } //--- return(INIT_SUCCEEDED); }
Aqui assume-se que o indicador CCI Color Levels< está localizado na pasta [data folder]\MQL5\Indicators\.
Recebimento dos valores dos indicadores (apenas os buffers 0, 2 e 4 são valiosos):
//+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { //--- double level_up = iCustomGet(handle_iCustom,0,0); // buffer #0 -> BufferUpHigh double cci = iCustomGet(handle_iCustom,2,0); // buffer #2 -> BufferCCI double level_down = iCustomGet(handle_iCustom,4,0); // buffer #4 -> BufferDownLow string text="Lelev UP #0: "+DoubleToString(level_up,2)+"\n"+ "CCI #0: "+DoubleToString(cci,2)+"\n"+ "Lelev DOWN #0: "+DoubleToString(level_down,2); Comment(text); }
A captura de tela acima é tirada quando o mouse é definido para a barra com o índice "0", enquanto a janela "Data Windows" é mostrada com os dados do indicador e são exibidas no gráfico as informações do EA para os indicadores Nº 0, 2 e 4.
Traduzido do russo pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/ru/code/19704
![EasyAndFastGUI - biblioteca para criar interfaces gráficas do usuário](https://c.mql5.com/i/code/library.png)
Biblioteca EasyAndFastGUI possibilita a criação de interfaces gráficas para seus programas MQL.
![VR Orders History MT5 Lite](https://c.mql5.com/i/code/script.png)
VR Orders History MT5 Lite - script para download do histórico de transações em formato CSV.
![Reduce_risks](https://c.mql5.com/i/code/expert.png)
Versão MQL5 do Expert Advisor do artigo "Como reduzir os riscos do trader" (https://www.mql5.com/pt/articles/4233).
![ZigZagEvgeTrofi ver. 1](https://c.mql5.com/i/code/expert.png)
Sistema de negociação com base no indicador ZigZag.