Выдох вдох хорошо дышать Чёрный горох да нелегко глотать Пуля и ствол нажал и разошлись Где добро где зло попробуй разберись А что мне надо да только свет в оконце А что мне снится что кончилась война Куда иду я туда где светит солнце Вот только братцы добраться до темна Шаг другой до счастья долеко Эй брат постой я знаю не легко Вымой лицо побрейся улыбнись Выйди на крыльцо свободе поклонись А что мне надо да только свет в оконце А что мне снится что кончилась война Куда иду я туда где светит солнце Вот только братцы добраться до темна А что нам надо да только свет в оконце А что нам снится что кончилась война Куда идём мы туда где светит солнце Вот только братцы добраться до темна Галанин С.
Данная тема неоднократно поднималась:
Вот одно и второе высказывания на эту тему еще весною. Единственное, там ошибочное переоценивание разработчиков, что они реализовали в MT5 хранение виртуальных позиций на торговом сервере.
Лок - это не проблема. Здесь описаны причины ненадежности самой концепции MT5. И логичное частное следствие:
с текущим опубликованным MT5-функционалом написание НАДЕЖНОГО советника на MQL5 для одновременной с ним ручной торговли на том же торговом инструменте не возможно!
P.S Здесь и здесь спрашивал бета-тестеров, как они видят решение этой проблемы в MT5... на задававшиеcя разработчикам подобные вопросы ответ тоже не был получен.
Честно говоря не вижу такой уж великой проблемы, особенно с советником.
Пока существует и выполняется OrderComment() любые стратегии (кроме выполняемых вручную) можно реализовать как раньше, записывая Magic в коммент и добывая его оттуда. Просто придется написать, а точнее перекрыть функцию OrderMagicNumber(), которой похоже не будет.
А вот для ручной торговли желательно, чтобы этот комент можно было наблюдать на экране(в отличие от МТ4 на закладке истории счета), и тогда вообще задумываться неочем, кроме как о надежности хранения информации в коменте.
Здесь предлагался один из методов реализации, но он не надежен:
Вы делаете неверные выводы. И меджики и комментарии работают также как и в МТ4.
Дождитесь выпуска, пожалуйста, чтобы самостоятельно все проверить.
Мэджики и комментарии храняться в истории исполнения ордеров, но не в совокупной позиции.
Вы предлагаете анализировать историю, чтобы решить вышеназванную проблему?
Повторюсь, сейчас в MT4 элементарно любой стратегии подхватить информацию по текущему положению дел и продолжить свою работу, будто она и не прерывалась. Эта информация доступна из открытых позиций. В MT5 этого не сделать, т.к. есть скудная инфа по совокупной позиции и все. Можно анализировать историю FILLED-ордеров, но опять же повторюсь, это крайне не надежно, т.к. история может быть не вся доступна для анализа (а можно ли средствами MQL5 подкачивать историю FILLED-ордеров по фильтру мэджика?), она может быть огромной и время на ее анализ может быть затрачено существенное.
Т.е. вы в MT5 предлагаете на основании истории FILLED-ордеров восстанавливать вклад стратегии в совокупную позицию?
Эта проблема поднималась и с МТ4 - надежный способ маркировки родеров, но как видим в ее решении нет сдвигов, а наоборот еще дальше ушли.
Проблемы учета структуры совокупной позиции в MT4 нет. Вы легко и надежно можете писать и запускать на MT4 независимые советники на одном торговом инструменте и еще и торговать там же вручную. А в MT5 даже надежно (не нарушить логику стратегии) торговать вручную вместе с советником на одном торговом инструменте нельзя.
Проблемы учета структуры совокупной позиции в MT4 нет. Вы легко и надежно можете писать и запускать на MT4 независимые советники на одном торговом инструменте и еще и торговать там же вручную. А в MT5 даже надежно (не нарушить логику стратегии) торговать вручную вместе с советником на одном торговом инструменте нельзя.
Да суть проблемы ясна и прозрачна, поскольку в нескольких прог. продуктах такого рода приходилось работать. Например, пресловутый Румус или ИДсистем у ФК. Как это будет реализовано в МТ5 я затредняюсь ответить, т.к. пока не пользовался, все не дождусь. А выход искать придется, по крайней мере подобный подход, хоть как то идентифицирует действия советников, это все же лучше, чем ничего.
С появлением МТ5, будем пробовать и искать более надежные варианты.
Еще один способ реализации через высокоуровневый API на MQL5, но снова ненадежно:
Это неверное утверждение. Сначала надо попробовать MQL5, потом уже говорить о порядке усложнения.
Сложно будет менять наработанную с годами логику процесса программирования. Но программы на MQL5 можно создавать более сложные, чем на MQL4, с меньшеми затратами времени. И возможностей добавилось столько, что сейчас просто трудно представить весь объем новшеств. Полезных новшеств.
-------
Плохо, что придется ВСЕ переписывать с MQL4 на MQL5.
Конечно, можно! Но при портировании MQL4->MQL5 это в большиснтве случаев далеко не так.
nen, прошу сообщить свое видение реализации на MQL5 стратегии, допускающей запуска на одном торговом инструменте нескольких независимых стратегий.
Возьмите любую простецкую стратегию из стандартной поставки MT4 и сделайте ее универсальной (независимой) стратегией.
На MQL4 - это 10 строчек кода и меньше 5 минут работы.
На MQL5 - это ... даже не представить.
Я вижу решение этой проблемы через создание средствами MQL5 более высокого уровня API, чем сам MQL5. В этом API будут реализованы торговые функции с возможностью работы с виртуальными позициями, у которых будут все свойства, какие есть у MT4-позиций. Уверен (пророчество просто), различные версии таких API появятся в CodeBase MQL5, со временем в них будут устраняться ошибки, и все доводиться до идеала. Трейдеры будут просто подключать этот API и тогда решение вышеназванной задачи и подобных будет занимать тоже меньше 5 минут.
Но, к сожалению, это решение все равно будет не надежным, т.к. база данных логических связей виртуальных позиций будет храниться не на торговом сервере.
P.S. Также через это API мощными средствами MQL5 будет создан интерфейс для работы с этими виртуальными позициями руками - аналог MT4.
Здесь предлагался один из методов реализации, но он не надежен:
Вы делаете неверные выводы. И меджики и комментарии работают также как и в МТ4.
Дождитесь выпуска, пожалуйста, чтобы самостоятельно все проверить.
Мэджики и комментарии храняться в истории исполнения ордеров, но не в совокупной позиции.
OrderMagicNumber() по крайней мере в справке по МТ5, я не нашел, поэтому где и как хранится мэджик в МТ5, не понятно.
OrderMagicNumber() по крайней мере в справке по МТ5, я не нашел, поэтому где и как хранится мэджик в МТ5, не понятно.
struct MqlTradeRequest { ENUM_TRADE_REQUEST_ACTIONS action; // Тип выполняемого действия ulong expert; // Штамп эксперта (идентификатор) ulong order; // Тикет ордера string symbol; // Имя торгового инструмента double volume; // Запрашиваемый объем сделки в лотах double price; // Цена double stoplimit; // Уровень StopLimit ордера double sl; // Уровень Stop Loss ордера double tp; // Уровень Take Profit ордера ulong deviation; // Максимально приемлемое отклонение от запрашиваемой цены ENUM_ORDER_TYPE type; // Тип ордера ENUM_ORDER_TYPE_FILLING type_filling; // Тип ордера по исполнению ENUM_ORDER_TYPE_TIME type_time; // Тип ордера по времени действия datetime expiration; // Срок истечения ордера (для ордеров типа ORDER_TIME_SPECIFIED) string comment; // Комментарий к ордеру char reserved[128]; // Зарезервировано };
Еще один способ реализации через высокоуровневый API на MQL5, но снова ненадежно:
Это неверное утверждение. Сначала надо попробовать MQL5, потом уже говорить о порядке усложнения.
Сложно будет менять наработанную с годами логику процесса программирования. Но программы на MQL5 можно создавать более сложные, чем на MQL4, с меньшеми затратами времени. И возможностей добавилось столько, что сейчас просто трудно представить весь объем новшеств. Полезных новшеств.
-------
Плохо, что придется ВСЕ переписывать с MQL4 на MQL5.
Конечно, можно! Но при портировании MQL4->MQL5 это в большиснтве случаев далеко не так.
nen, прошу сообщить свое видение реализации на MQL5 стратегии, допускающей запуска на одном торговом инструменте нескольких независимых стратегий.
Возьмите любую простецкую стратегию из стандартной поставки MT4 и сделайте ее универсальной (независимой) стратегией.
На MQL4 - это 10 строчек кода и меньше 5 минут работы.
На MQL5 - это ... даже не представить.
Я вижу решение этой проблемы через создание средствами MQL5 более высокого уровня API, чем сам MQL5. В этом API будут реализованы торговые функции с возможностью работы с виртуальными позициями, у которых будут все свойства, какие есть у MT4-позиций. Уверен (пророчество просто), различные версии таких API появятся в CodeBase MQL5, со временем в них будут устраняться ошибки, и все доводиться до идеала. Трейдеры будут просто подключать этот API и тогда решение вышеназванной задачи и подобных будет занимать тоже меньше 5 минут.
Но, к сожалению, это решение все равно будет не надежным, т.к. база данных логических связей виртуальных позиций будет храниться не на торговом сервере.
P.S. Также через это API мощными средствами MQL5 будет создан интерфейс для работы с этими виртуальными позициями руками - аналог MT4.
Это уж слишком сложно, да и не к чему столько ненужной работы. Скорее всего можно обойтись и простым набором классов, разработанных для подобного учета, работающих на самой платформе без сильных эксцессов. Но тут ИМХО полное.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Данная тема неоднократно поднималась:
Господа! Оторвитесь на мгновение от вашей сладострастной полемики и вникните в предложение:
В рамках МТ4 написать м.б. включаемый в эксперты файл, который бы "перехватывал" торговые сигналы экспертов и формировал сигналы для нетто позиции. Разумеется, в эксперте торгующие ф-ии должны быть заменены на те, сигналы которых бы перехватывались.
Это позволит разрешить ВСЕ ваши споры, конца коим, по всему, не будет никогда. Просто нужно будет прогнать два варианта одного советника - один с локами, другой с сформированной из локов нетто позицией.
Подумайте, пожалуйста, в этом направлении. Это - конструктивно. (А то перессоримся все тут к такой-то матери!)))
Вот одно и второе высказывания на эту тему еще весною. Единственное, там ошибочное переоценивание разработчиков, что они реализовали в MT5 хранение виртуальных позиций на торговом сервере.
Лок - это не проблема. Здесь описаны причины ненадежности самой концепции MT5. И логичное частное следствие:
с текущим опубликованным MT5-функционалом написание НАДЕЖНОГО советника на MQL5 для одновременной с ним ручной торговли на том же торговом инструменте не возможно!
P.S Здесь и здесь спрашивал бета-тестеров, как они видят решение этой проблемы в MT5... на задававшиеcя разработчикам подобные вопросы ответ тоже не был получен.