Почему увеличиваеться нагрузка на компьютер? - страница 2

 
Значит причина в другом...
Посмотрите первый пост Рената в этой ветке ;)
 
komposter писал (а):
Значит причина в другом...
Посмотрите первый пост Рената в этой ветке ;)

Смотри следуйщий пост, там индюк прикреплен.
 
ustim писал (а):
1.вынес инициализацию в глобалку индикатора.
2.присвоения вынес в инит()
3.никаких изменений в скорости отработки не заметил
4.при переключении с между М1и М5 задержка 1-1,5 с. (отрабатываются все бары)
5.Машина - Р 2,4Г, 1Г мозгов
эт я к тому, шо мне кацца, шо проблема не в алгоритме, а вне его. ..
 
ustim писал (а):
ustim писал (а):
1.вынес инициализацию в глобалку индикатора.
2.присвоения вынес в инит()
3.никаких изменений в скорости отработки не заметил
4.при переключении с между М1и М5 задержка 1-1,5 с. (отрабатываются все бары)
5.Машина - Р 2,4Г, 1Г мозгов
эт я к тому, шо мне кацца, шо проблема не в алгоритме, а вне его. ..

Я на периоды обратил внимание потому, что такие же задержки были с ипользованием другого индюка с таким же куском кода.
 
Смотри следуйщий пост, там индюк прикреплен.

Сорри, не обратил внимания )
Когда он выложен в виде текста, вероятность того, что кто-то посмотрит, намного больше ;)
 
Похоже, что забыли про вопрос: "Какова глубина истории в барах?"
Если там пара сотня тысяч баров, то тормоза потенциально могут быть.

Даже без оптимизации cпециально погонял у себя на EURUSD H1, 16000 баров, переключаясь на разные периоды.
Максимальная загрузка прыгала от 0 до 3%. То есть, практический ноль.

Попробуйте провести собственные исследования - может что-то другое тормозит работу?
 
Renat:
Похоже, что забыли про вопрос: "Какова глубина истории в барах?"
Если там пара сотня тысяч баров, то тормоза потенциально могут быть.

Даже без оптимизации cпециально погонял у себя на EURUSD H1, 16000 баров, переключаясь на разные периоды.
Максимальная загрузка прыгала от 0 до 3%. То есть, практический ноль.

Попробуйте провести собственные исследования - может что-то другое тормозит работу?

Макс баров в истории: 128000
Макс баров в окне: 32768

Задержка между соседними ТФ не очень значительна, а вот если переключаешься с H1 на M1, тогда прицессор загружаеться на 30-35%, и ждать приходиться 2-3 сек.
 
ExpertTrader:
Renat:
Похоже, что забыли про вопрос: "Какова глубина истории в барах?"
Если там пара сотня тысяч баров, то тормоза потенциально могут быть.

Даже без оптимизации cпециально погонял у себя на EURUSD H1, 16000 баров, переключаясь на разные периоды.
Максимальная загрузка прыгала от 0 до 3%. То есть, практический ноль.

Попробуйте провести собственные исследования - может что-то другое тормозит работу?

Макс баров в истории: 128000
Макс баров в окне: 32768

Задержка между соседними ТФ не очень значительна, а вот если переключаешься с H1 на M1, тогда прицессор загружаеться на 30-35%, и ждать приходиться 2-3 сек.
Интересует загруженное количество баров.
Посмотрите в HistoryCenter - там пишется количество загруженных баров по каждому графику. Сколько баров на H1 и M1?

Да и вынесите блок выбора коэффициента за пределы цикла вычислений:
int start()
  {
   int i,counted_bars=IndicatorCounted();
//----
   i=Bars-counted_bars-1;
 
   switch(Period())
     {
      case PERIOD_M1:  qwerty=1440;   break;
      case PERIOD_M5:  qwerty=288;    break;
      case PERIOD_M15: qwerty=96;     break;
      case PERIOD_M30: qwerty=48;     break;
      case PERIOD_H1:  qwerty=24;     break;
      case PERIOD_H4:  qwerty=6;      break;
      case PERIOD_D1:  qwerty=1;      break;
      case PERIOD_W1:  qwerty=0.25;   break;
      case PERIOD_MN1: qwerty=0.0417; break;
      default:         qwerty=24;
     }
   while(i>=0)
     {
      double MALONG = iMA(NULL,0,LONG,0,MODE_EMA,PRICE_CLOSE,i);
      double MALONG2 = iMA(NULL,0,LONG,0,MODE_EMA,PRICE_CLOSE,i+SHORT-1);
      double MASHORT = iMA(NULL,0,SHORT,0,MODE_EMA,PRICE_CLOSE,i);
      double MASHORT2 = iMA(NULL,0,SHORT,0,MODE_EMA,PRICE_CLOSE,i+SHORT-1);
      double RAZNICA = MathAbs(MathAbs(MALONG-MASHORT)-MathAbs(MALONG-MASHORT2));
      double RAZNICA2 = MathAbs(MALONG-MASHORT)+MathAbs(MALONG2-MASHORT2)/2;
      double PERCENT = RAZNICA*100*((MALONG+MALONG2)/2)*RAZNICA2;
      if(MathAbs(MALONG-MASHORT)-MathAbs(MALONG-MASHORT2)<0){int ZNAK=-1;}else{ZNAK=1;}
      ExtMapBuffer1[i]=PERCENT*qwerty/24*ZNAK;
      ExtMapBuffer2[i]=((MASHORT-MALONG)+(MALONG-MALONG2))*qwerty/24;
      i--;
     }
//----
   return(0);
  }
 

M1 - 1608 записей.
M5 - 749 записей.
M15 - 2303 записи.
M30 - 1409 записей.
H1 - 960 записей.

 
ExpertTrader:

M1 - 1608 записей.
M5 - 749 записей.
M15 - 2303 записи.
M30 - 1409 записей.
H1 - 960 записей.

Тут тормозить точно негде.
Проведите эксперимент, пожалуйста: закройте все остальные окна, удалите все другие индикаторы, оставьте только одно окно и один индикатор. Обязательно перезагрузите терминал и потестируйте снова.
Причина обращения: