У кого мощное железо? Помогите протестировать код. - страница 2

 
C-4:

Есть статья Параллельные вычисления в MetaTrader 5 штатными средствами там как раз рассматривается вариант многопоточных вычислений с помощью индикаторов.

Железо откровенно слабое. Если не ошибаюсь eMachines - это нетбук. На таком железе даже полноценно Windows XP гонять нельзя, а вы хотите 11 340 индикаторов. Если занимаетесь серьезными вычислениями, то ваш выбор однозначен - мощный midi-tower сервер на базе последних камней Intel или AMD. Например шестиядерный Phenom II будет очень хорош. По моему опыту гонять ресурсоемкие вычисления на маломощных камнях - ужас. У меня индивидульный сервер на базе маломощного Atom N-510 и более быстрый AMD Phenom x3 710. Так вот, разница в производительности раз в 8! Пока Atom на своих "четырех" ядрах просчитает 4 прогона, АМД сделает их штук 30-35.  

спасибо за советы. Да все верно у меня ноут. Как раз подумываю прикупить хорошее железо. Кстати еще вопросик в каком формате сохранять файл? а то четверка у меня не хочет правильно его считывать
 
Konstantin83:

а смысл 60 раз в минуту проверять цену закрытия? (минутный таймфрейм)

код оптимизировать не пробовали? 

         BB_handle[i][n]=iBands(SymbolName(i,true),TF(n),90,0,2,PRICE_CLOSE);
         RSI_handle[i][n]=iRSI(SymbolName(i,true),TF(n),14,PRICE_CLOSE);
         MACD_handle[i][n]=iMACD(SymbolName(i,true),TF(n),12,26,9,PRICE_CLOSE);
         ST_handle[i][n]=iStochastic(SymbolName(i,true),TF(n),5,3,3,MODE_SMA,STO_LOWHIGH); 

а если взять старшие таймфремы? вы цену закрытия дневки в холостую гоняете...

Если глубже копнёте mql то поймёте что запросив 60 раз за минуту цену закрытия днёвки нулевого бара получите 60 разных цен.

Так что смысл есть даже в этом.

 
sergey1294:
Там код то по сути простой, просто один цикл вложен в другой и все, скорее всего нагрузка сильная идет из-за большого числа индикаторов. Всего получается запускается 21*4*135=11340 индикаторов, видимо они и грузят сильно процессор.
Может попробовать воткнуть в один из циклов sleep(0), или sleep(1)?
 
sergey1294:
спасибо за советы. Да все верно у меня ноут. Как раз подумываю прикупить хорошее железо. Кстати еще вопросик в каком формате сохранять файл? а то четверка у меня не хочет правильно его считывать

*.csv или *.txt. Тут все зависит для чего выгружаем и чем будем просматривать.

Для того чтобы четверка файл без проблем читала его нужно без Юникода выгрузить (четверка же про Юникодину даже не слышала, а тут на тебе.. :) )


 

Знаете старую шутку - как слона засунуть в холодильник? Порезать на кусочки и засунуть. Здесь также.

Во первых надо попробовать будет ли вообще работат обращение к такому большому количеству символов и таймфреймов. Для начала просто попробовать делать CopyClose(), если будет работать, надо писать код каждого индикатора, чтобы не считать индикаторы на всю длину.  Если лень писать индикаторы, можно попробовать делать IndicatorRelease().

 
Interesting:

*.csv или *.txt. Тут все зависит для чего выгружаем и чем будем просматривать.

Для того чтобы четверка файл без проблем читала его нужно без Юникода выгрузить (четверка же про Юникодину даже не слышала, а тут на тебе.. :) )


я имел ввиду какой флаг ставить при сохранении файла

Встроенные константы кодовых страниц

Константа

Значение

Описание

CP_ACP

0

Текущая кодовая страница ANSI кодировка в операционной системе Windows

CP_OEMCP

1

Текущая кодовая страница OEM.

CP_MACCP

2

Текущая кодовая страница Macintosh.

Примечание: Это значение преимущественно используется в ранее созданных программных кодах и теперь в нем нет необходимости, так как современные компьютеры Macintosh используют Unicode кодировку.

CP_THREAD_ACP

3

Кодировка Windows ANSI для текущего потока выполнения.

CP_SYMBOL

42

Кодовая страница Symbol

CP_UTF7

65000

Кодовая страница UTF-7.

CP_UTF8

65001

Кодовая страница UTF-8.

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Использование кодовой страницы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Использование кодовой страницы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы ввода/вывода / Использование кодовой страницы - Документация по MQL5
 

мне кажеться поставить 32 битку 

либо докупить ещё памяти 

поставить хард на 7200!!!!

 

кодировку ставить лучше  UTF-8 

 

слабовата машинка для ваших запросов.

но хард определенно поставте побольше скорости

  

Причина обращения: