Bom Dia.
Para conseguir os valores primeiro você tem que copiar os buffers do handle para uma variável.
Segue exemplo para o iMA. Adapte conforme os seus períodos.
double IMAArray[]; int IMADEF = iMA(_Symbol,_Period,2,0,MODE_EMA,PRICE_CLOSE); ArraySetAsSeries(IMAArray,true); CopyBuffer(IMADEF,0,0,1,IMAArray); double A0 = NormalizeDouble(IMAArray[0],2);
Ivan Ronchi:
Bom Dia.
Para conseguir os valores primeiro você tem que copiar os buffers do handle para uma variável.
Segue exemplo para o iMA. Adapte conforme os seus períodos.
Obrigado Ivan pela atenção.
Fiz assim para fazer a soma e subtração dos dois indicadores.
Teria outra forma de resolver?
ArraySetAsSeries(avgArray, true); ArraySetAsSeries(devArray, true); CopyBuffer(avgHandle, 0, 0, 5, avgArray); CopyBuffer(devHandle, 0, 0, 5, devArray); double smaxHandle_0 = avgArray[0] + devArray[0]; double sminHandle_0 = avgArray[0] - devArray[0]; double smaxHandle_1 = avgArray[1] + devArray[1]; double sminHandle_1 = avgArray[1] - devArray[1];
Marcelo,
Acho que ficou bom assim.

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
Olá pessoal.
Alguém saberia informar como faço para realizar soma de Handle?
Estou tentando fazer do modo clássico, porém o resultado não é o esperado.
avgHandle = iMA(Symbol(), Period(), 20, 0, MODE_EMA, PRICE_OPEN);
devHandle = iStdDev(Symbol(), Period(), avgHandle, 0, MODE_EMA, PRICE_OPEN);
smaxHandle = avgHandle + devHandle;
sminHandle = avgHandle - devHandle;
Grato pela atenção