Errores, fallos, preguntas - página 1758

 
-Aleks-:

Si cambio de perfil en MT4 y luego vuelvo, cuando el mercado está cerrado la CPU empieza a cargar mucho - hasta un 5%, después un 18-25%.

Tenía la sensación de que había algo que no funcionaba bien en el compilador, porque cuando ejecuto la compilación .mq5ME se me cuelga y si ejecuto la compilación .mqh me sale una palabrota en el compilador )))) Y en el choque aparece un archivo enorme !!! que se actualiza constantemente. No hay virus a excepción de Win 8.1x64 OS sí mismo, sin antivirus en una máquina en absoluto, ya que sólo MT5 va en línea, y el propio sistema operativo a su repositorio.

Por cierto para tematizar la respuesta de Renat sobre las milésimas de pruebas - antes de escribir una pregunta hago la misma comprobación de cosas similares en diferentes SO y máquinas )) si el resultado se confirma, hago una pregunta, si no, empiezo a indagar en el problema yo mismo.

 

No puedo averiguar cuál es el problema - si es con el indicador, o el Asesor Experto, o el visualizador).

Para ello, el indicador sólo tiene la misma configuración, el marco de tiempo es el mismo.


Código del Asesor Experto

#property strict
input string   Symbol1="EURUSD";
input int Per=14;  
double buf[];
int handle_1,copied1;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---

handle_1=iCustom(Symbol(),PERIOD_CURRENT,"test ma",Symbol1,Per);
ArrayInitialize(buf,0);
   return(INIT_SUCCEEDED);
  }
//+---------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  Comment("");
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---

  copied1=CopyBuffer(handle_1,0,0,4,buf);
  Comment("Индикатор 3 = ",buf[3]);
}  

//+------------------------------------------------------------------+
//| Trade function                                                   |
//+------------------------------------------------------------------+
void OnTrade()
  {
//---

  }
//+------------------------------------------------------------------+

código indicador

#property indicator_separate_window
//---- количество индикаторных буферов 2
#property indicator_buffers 3
//---- использовано всего одно графическое построение
#property indicator_plots   1
//+----------------------------------------------+
//|  объявление констант                         |
//+----------------------------------------------+
#define RESET 0 // Константа для возврата терминалу команды на пересчёт индикатора
//+----------------------------------------------+
//|  Параметры отрисовки индикатора              |
//+----------------------------------------------+
#property indicator_type1   DRAW_HISTOGRAM
#property indicator_color1  clrPlum
//+----------------------------------------------+
//| Входные параметры индикатора                 |
//+----------------------------------------------+
input string Symb1="EURUSD";
input int Per=14;                        
int Shift=0;                              
//+----------------------------------------------+
//---- объявление динамических массивов, которые будут в
// дальнейшем использованы в качестве индикаторных буферов
double Buffer1[];
double Buffer2[];
double Buffer3[],Buffer4[],Buffer5[];
//---- Объявление целых переменных начала отсчёта данных
int min_rates_total;
//---- Объявление целых переменных для хранения хендлов индикаторов
int Handle1,Handle2;
double buf1[],buf2[],close1[],close2[],buf4[];
int closed1,closed2;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+  
int OnInit()
  {
//---- Инициализация переменных начала отсчёта данных
   min_rates_total=Per+1;

//--- получение хендла индикатора Fast iCCI
   Handle1=iMA(Symb1,PERIOD_CURRENT,Per,0,0,0);
   if(Handle1==INVALID_HANDLE)
     {
      Print(" Не удалось получить хендл индикатора");
      return(INIT_FAILED);
     }

//---- превращение динамического массива в индикаторный буфер
   SetIndexBuffer(1,Buffer1,INDICATOR_DATA);
   SetIndexBuffer(0,Buffer3,INDICATOR_DATA);
   SetIndexBuffer(2,buf1,INDICATOR_DATA);
//---- осуществление сдвига индикатора 1 по горизонтали на Shift
   PlotIndexSetInteger(0,PLOT_SHIFT,Shift);
//---- осуществление сдвига начала отсчёта отрисовки индикатора 1 на min_rates_total
   PlotIndexSetInteger(0,PLOT_DRAW_BEGIN,min_rates_total);
      IndicatorSetInteger(INDICATOR_DIGITS,_Digits);
//--- завершение инициализации
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(
                const int rates_total,    // количество истории в барах на текущем тике
                const int prev_calculated,// количество истории в барах на предыдущем тике
                const datetime &time[],
                const double &open[],
                const double& high[],     // ценовой массив максимумов цены для расчёта индикатора
                const double& low[],      // ценовой массив минимумов цены  для расчёта индикатора
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[]
                )
  {
//---- объявления локальных переменных
   int to_copy;
  
//---- расчёты необходимого количества копируемых данных
   if(prev_calculated>rates_total || prev_calculated<=0)// проверка на первый старт расчёта индикатора
     {
      to_copy=rates_total; // стартовый номер для расчёта всех баров
     }
   else to_copy=rates_total-prev_calculated+1; // стартовый номер для расчёта новых баров

      int first,bar;
      if(CopyBuffer(Handle1,0,0,to_copy,Buffer1)<=0) return(RESET);
      if(CopyClose(Symb1,0,0,to_copy,buf1)<=0) return(RESET);
    
//---- расчёт стартового номера first для цикла пересчёта баров
   if(prev_calculated>rates_total || prev_calculated<=0) // проверка на первый старт расчёта индикатора
      first=min_rates_total; // стартовый номер для расчёта всех баров
   else first=prev_calculated-1; // стартовый номер для расчёта новых баров

//---- Основной цикл расчёта индикатора
   for(bar=first; bar<rates_total ; bar++)
   {
   Buffer3[bar]=Buffer1[bar] - buf1[bar];
   }
  
//----    
   return(rates_total);
  }
//+------------------------------------------------------------------+
Archivos adjuntos:
test.mq5  11 kb
 

La ventana de cotizaciones se colapsa cuando se minimiza el terminal. Este no debería ser el caso.

 
Vladimir Pastushak:

La ventana de cotizaciones se colapsa cuando se minimiza el terminal. Este no debería ser el caso.

La propagación siempre se ha marcado así (!) en MT... Quién sabe por qué, quizás para ahorrar espacio... ¿qué (?) si el valor de la propagación es más largo que "!" ...
 

¿Puede alguien decirme si el tamaño de la RAM (subrayado en rojo) es correcto?

Datos del portátil antes de la reparación:

2013.04.28 01:26:54     OpenCL  Device #2: GPU NVIDIA Corporation GeForce 610 M with OpenCL 1.1 (1 units, 950 MHz, 2047 Mb, version 305.46)
2013.04.28 01:26:54     OpenCL  Device #1: GPU Intel(R) Corporation Intel(R) HD Graphics 4000 with OpenCL 1.1 (16 units, 350 MHz, 1624 Mb, version 9.17.10.2828)
2013.04.28 01:26:54     OpenCL  Device #0: CPU Intel(R) Corporation  Intel(R) Core(TM) i5-3210 M CPU @ 2.50 GHz with OpenCL 1.1 (4 units, 2500 MHz, 6029 Mb, version 1.1)

entregado el portátil para su reparación, después de la reparación dijo que desde la fábrica se instaló la memoria (todos sus 6 gb) no es compatible (el de 4 gb) con el tipo de procesador.

¿puede ser que el tamaño de la memoria se especifique normalmente, pero en realidad debido a la incompatibilidad con el tipo de procesador no estaba involucrado?

 
Alexandr Bryzgalov:

Entregué mi portátil para que lo repararan, después de la reparación me dijeron que la memoria (sólo 6gb) venía instalada de fábrica y no era compatible (la de 4gb) con el tipo de procesador.

Normalmente TODOS los sistemas y seguro que todos los portátiles son probados en fábrica y la posibilidad de que la fábrica haya instalado hardware incompatible... es muy muy muy improbable...
 
ivanivan_11:
Normalmente TODOS los sistemas y seguro que los portátiles son probados en fábrica y las posibilidades de que el hardware instalado en fábrica sea incompatible... es muy muy muy improbable...
por alguna razón, me siento igual, siento que estoy siendo... yo
 
Alexandr Bryzgalov:
Por alguna razón me siento igual, siento que estoy siendo... yo
Pues bien, sucede de diferentes maneras, como resulta: hay smartphones de marca que explotan desde la fábrica. Y sobre el ordenador - un montón de factores no saben - si alguien había hurgado en el portátil antes de la venta (hay reacondicionamiento, devoluciones), qué tipo de portátil, qué sistema operativo, etc. - todo lo cual puede afectar a la disponibilidad de la memoria.
 
Alexandr Bryzgalov:

¿Puede alguien decirme si el tamaño de la RAM (subrayado en rojo) es correcto?

Datos del portátil antes de la reparación:

2013.04.28 01:26:54     OpenCL  Device #2: GPU NVIDIA Corporation GeForce 610 M with OpenCL 1.1 (1 units, 950 MHz, 2047 Mb, version 305.46)
2013.04.28 01:26:54     OpenCL  Device #1: GPU Intel(R) Corporation Intel(R) HD Graphics 4000 with OpenCL 1.1 (16 units, 350 MHz, 1624 Mb, version 9.17.10.2828)
2013.04.28 01:26:54     OpenCL  Device #0: CPU Intel(R) Corporation  Intel(R) Core(TM) i5-3210 M CPU @ 2.50 GHz with OpenCL 1.1 (4 units, 2500 MHz, 6029 Mb, version 1.1)

dio el portátil para la reparación, después de la reparación dijo que desde la fábrica se instaló la memoria (sólo su 6gb) no es compatible (el de 4gb) con el tipo de procesador.

¿Es posible que el tamaño de la memoria se indique como normal pero no se utilice debido a la incompatibilidad con el tipo de procesador?

La memoria puede entrar en conflicto con la placa base. Y, si la bios detectó la memoria como presente, está ahí, pero puede no funcionar de forma estable.

El menor tamaño de la memoria, supongo, se debe a que la memoria se exprime para la tarjeta de vídeo - algunas tarjetas integradas hacen esto ya que no tienen memoria propia.

 

¿Cómo se encuentran las señales que tienen?

Слишком большой прирост за последний месяц говорит о высоком риске

Razón de la queja: