[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 1075

 

Hola a todos. Necesito un histograma de impulso. Me preguntaba si alguien podría darme un histograma.

Gracias.

 
fozi:

Hola a todos. Necesito un histograma de impulso. Me preguntaba si alguien podría darme un histograma.

Gracias.

https://www.mql5.com/ru/forum/111497/page1075
Línea o histograma, no cambia el punto, excepto visualmente.
 
Eso es lo que estoy diciendo, se necesitan visuales
 
fozi:
Eso es lo que estoy diciendo, se necesitan visuales
Archivos adjuntos:
 

¿Es correcta esta función que detecta un movimiento excesivo?

extern int CandleVolume=60 - si el tamaño de la vela anterior es superior a 60 pips

------ función que comprueba el volumen de la vela anterior

int ComprobarVolumen()
{

int volumen=MathAbs(Normal izeDouble(Low[1],Digits)-NormalizeDouble(High[1],Digits));

if (volume <= CandleVolume) return (1);

if (volume > CandleVolume) return (-1);

}

-------- compruebe al inicio lo siguiente

if(CalculateCurrentOrders(Symbol())==0 && CheckVolume()==1)

{CheckForOpen();}

 

Otra pregunta: estoy intentando comprobar la barra anterior. Comprobación de compra - La demanda es mayor que el máximo de la barra anterior + el diferencial. Comprobación de venta - La oferta es inferior al mínimo de la barra anterior menos el diferencial. ¿Cómo de correcta es esta función? Por desgracia, no funciona.

int CheckBar()
{
double Spread=MarketInfo(Symbol(),MODE_SPREAD);
doble PrecioCompra=Pregunta;
doble PrecioVenta=Oferta;
if(PrecioVenta<(Mínimo[1]-Distribución)) return(-1);
if(PrecioCompra>(Alto[1]+Spread)) return(1);
}
 
dzhini:

Otra pregunta: estoy intentando comprobar la barra anterior. Comprobación de compra - La demanda es mayor que el máximo de la barra anterior + el diferencial. Comprobación de venta - La oferta es inferior al mínimo de la barra anterior menos el diferencial. ¿Cómo de correcta es esta función? Por desgracia, no funciona.


int CheckBar(){   
   double Spread=MarketInfo(Symbol(),MODE_SPREAD);   
   double PriceBuy=Ask;   
   double PriceSell=Bid;   
   if(PriceSell   < (Low[1]  - Spread*Point)) return(-1);   
   if(PriceBuy  > (High[1] + Spread*Point)) return(1);
   return(0);
}
 
dzhini:

Otra pregunta: estoy intentando comprobar la barra anterior. Comprobación de compra - La demanda es mayor que el máximo de la barra anterior + el diferencial. Comprobación de venta - La oferta es inferior al mínimo de la barra anterior menos el diferencial. ¿Cómo de correcta es esta función? Por desgracia, no funciona.

Yo no usaría la extensión en absoluto, ya que a menudo flota...
 
Vinin:

Muchas gracias. Está funcionando. Va a mi base de conocimientos )))) Por favor, aconseja qué hacer con la función que define el tamaño de la vela anterior.

extern int CandleVolume=60 - si el tamaño de la vela anterior es superior a 60 pips

------ función que comprueba el volumen de la vela anterior

int ComprobarVolumen()
{

int volumen=MathAbs(Normal izeDouble(Low[1],Digits)-NormalizeDouble(High[1],Digits));

if (volume <= CandleVolume) return (1);

if (volume > CandleVolume) return (-1);

}

-------- compruebe al inicio lo siguiente

if(CalculateCurrentOrders(Symbol())==0 && CheckVolume()==1)

{CheckForOpen();}

 
AlexSTAL:
Yo no usaría los spreads en absoluto, porque suelen flotar...


Esto no es un problema. Con cada tic solicitamos un nuevo spread, y el problema está resuelto - siempre tendremos un spread fresco en cada tic. Si trabaja en una empresa de corretaje con spreads flotantes, no estaría de más pedir un minivel con cada tick.

SPR=MarketInfo(Symbol(),MODE_SPREAD);
MinLevel=MarketInfo(Symbol(),MODE_STOPLEVEL);