Errores, fallos, preguntas - página 1751

 
pako:
CHART_BRING_TO_TOP
Si no está en "TOP".
no. esta función muestra la ventana en la parte superior. pero no comprueba si hay una ventana en la parte superior
 
Vladislav Andruschenko:
no. esta función muestra la ventana en la parte superior. pero no comprueba si hay una ventana en la parte superior

ChartGetInteger()


https://www.mql5.com/ru/forum/42833#comment_1493908

allí

la ayuda no ha cambiado todavía, un año y medio no es un plazo :))

Активный, в данный момент график.
Активный, в данный момент график.
  • www.mql5.com
Есть индикатор на каждом графике.
 

Este no es el caso en absoluto. Un gráfico puede no estar en la parte superior pero ser visible. O puede estar en la parte superior pero invisible.

Dibujar en un gráfico sólo tiene sentido o no si se sabe si es visible o no.

 
fxsaber:

No es el caso en absoluto. Un gráfico puede no estar en la parte superior pero ser visible. O puede estar en la parte superior pero no ser visible.

Sólo tiene sentido dibujar en un gráfico si se sabe si es visible o no.

Prueba esto
 
fxsaber:

Este no es el caso en absoluto. Un gráfico puede no estar en la parte superior pero ser visible. O puede estar en la parte superior pero no ser visible.

Dibujar en un gráfico sólo tiene sentido o no si se sabe si es visible o no.

WinApi es su ayuda.
Allí puede obtener las coordenadas y el ancho de los gráficos, además de su orden z - todas las ventanas de los gráficos pertenecen al mismo WMIClient.
 
pako:
Prueba esto.
No encaja.
 
Sergey Dzyublik:
WinApi es su ayuda.
Allí puede obtener las coordenadas y el ancho de los gráficos, además de su orden z - todas las ventanas de los gráficos pertenecen al mismo WMIClient.
Gracias, ya conozco la WinAPI. Sugeriré al servicio de asistencia técnica que amplíe ENUM_CHART_PROPERTY_INTEGER.
 

Utilizo un script para llamar a los datos del periodo. Empezando por las cifras por hora, los números son incomprensibles. ¿O debería ser así?

void OnStart()
  {
Print("Period()=",Period());
  
  }
2016.11.01 16:56:07.466 период (EURUSD,H1)      Period()=16385
2016.11.01 16:55:58.840 период (EURUSD,M30)     Period()=30
2016.11.01 16:55:46.950 период (EURUSD,M1)      Period()=1
 
forexman77:

Utilizo un script para llamar a los datos del periodo. Empezando por las cifras por hora, los números son incomprensibles. ¿O debería ser así?

void OnStart()
  {
Print("Period()=",Period());
  
  }
2016.11.01 16:56:07.466 период (EURUSD,H1)      Period()=16385
2016.11.01 16:55:58.840 период (EURUSD,M30)     Period()=30
2016.11.01 16:55:46.950 период (EURUSD,M1)      Period()=1
Se supone que es así.
 

¿Es el enfoque correcto para medir los tiempos de vuelta completa en el flujo de indicadores actual?

#property indicator_chart_window

#property indicator_buffers 0
#property indicator_plots 0

sinput int Amount = 100; // Количество циклов

void OnInit( void )
{
  EventSetMillisecondTimer(1);
}

ulong ArrayMean( const ulong &Array[] )
{
  const int Size = ArraySize(Array);
  
  ulong Sum = 0;
  
  for (int i = 0; i < Size; i++)
    Sum += Array[i];
    
  return((Size > 0) ? Sum / Size : 0);
}

ulong ArrayMin( const ulong &Array[] )
{
  return(Array[ArrayMinimum(Array)]);
}

ulong ArrayMax( const ulong &Array[] )
{
  return(Array[ArrayMaximum(Array)]);
}

#define TOSTRING(A) #A + " = " + (string)(Array##A(Cycles)) + " mcs. "

void CycleComment( void )
{
  static ulong Cycles[];
  static const int Size = ArrayResize(Cycles, Amount);
  
  static ulong PrevTime = GetMicrosecondCount();
  static int i = 0;
    
  Cycles[i] = GetMicrosecondCount() - PrevTime;

  i++;
  i %= Size;
  
  Comment(TOSTRING(Mean) + TOSTRING(Min) + TOSTRING(Max));
    
  PrevTime = GetMicrosecondCount();
}

void OnTimer( void )
{
  CycleComment();
}

int OnCalculate( const int rates_total, const int prev_calculated, const int begin, const double& price[] )
{
  return(rates_total);
}

Algo que obtengo mucho en un gráfico vacío (sin indicadores) - una media de 15ms, un mínimo de 5ms. ¿Por qué es así?