Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 349
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
При инициализации сбрасывается всё, кроме Global Variables
И тут нужно уточнить, что GV - это переменные терминала, а не советника.
Начал читать и изучать. Теперь знаю что глобальные переменные и Global Variables разные вещи.
Кстати на счет ошибки 129, про которую у Вас так часто спрашивал. Дело в том, что у меня ДЦ пятизнак,
а советнике слипейдж 2, скорее всего поэтому советник за ценой не успевал. Теперь поставлю 15 пунктов.
И тут нужно уточнить, что GV - это переменные терминала, а не советника.
Ну я в том смысле, что советник с ними может работать, как раз для сохранения значений при инициализации (в том числе).
А если просто комп выключить или сервер вырубится на котором советник?
Тут интересно. Global Variables хранятся в кэше и при каких-то обстоятельствах пишутся в файл. Вроде как через определенное время или при деинициализации. При реальной работе бывали случаи, что при резкой перезагрузке компа просто терялся gvariables.dat (файл в котором хранятся значения Global Variables). Это нужно учитывать, при работе. Ну или просто они не успели прописаться на диск из кэша. Тоесть гарантий нет, что они уже на диске а не в кэше. Поправьте меня, если ошибаюсь.
Начал читать и изучать. Теперь знаю что глобальные переменные и Global Variables разные вещи.
Кстати на счет ошибки 129, про которую у Вас так часто спрашивал. Дело в том, что у меня ДЦ пятизнак,
а советнике слипейдж 2, скорее всего поэтому советник за ценой не успевал. Теперь поставлю 15 пунктов.
Врядли из-за этого. У меня на пятизнаке стоит 3. Всё открывается нормально. Насколько я помню, брокеры договорились что пункт - это всё же базовый пункт, принятый повсеместно (4-я цифра после нуля) а дробность пункта это дробность. Чтобы впоследствии при вводе 6,7 и 8-знака, каждый раз не менялся смысл понятия "пункт".
Тут интересно. Global Variables хранятся в кэше и при каких-то обстоятельствах пишутся на в файл. Вроде как через определенное время. При реальной работе бывали случаи, что при резкой перезагрузке компа просто терялся gvariables.dat (файл в котором хранятся значения Global Variables). Это нужно учитывать, при работе. Ну или просто они не успели прописаться на диск из кэша. Тоесть гарантий нет, что они уже на диске а не в кэше. Поправьте меня, если ошибаюсь.
Может можно попробовать записать ее, потом выключить комп. И при включении попробовать Alert вызвать, на предмет наличия. Хотя врать не буду, пока пользуюсь только статическими переменными и флагами и ничего точно сказать Global Variables про не могу.
Можно просто посмотреть в меню -> Сервис -> Глобальные переменные. Там есть список. Ну или GlobalVariableCheck-ом. Я по опыту понял, что лучше все сохранять в физический файл все же.
Найдите пожалуйста ошибки в моих рассуждениях.
Вот и заканчивается второй день, как я бьюсь над созданием индикатора, а именно над отображением линии на дополнительном окне, которое прикреплено к основному. Мое мнение, необходимо провести вычисления над не подсчитанными барами и дать значения результатов вычислений буферу. На этот раз, использую для примера более сложный код (мне приятно работать с относительно огромными кодами). Вот "полянка творчества" :
.
Хорошо видно, что "на данной поляночке" значение буфера равно "0", т.е. этот индикатор будет рисовать линию только с момента запуска торговой платформы. А мне нужны, помимо действительных данных, исторические.
Я использовал информацию, описанную в этом коде (взял из учебника по MQ4):
Вычленю надобное мне и получу...Затем, привожу к "парадному виду", удалив комментарии и разделив логически, получаю:
Вот и остался я с объектами, которые необходимо синтезировать с "главным" кодом. Выполнив слияние, получаю такой код:
Входе программирования, я декоративно изменил "главный" код и убрал некие значения из "придаточного". Запустив код в работу, обратил внимание на горизонтальную линию, которая свидетельствовала о ошибке в ходе рассуждений, ибо технические индикаторы, используемые в пользовательском индикаторе, не могут давать, на протяжении длительного промежутка времени, значения, выстроившие график функции " y = x ".Справка.
Зовут меня Джон (Евгений, но на Американский лад).
Мне 15 лет, занимаюсь трейдингом 5 день и чувствую огромный прогресс в изучении областей ведения валютного дилинга, а именно индикаторного анализа и графического анализа (короче, т.а. :) ).
Чувствую, что "ручной торг" становится все менее перспективным, потому решил сразу перейти на "автоматизированный торг".
"ПРИДЕРАЙТЕСЬ" КО ВСЕМ НЕАДЕКВАТНЫМ СУЖДЕНИЯМ! Я хочу знать больше, а ваши комментарии мне помогут.
Здравствуйте!
Найдите пожалуйста ошибки в моих рассуждениях.
Вот и заканчивается второй день, как я бьюсь над созданием индикатора, а именно над отображением линии на дополнительном окне, которое прикреплено к основному. Мое мнение, необходимо провести вычисления над не подсчитанными барами и дать значения результатов вычислений буферу. На этот раз, использую для примера более сложный код (мне приятно работать с относительно огромными кодами). Вот "полянка творчества" :
.
Хорошо видно, что "на данной поляночке" значение буфера равно "0", т.е. этот индикатор будет рисовать линию только с момента запуска торговой платформы. А мне нужны, помимо действительных данных, исторические.
Я использовал информацию, описанную в этом коде (взял из учебника по MQ4):
Вычленю надобное мне и получу...Затем, привожу к "парадному виду", удалив комментарии и разделив логически, получаю:
Вот и остался я с объектами, которые необходимо синтезировать с "главным" кодом. Выполнив слияние, получаю такой код:
Входе программирования, я декоративно изменил "главный" код и убрал некие значения из "придаточного". Запустив код в работу, обратил внимание на горизонтальную линию, которая свидетельствовала о ошибке в ходе рассуждений, ибо технические индикаторы, используемые в пользовательском индикаторе, не могут давать, на протяжении длительного промежутка времени, значения, выстроившие график функции " y = x ".Справка.
Зовут меня Джон (Евгений, но на Американский лад).
Мне 15 лет, занимаюсь трейдингом 5 день и чувствую огромный прогресс в изучении областей ведения валютного дилинга, а именно индикаторного анализа и графического анализа (короче, т.а. :) ).
Чувствую, что "ручной торг" становится все менее перспективным, потому решил сразу перейти на "автоматизированный торг".
"ПРИДЕРАЙТЕСЬ" КО ВСЕМ НЕАДЕКВАТНЫМ СУЖДЕНИЯМ! Я хочу знать больше, а ваши комментарии мне помогут.
Начяло хорошее.
Обрати внимание на переменную History, попробуй подставить другое значение.
Здравствуйте!
Найдите пожалуйста ошибки в моих рассуждениях.
Вот и заканчивается второй день, как я бьюсь над созданием индикатора, а именно над отображением линии на дополнительном окне, которое прикреплено к основному. Мое мнение, необходимо провести вычисления над не подсчитанными барами и дать значения результатов вычислений буферу. На этот раз, использую для примера более сложный код (мне приятно работать с относительно огромными кодами). Вот "полянка творчества" :
.
Хорошо видно, что "на данной поляночке" значение буфера равно "0", т.е. этот индикатор будет рисовать линию только с момента запуска торговой платформы. А мне нужны, помимо действительных данных, исторические.
Я использовал информацию, описанную в этом коде (взял из учебника по MQ4):
Вычленю надобное мне и получу...Затем, привожу к "парадному виду", удалив комментарии и разделив логически, получаю:
Вот и остался я с объектами, которые необходимо синтезировать с "главным" кодом. Выполнив слияние, получаю такой код:
Входе программирования, я декоративно изменил "главный" код и убрал некие значения из "придаточного". Запустив код в работу, обратил внимание на горизонтальную линию, которая свидетельствовала о ошибке в ходе рассуждений, ибо технические индикаторы, используемые в пользовательском индикаторе, не могут давать, на протяжении длительного промежутка времени, значения, выстроившие график функции " y = x ".Справка.
Зовут меня Джон (Евгений, но на Американский лад).
Мне 15 лет, занимаюсь трейдингом 5 день и чувствую огромный прогресс в изучении областей ведения валютного дилинга, а именно индикаторного анализа и графического анализа (короче, т.а. :) ).
Чувствую, что "ручной торг" становится все менее перспективным, потому решил сразу перейти на "автоматизированный торг".
"ПРИДЕРАЙТЕСЬ" КО ВСЕМ НЕАДЕКВАТНЫМ СУЖДЕНИЯМ! Я хочу знать больше, а ваши комментарии мне помогут.
Начинай копать в сторону циклов (for, wile, while do) на предмет зачем оно надо ваще )))
Если нужны значения на исторических данных - без перебора этих самых данных в цикле никак ;)
Выше давали пример с History, задающей кол-во баров истории, которые будут обработаны индикатором, вот от этого и пляши.
На картинке стрелкой обозначил, где должен быть выход. Не пойму в чем дело. Входим запоминаем время,
потом выходим когда время больше чем на входе со сдвигом на один период и цена ниже 3 дневной МА мин.
Код следующий:
Что подскажете?