Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1245
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Тоомас , ***
Уважаемые, подскажите, возможно ли получать данные индикатора в виде структуры? Ну, например, при вызове индикатора из советника получать не данные индикаторных буферов, а структуру с этими данными, подготовленную в самом индикаторе?
когда нельзя, но очень хочется, то можно обойти..
union Pad {
MyStruct data;
double buffer[N]; // N=sizeof(MyStruct)/sizeof(double)+(0!=(sizeof(MyStruct)%sizeof(double))); то есть буферов должно хватать
};
на стороне индикатора кладёте структуру, и распихиваете в буферы; на стороне советника складываете буферы и вытаскиваете структуру; только в структуре не должно быть строк, дин.массивов и ссылок на объекты; просто компактная упаковка структуры по буферам, а не по одному полю в каждый буфер
мега-большие структуры и массивы можно таскать через внешнюю базу - индикатор делает запись и её uniq_id кладёт в буфер. Когда советнику надо он возьмёт id из буфера а структуру по нему из базы.
когда нельзя, но очень хочется, то можно обойти..
union Pad {
MyStruct data;
double buffer[N]; // N=sizeof(MyStruct)/sizeof(double)+(0!=(sizeof(MyStruct)%sizeof(double))); то есть буферов должно хватать
};
на стороне индикатора кладёте структуру, и распихиваете в буферы; на стороне советника складываете буферы и вытаскиваете структуру; только в структуре не должно быть строк, дин.массивов и ссылок на объекты; просто компактная упаковка структуры по буферам, а не по одному полю в каждый буфер
мега-большие структуры и массивы можно таскать через внешнюю базу - индикатор делает запись и её uniq_id кладёт в буфер. Когда советнику надо он возьмёт id из буфера а структуру по нему из базы.
Спасибо.
Всем доброго вечера!
На старость лет пытаюсь освоить азы MQL5. Раздирает любопытство - неужели если человеку под 60, то программирование уже не под силу. Хотя с простым языком HTML в полтинник удалось подружиться, даже сайты себе на нём писал. Простенькие, правда, но всё же... Если мои вопросы будут вызывать раздражение, то скажите сразу, тогда больше не буду задавать наивные вопросы и нервировать народ.
Итак, открыл первый попавшийся на глаза код. При помощи Гугл переводчика и справочника MQL5 закомментировал смысл одной строки этого кода. Что прошу от сообщества? Посмотрите комментарии и если они не соответствуют действительности, то, пожалуйста, поправьте ход моих мыслей:
Для кого-то - это открытая книга, а как по мне, так те же китайские иероглифы. Прошу сильно не смеяться.
Для чего это делаю? Таким образом просто хочу для себя понять, насколько безнадёжен в программировании.
С уважением, Владимир.
Всем доброго вечера!
На старость лет пытаюсь освоить азы MQL5. Раздирает любопытство - неужели если человеку под 60, то программирование уже не под силу. Хотя с простым языком HTML в полтинник удалось подружиться, даже сайты себе на нём писал. Простенькие, правда, но всё же... Если мои вопросы будут вызывать раздражение, то скажите сразу, тогда больше не буду задавать наивные вопросы и нервировать народ.
Итак, открыл первый попавшийся на глаза код. При помощи Гугл переводчика и справочника MQL5 закомментировал смысл одной строки этого кода. Что прошу от сообщества? Посмотрите комментарии и если они не соответствуют действительности, то, пожалуйста, поправьте ход моих мыслей:
Для кого-то - это открытая книга, а как по мне, так те же китайские иероглифы. Прошу сильно не смеяться.
Для чего это делаю? Таким образом просто хочу для себя понять, насколько безнадёжен в программировании.
С уважением, Владимир.
Рекомендую пользоваться хелпом в ME - там назначение всех операторов и функций языка описано.
https://www.mql5.com/ru/docs/trading/positionselect
Всем доброго вечера!
На старость лет пытаюсь освоить азы MQL5. Раздирает любопытство - неужели если человеку под 60, то программирование уже не под силу. Хотя с простым языком HTML в полтинник удалось подружиться, даже сайты себе на нём писал. Простенькие, правда, но всё же... Если мои вопросы будут вызывать раздражение, то скажите сразу, тогда больше не буду задавать наивные вопросы и нервировать народ.
Итак, открыл первый попавшийся на глаза код. При помощи Гугл переводчика и справочника MQL5 закомментировал смысл одной строки этого кода. Что прошу от сообщества? Посмотрите комментарии и если они не соответствуют действительности, то, пожалуйста, поправьте ход моих мыслей:
Для кого-то - это открытая книга, а как по мне, так те же китайские иероглифы. Прошу сильно не смеяться.
Для чего это делаю? Таким образом просто хочу для себя понять, насколько безнадёжен в программировании.
С уважением, Владимир.
Было-бы желание, это лучше для мозга чем разгадывание кроссвордов. Только сразу постарайтесь понять, что для счетов Hadge пишется не так как для счетов Netting. Эта строка кода
используется для Netting, но для Hadge может давать ошибки если открыто больше одной позиции.
Рекомендую пользоваться хелпом в ME - там назначение всех операторов и функций языка описано.
https://www.mql5.com/ru/docs/trading/positionselect
Здравствуйте, Алексей!
Спасибо за отклик. В MetaEditor хелпом пользуюсь. Основная пока проблема в том, чтобы понять назначение операторов и функций, а так же почему, тот или иной оператор и функция, нужны именно в том конкретном месте программного кода. Вроде бы в хелпе всё расписано, но так понимаю, что эта информация не для того, кто начинает вникать с нуля, а для того, кто уже имеет определенный опыт программирования на других языках.
С уважением, Владимир.
Было-бы желание, это лучше для мозга чем разгадывание кроссвордов. Только сразу постарайтесь понять, что для счетов Hadge пишется не так как для счетов Netting. Эта строка кода
используется для Netting, но для Hadge может давать ошибки если открыто больше одной позиции.
Здравствуйте, Алексей!
Спасибо за подсказку по поводу Hadge и Netting счетов, а так же за поддержку.
Понимаю так, что если нет корректировки в комментарии к строке кода, то это уже хорошо. Значит максимально близко понял суть этой строчки кода. Буду дальше вникать в программирование на языке MQL5 и периодически выкладывать коды со своими комментариями. Может потом, на каком-то этапе самообучения и получится самостоятельно разработать код простенького советника.
Суважением, Владимир.
Всем привет!
Продолжаю изучать языл MQL5 и вот новая строка кода, которая не понятна даже после работы с ней хэлпом и Гугл переводом.
Комментарий сделан мной, но не совсем понятен её смысл. Еле разобрался, что такое FileHandle. Разбил на два слова File и Handle. Гугл перевел, как дескриптор файла. Что такое дескриптор, с чем его едят? Хорошо, что здесь https://www.mql5.com/ru/articles/496 автор статьи объяснил для начинающих, что на русском языке Handle - это уникальный указатель на что-либо (на файл, на индикатор и т.п.).
Теперь остается понять смысл всего кода. Прошу помощи у сообщества, т.к. засиделся разбирая этот код до 3-х часов ночи и голова уже совсем не соображает.
С уважением, Владимир.
Всем привет!
Продолжаю изучать языл MQL5 и вот новая строка кода, которая не понятна даже после работы с ней хэлпом и Гугл переводом.
Комментарий сделан мной, но не совсем понятен её смысл. Еле разобрался, что такое FileHandle. Разбил на два слова File и Handle. Гугл перевел, как дескриптор файла. Что такое дескриптор, с чем его едят? Хорошо, что здесь https://www.mql5.com/ru/articles/496 автор статьи объяснил для начинающих, что на русском языке Handle - это уникальный указатель на что-либо (на файл, на индикатор и т.п.).
Теперь остается понять смысл всего кода. Прошу помощи у сообщества, т.к. засиделся разбирая этот код до 3-х часов ночи и голова уже совсем не соображает.
С уважением, Владимир.
А зачем что-то переводить гуглой, если в документации всё по русски написано
И я-бы ваш комментарий перевёл так: «Перемещает указатель файла от начала на 0 байт. Другими словами, в начало файла»
Идентификатор
Описание
SEEK_SET
Начало файла
SEEK_CUR
Текущая позиция файлового указателя
SEEK_END
Конец файла