[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 51
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Я вкурсах насчет открытия ордера с помощу кода.
Мне другое нужно, созать полуавтоматическую систему со свойствами менеджмента.
Открываю вручную позицию но размер лота отслеживает советник и изменяет его по умолчанию в МТ (сервис\настройки\торговля\объем по умолчанию)
Это возможно зделать?
Нет. По крайней мере не на MQL4
Справочка подскажет:
double iWPR( string symbol, int timeframe, int period, int shift)
Следовательно, правильно будет:
ОГРОМНОЕ СПАСИБО!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Люди, а как в MACD вытащить время образования определенного столбца, не используя график цен?
Столбец соответствует времени образования бара на графике цен,
то есть нужно знать номер определённого бара.
а какие есть правила для оптимизации кода? интересуют правила написания, а не алгоритма.
чтобы выразиться точнее приведу пример:
есть два "одинаковых" скрипта:
и
первый быстрее второго в два раза. (у меня это 4 секунды)
понятно что массивы в сто миллионов используются нечасто :-) и в реальности выигрыш составит пару миллисекунд для обычного массива и и что основная проблема в корявых алгоритмах а не в подобных мелочах, но все же...
а какие есть правила для оптимизации кода? интересуют правила написания, а не алгоритма.
чтобы выразиться точнее приведу пример:
есть два "одинаковых" скрипта:
и
первый быстрее второго в два раза. (у меня это 4 секунды)
понятно что массивы в сто миллионов используются нечасто :-) и в реальности выигрыш составит пару миллисекунд для обычного массива и и что основная проблема в корявых алгоритмах а не в подобных мелочах, но все же...
Как таковых правил нет. То есть Вы можете писать так, как считаете нужным и это будет работать. С разной эффективностью, естественно.
Для каждой операции извстна ее стоимость во временном выражении - можете найти в стандартах языка, равно как и порядок работы циклов и прочих языковых конструкций (стандарт С - упоминаю так, как сомневаюсь, что Вы пытались разбираться, начиная с основ - производитель рекомендовал во всех неуказанных явно случаях обращаться именно к стандарту этого языка).
Во втором случае у Вас постоянно происходит вызов функции ArraySize(Massiv) - это самая дорогая по затратам операция (вызов функции - любой, а не конкретно этой), а операция сравнения вызывается на каждом цикле.
В таком варианте: цикл
for (int a=ArraySize(Massiv)-1;a>0;a--)
будет делать все то же самое, но на порядки быстрее. Имею ввиду организацию самого цикла. Если в цикле объемные вычисления, то разница не будет существенной.
Есть одно "но" - если Вы используете тестер или переобучаемые сети - там разница будет весьма существенной и будет проявляться весьма и весьма....
Да, еще один момент: у Вас ошибка в первом скрипте - выход за границы массива. Читайте руководства - там все написано. Правильно так :
int x=ArraySize(Massiv);
for (int a=0;a<x;a++)
Успехов.
Добрый день
Пожалуйста объясните как толоковать этот пассаж в учебнике про FileOpen
===
Содержание записей в файлах
При любой комбинации режимов записи данных заносятся в файл без промежутков. При формировании файлов в режиме FILE_BIN записи данных заносятся подряд. В зависимости от типа данных, записываемых в файл (и используемых для этого функций записи), между группами записей может прописываться комбинация символов конца строки ("\r\n"). При формировании файлов в режиме FILE_CSV записи данных отделяются файловым разделителем (обычно ';'), а группы записей (составляющих строки) разделяются с помощью комбинации символов конца строки ("\r\n").
===
с "int FileOpen(string filename, int mode, int delimiter=';') " все понятно
а куда ставить ("\r\n") ? можно ли пользоватся им при FILE_CSV ? дайте пример с ("\r\n") пожалуйста, туплю о.0
Добрый день
Пожалуйста объясните как толоковать этот пассаж в учебнике про FileOpen
===
Содержание записей в файлах
При любой комбинации режимов записи данных заносятся в файл без промежутков. При формировании файлов в режиме FILE_BIN записи данных заносятся подряд. В зависимости от типа данных, записываемых в файл (и используемых для этого функций записи), между группами записей может прописываться комбинация символов конца строки ("\r\n"). При формировании файлов в режиме FILE_CSV записи данных отделяются файловым разделителем (обычно ';'), а группы записей (составляющих строки) разделяются с помощью комбинации символов конца строки ("\r\n").
===
с "int FileOpen(string filename, int mode, int delimiter=';') " все понятно
а куда ставить ("\r\n") ? можно ли пользоватся им при FILE_CSV ?
Ни куда. В руководстве написано же ясным русским языком: "группы записей (составляющих строки) разделяются с помощью комбинации символов конца строки ("\r\n")".
подскажите, пжлст
в советнике несколько алертов стоят подряд в одном блоке, несколько подряд в другом блоке
на тесте в журнале ставятся не по порядку, а вразнобой - 2 алерта из первого блока, 3 из второго, потом 3 из первого и последние 2 из второго
поставил после каждого слип 500, то есть полсекунды и ничего - все также вразнобой и за 1 сек могут поставиться все 10
в чем причина?
как сделать так, чтобы алерты шли по порядку?