Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Есть статья Параллельные вычисления в 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.
а смысл 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 разных цен.
Так что смысл есть даже в этом.
Там код то по сути простой, просто один цикл вложен в другой и все, скорее всего нагрузка сильная идет из-за большого числа индикаторов. Всего получается запускается 21*4*135=11340 индикаторов, видимо они и грузят сильно процессор.
спасибо за советы. Да все верно у меня ноут. Как раз подумываю прикупить хорошее железо. Кстати еще вопросик в каком формате сохранять файл? а то четверка у меня не хочет правильно его считывать
*.csv или *.txt. Тут все зависит для чего выгружаем и чем будем просматривать.
Для того чтобы четверка файл без проблем читала его нужно без Юникода выгрузить (четверка же про Юникодину даже не слышала, а тут на тебе.. :) )
Знаете старую шутку - как слона засунуть в холодильник? Порезать на кусочки и засунуть. Здесь также.
Во первых надо попробовать будет ли вообще работат обращение к такому большому количеству символов и таймфреймов. Для начала просто попробовать делать CopyClose(), если будет работать, надо писать код каждого индикатора, чтобы не считать индикаторы на всю длину. Если лень писать индикаторы, можно попробовать делать IndicatorRelease().
*.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.
мне кажеться поставить 32 битку
либо докупить ещё памяти
поставить хард на 7200!!!!
кодировку ставить лучше UTF-8
слабовата машинка для ваших запросов.
но хард определенно поставте побольше скорости