Hola Compañero,
Hay varias cosas en este trocito de código que yo miraría:
1.- Estás declarando la variable "Volumes" dentro del "if". Si deseas tener un acceso más amplio a esta variable, la podrías declarar antes del "if", y dentro del "if" solo usarla. Incluso si necesitas que tenga vigencia en todo el experto, la puedes declarar en la zona de cabecera del EA después de las variables externalizadas con "extern" (después de los parámetros).
2.- Ten en cuenta que la función "iVolume()" de mql, es de tipo "long", con lo que siempre es recomendable declarar la variable que contendrá el dato devuelto del mismo tipo. El tipo "long" es un derivado más ámplio que el tipo "int" (puede contener enteros mayores). En el caso del volumen no va a ser problema, en la mayoría de casos, que uses tipo "int", pero para evitar futuros
errores es recomendable usar el mismo tipo en la variable que el tipo de dato que retorna la función.
3.- Por último solo avisarte que para capturar el volumen de una hora/minuto concreto, debes tener en cuenta que en mql la fecha queda asignada a la
vela al inicio de ésta según el timeframe, no cuando se cierra la vela, por lo que lo correcto es consultar su volumen una vez la vela ha cerrado. Por ejemplo: Si quieres saber el volumen de la hora: 08:00 en un gráfico de H1, debes consultarlo a las 09:00, que es cuando la vela de las 08:00 se habrá cerrado, quedando guardado el total del tick volumen generado durante la vida de la vela de las 08:00. Con el trocito de código que pones no puedo ver si lo estás usando como te digo o no, o que intención persigues, por eso te lo comento. Usar la función "ivolume", con el índice de vela 0, te devuelve el volumen que se va acumulando tick a tick en la vela 0 (vela en construcción).
Ánimos, y sigue adelante.
Salu2