Пытаюсь вытащить данные из буферов потому что не получается из файлов
Буферов может быть больше -часть в окне данных может быть запрещен функцией: SetIndexLabel(1, NULL); Посмотрите содержимое буферов с нулевого по десятый. Посмотрите, соответствуют ли получаемые Вами значения и видимы. Мышиный курсор подводите к тому бару, номер которого стоит в функции iCustom. Проверьте, кок зависит результат функции от количества параметров (параметры по умолчанию). Для ускорения процесса на время отладки используйте скрипт и функцию Alert вместо записи в файл. В начале скрипта поставьте Alert("---------------------") отчеркнет последние выведенные на экран значения. В общем, это очень увлекательно и интересно и есть в чем покопаться
Буферов может быть больше -часть в окне данных может быть запрещен функцией: SetIndexLabel(1, NULL); Посмотрите содержимое буферов с нулевого по десятый. Посмотрите, соответствуют ли получаемые Вами значения и видимы. Мышиный курсор подводите к тому бару, номер которого стоит в функции iCustom. Проверьте, кок зависит результат функции от количества параметров (параметры по умолчанию). Для ускорения процесса на время отладки используйте скрипт и функцию Alert вместо записи в файл. В начале скрипта поставьте Alert("---------------------") отчеркнет последние выведенные на экран значения. В общем, это очень увлекательно и интересно и есть в чем покопаться
Так и есть, весь вопрос в том как взять данные из нужного поля способами MQL4. Например из алерта?
ДОБРЫЙ ДЕНЬ ! Помогите или дайте наводку! Есть две горизонтальные линии с значениями цены! Хотелось бы: Записывать в файл - Символ, значения линий. Считывать из файла - Символ, значения линий. Идея в том, что уровни строю на Демо терминале, а затем переношу параметры на Лайф терминал установленный на сервере!
Rewerpool: ДОБРЫЙ ДЕНЬ ! Помогите или дайте наводку! Есть две горизонтальные линии с значениями цены! Хотелось бы: Записывать в файл - Символ, значения линий. Считывать из файла - Символ, значения линий. Идея в том, что уровни строю на Демо терминале, а затем переношу параметры на Лайф терминал установленный на сервере!
А теперь по моей проблеме. Местные специалисты напоминают мне моего соседа по парте (ох, как давно это было) - он знал все правила, все формулы, но когда какую применить, сразу сообразить не мог, и перебирал чуть ли не все подряд, из-за чего никогда на укладывался в отведенное время. Так и здесь: знают много, а решения проблемы не видят, работают методом "научного тыка". В институте нас учили - решайте проблему без цифр и формул, и только потом вы четко будете знать, какие формулы применить. Новички в МКЛ4 не понимают тонкостей языка, и именно в этом им нужна помощь (только не в смысле "читай учебник"). Да только показать подводные камни при открытии/закрытии позиций никто не может. Может сами не знают? Поэтому и спустили мой вопрос на тормозах...
Так а где вопрос то? Прослистал пару страниц назад - нет.
В посте 1149 код закрытия позиций. Решение наполовину: только если открываются однотипные позиции. Если же например, сначала открылась СЕЛЛ и ещё не закрылась, а в это время открывается и закрывается БАЙ то СЕЛЛ уже не видит условий для своего закрытия до того момента, как откроется и закроется (по своим условиям) другая СЕЛЛ. И если вдруг опять откроются и закроются БАЙ, то она опять пропускает свои условия закрытия. И как быть?
В посте 1149 код закрытия позиций. Решение наполовину: только если открываются однотипные позиции. Если же например, сначала открылась СЕЛЛ и ещё не закрылась, а в это время открывается и закрывается БАЙ то СЕЛЛ уже не видит условий для своего закрытия до того момента, как откроется и закроется (по своим условиям) другая СЕЛЛ. И если вдруг опять откроются и закроются БАЙ, то она опять пропускает свои условия закрытия. И как быть?
Ага, вижу. И ответ на вопрос вижу постом ниже https://www.mql5.com/ru/forum/160587/page115#comment_6521492. Другими словами, проблема в том, что функционал не разделен на логические подзадачи. Вы свалили в кучу: перебор ордеров, принятие решения о торговом действии и совершение торговой операции.
Такая задача решается именно в три этапа:
Сбор информации об ордерах, за которыми должна следить программа. Это как раз цикл перебора ордеров, который у Вас уже есть. Результатом выполнения цикла должно быть формирование массива ордеров.
Расчет торговых сигналов. Результат расчета - команда открытия и/или закрытия ордеров. Зависит от торговой стратегии. Раньше, когда не было перечислений (enum) я использовал коды: 0 - нет сигнала, 1 - открыть Buy, -1 - открыть Sell, 2 - закрыть Buy, -2 - закрыть Sell.
Выполнение одной торговой операции. Если имеется какой-то торговый сигнал и для него подходит один из ордеров (п. 1), то совершается одна торговая операция. После нее весь алгоритм перезапускается, начиная с п. 1. В некоторых случаях даже происходит выход из OnTick с тем, чтобы продолжить все на следующем тике.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Посмотрите, что в других буферах...
так их на экране всего 8
Пытаюсь вытащить данные из буферов потому что не получается из файловтак их на экране всего 8
Пытаюсь вытащить данные из буферов потому что не получается из файловБуферов может быть больше -часть в окне данных может быть запрещен функцией: SetIndexLabel(1, NULL); Посмотрите содержимое буферов с нулевого по десятый. Посмотрите, соответствуют ли получаемые Вами значения и видимы. Мышиный курсор подводите к тому бару, номер которого стоит в функции iCustom. Проверьте, кок зависит результат функции от количества параметров (параметры по умолчанию). Для ускорения процесса на время отладки используйте скрипт и функцию Alert вместо записи в файл. В начале скрипта поставьте Alert("---------------------") отчеркнет последние выведенные на экран значения. В общем, это очень увлекательно и интересно и есть в чем покопаться
Буферов может быть больше -часть в окне данных может быть запрещен функцией: SetIndexLabel(1, NULL); Посмотрите содержимое буферов с нулевого по десятый. Посмотрите, соответствуют ли получаемые Вами значения и видимы. Мышиный курсор подводите к тому бару, номер которого стоит в функции iCustom. Проверьте, кок зависит результат функции от количества параметров (параметры по умолчанию). Для ускорения процесса на время отладки используйте скрипт и функцию Alert вместо записи в файл. В начале скрипта поставьте Alert("---------------------") отчеркнет последние выведенные на экран значения. В общем, это очень увлекательно и интересно и есть в чем покопаться
Так и есть, весь вопрос в том как взять данные из нужного поля способами MQL4. Например из алерта?
Они то все на виду.
ДОБРЫЙ ДЕНЬ ! Помогите или дайте наводку! Есть две горизонтальные линии с значениями цены! Хотелось бы: Записывать в файл - Символ, значения линий. Считывать из файла - Символ, значения линий. Идея в том, что уровни строю на Демо терминале, а затем переношу параметры на Лайф терминал установленный на сервере!
На водку никто не даст, здесь все жадные :)
На водку никто не даст, здесь все жадные :)
Правильно, усе по правилам
Вечером деньги - утром стулья.
Утром деньги - вечером стулья
Поэтому и спустили мой вопрос на тормозах...
Так а где вопрос то? Прослистал пару страниц назад - нет.
Так а где вопрос то? Прослистал пару страниц назад - нет.
В посте 1149 код закрытия позиций. Решение наполовину: только если открываются однотипные позиции. Если же например, сначала открылась СЕЛЛ и ещё не закрылась, а в это время открывается и закрывается БАЙ то СЕЛЛ уже не видит условий для своего закрытия до того момента, как откроется и закроется (по своим условиям) другая СЕЛЛ. И если вдруг опять откроются и закроются БАЙ, то она опять пропускает свои условия закрытия. И как быть?
В посте 1149 код закрытия позиций. Решение наполовину: только если открываются однотипные позиции. Если же например, сначала открылась СЕЛЛ и ещё не закрылась, а в это время открывается и закрывается БАЙ то СЕЛЛ уже не видит условий для своего закрытия до того момента, как откроется и закроется (по своим условиям) другая СЕЛЛ. И если вдруг опять откроются и закроются БАЙ, то она опять пропускает свои условия закрытия. И как быть?
Ага, вижу. И ответ на вопрос вижу постом ниже https://www.mql5.com/ru/forum/160587/page115#comment_6521492. Другими словами, проблема в том, что функционал не разделен на логические подзадачи. Вы свалили в кучу: перебор ордеров, принятие решения о торговом действии и совершение торговой операции.
Такая задача решается именно в три этапа: