O Assistente Especializado (Expert Advisor) ajusta automaticamente o Stop Loss da sua posição aberta, seguindo a borda do canal criado pelo ATR_Trailing. O Stop Loss é modificado apenas quando uma nova barra é formada, utilizando os dados da barra que acabou de fechar, caso contrário, ele permanecerá fixado ao preço atual.
Este Assistente também permite exibir o indicador diretamente no gráfico atual, dispensando a necessidade de instalação manual. Isso é bastante conveniente, pois o indicador aparece automaticamente assim que o Assistente é instalado no gráfico. Os parâmetros de entrada do indicador são sempre idênticos aos do Assistente.
Abaixo, você encontrará o código que possibilita essa funcionalidade:
//+------------------------------------------------------------------+ //| Inclusão da classe CChart no assistente | //+------------------------------------------------------------------+ #include <Charts\Chart.mqh> //---- declaração de uma variável global do tipo CChart CChart cchart; //+------------------------------------------------------------------+ //| Função de inicialização do assistente | //+------------------------------------------------------------------+ int OnInit() { //---- obtendo o handle do indicador ATR_Trailing InpInd_Handle=iCustom(Symbol(),PERIOD_CURRENT,"ATR_Trailing",Period_ATR,Sell_Factor,Buy_Factor); if(InpInd_Handle==INVALID_HANDLE) Print(" Falha ao obter o handle do indicador ATR_Trailing"); //--- redefinindo o código de erro para zero ResetLastError(); //--- o objeto cchart trabalha com o gráfico atual (ID=0), onde o assistente está anexado cchart.Attach(0); //---- adicionando o indicador ATR_Trailing no gráfico if(!cchart.IndicatorAdd(0,InpInd_Handle)) Print(" Falha ao adicionar o indicador ATR_Trailing no gráfico");
Parâmetros de entrada do Assistente Especializado:
//+----------------------------------------------+ //| Parâmetros de entrada do Assistente Especializado | //+----------------------------------------------+ input int Period_ATR=14; // Período do ATR input double Sell_Factor=2.0; input double Buy_Factor=2.0; input uint Deviation=10; // slippage
Imagem:

Gráfico de funcionamento do Exp_ATR_Trailing
Comentário 0