Como chamá-lo em seu EA?

//+------------------------------------------------------------------+ //|test_SDC.mq5 | //|Direitos autorais 2022, fxMeter | //| https://www.mql5.com/pt/users/fxmeter //+------------------------------------------------------------------+ #property copyright "Copyright 2022,fxMeter" #property link "https://www.mql5.com/pt/users/fxmeter" #property version "1.00" input int InputStarBar = 0;//StarBar input int InputCalcBars = 120;/Barras para cálculo input double f1=1.0;//Multiplicador de canal interno input double f2=2.0;/Multiplicador de canal externo int handle = -1; //+------------------------------------------------------------------+ //| Função de inicialização especializada| //+------------------------------------------------------------------+ int OnInit() { //--- //1.criar um identificador para StandardDeviationChannel handle = iCustom(Symbol(),PERIOD_CURRENT,"StandardDeviationChannel",InputStarBar,InputCalcBars,f1,f2); //2.verificar se o identificador foi criado com sucesso if(handle==INVALID_HANDLE)//falha { Alert("Create a handle to StandardDeviationChannel failed"); return(INIT_FAILED); } //--- return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Função de desinicialização de especialista| //+------------------------------------------------------------------+ void OnDeinit(const int reason) { //--- } //+------------------------------------------------------------------+ //| Função de tique de especialista| //+------------------------------------------------------------------+ void OnTick() { //--- double mid_right = GetBufferValue(0,InputStarBar); double top_right = GetBufferValue(1,InputStarBar); double btm_right = GetBufferValue(2,InputStarBar); double mid_left = GetBufferValue(0,InputStarBar+InputCalcBars-1); double top_left = GetBufferValue(1,InputStarBar+InputCalcBars-1); double btm_left = GetBufferValue(2,InputStarBar+InputCalcBars-1); Comment( "mid_left = ",d2s(mid_left)," , ","mid_right = ",d2s(mid_right),"\n", "top_left = ",d2s(top_left)," , ","top_right = ",d2s(top_right),"\n", "btm_left = ",d2s(btm_left)," , ","btm_right = ",d2s(btm_right) ); } //+------------------------------------------------------------------+ double GetBufferValue(int which_buffer,int which_bar) { double tmp[1]= {0}; CopyBuffer(handle,which_buffer,which_bar,1,tmp); return tmp[0]; } //+------------------------------------------------------------------+ //conversão de duplos para string string d2s(double x) { return DoubleToString(x,_Digits); }
Arquivos anexados:
test_SDC.mq5
3 kb
Indicators: Standard Deviation Channel MT4
- 2021.08.20
- www.mql5.com
Standard Deviation Channel MT4: Author: Ziheng Zhuang...
Seria ideal se houvesse uma versão com vários quadros de tempo
Incrível!!!
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Standard Deviation Channel MT5:
O canal é construído com base no desvio padrão do preço de fechamento
Autor: Ziheng Zhuang