про ожидаемые костыли - у меня 2021 г, ожидается максимально дружественный софт, как пример - тот же Питон, который позволяет юзеру максимально лаконично писать свои коды и получать готовый результат, поэтому он быстро и "взлетел" - люди не хотят писать портянки кода ради собственного самоудовлетворения, а хотят в минимально сжатые сроки решить свои "хотелки"
ЗЫ: вспомнил про пальцы ноги и уши? ... - представьте, что Вам дали Вин 111, ну вот все супер, только раскладку клавиатуры теперь нужно переключать путем нажатия кнопки питания системника, я понимаю, что особо фанатичные извернутся и будут пальцем ноги нажимать заветную кнопку на системнике
Эххх. Вот раньше были времена - люди взахлёб хаяли МТ4, говорили, что им там не хватает контроля, что нужно чтобы разработчики дали его больше, чтобы спустились на уровень-два пониже и дали к ним доступ из MQL. Как только дали - всё стало для просящих жуть как плохо. Хотя все проверки и ожидания ранее были сокрыты от глаз пользователей. Ведь в МТ4 возвращается тикет открытой позиции. Это говорит о том, что вся синхронизация с торговым окружением просто сокрыта от глаз и шаловливых ручек пользователей:
Отсылка ордера --> [чёрный ящик] --> Тикет открытой позиции (ордера как принято в MQL4) (или -1)
Ну просили люди дать доступ в чёрный ящик - им дали. Теперь нужно самому делать эту синхронизацию. Просили? Просили. Дали? Дали. Хорошо это? Говорили, что будет хорошо. Как дали - стало плохо.
Давайте развернём всё, что сокрыто от глаз в стандартных функциях MQL4 и поглядим - а так ли там всё просто, и сделано ли это всё двумя волшебными строчками кода? Ой вряд ли, думаю...
Посему - сравнение совершенно некорректно. Разверните в MQL-код всё, что есть внутри стандартных торговых функций в МТ4, и объёмы кода сравнивайте, предварительно сделав портацию увиденного в чёрном ящике в МТ5. Тогда вот и будет сравнение корректным.
Это что по поводу костылей и прочего для МТ5, и "ай какой дружественный и возбудительно-прекрасный МТ4" - корректно сравнивайте объём и логику кода. Только в одном месте - чёрный ящик, в другом месте - собственная его реализация (как просили, помните?)
По поводу усложнения - согласен. Да, стало сложнее и больше кода писать. Но, читаем выше - сами просили и посмеивались, что "MQL4 для домохозяек, но мы из них выросли и хотим по-серьёзному"...
про ожидаемые костыли - у меня 2021 г, ожидается максимально дружественный софт, как пример - тот же Питон, который позволяет юзеру максимально лаконично писать свои коды и получать готовый результат, поэтому он быстро и "взлетел" - люди не хотят писать портянки кода ради собственного самоудовлетворения, а хотят в минимально сжатые сроки решить свои "хотелки"
ЗЫ: вспомнил про пальцы ноги и уши? ... - представьте, что Вам дали Вин 111, ну вот все супер, только раскладку клавиатуры теперь нужно переключать путем нажатия кнопки питания системника, я понимаю, что особо фанатичные извернутся и будут пальцем ноги нажимать заветную кнопку на системнике
Учитывая выделенное думаю это обращено мне.
Я тоже говорю о хэдж-счетах. И совсем не против ускорения, но если скорость интернета не соответствует скорости процессора, то о каком ускорении может идти речь? Вы ведь понимаете, что открытие позиции происходит на сервере и не факт, что обязательно должно быть безошибочное открытие. А скорость ответа на OrderSend() напрямую зависит в том числе и от скорости интернета… Так вот в МТ4 всё заложено внутрь, пока не получен ответ от сервера, продолжения не будет. И только получив тикет или номер ошибки всё будет известно. И такой порядок установлен для всех. Соответственно и скорость исполнения не на высоте.
Теперь в МТ5 заложили другую тактику… Проверять выполнено или нет возложено на программиста… надо, проверяй, не надо получи увеличенное быстродействие. Вы-же почему-то не хотите этого понять и возмущаетесь, что приходится делать проверку и вместо проверки пытаетесь подобрать время задержки.
При чём здесь рептилия¿ Пишите дружественный софт на MQL5, а питон дан наверное не для того, чтобы можно было полностью писать на нём и выкинуть MQL5… Я так думаю.
Еще раз, условия задачи для MT4/5 одинаковые. Нужно на пустом счете по окончании выполнения скрипта иметь 100 открытых позиций. При этом допускается во время выполнения скрипта с любого Терминала закрывать некоторые позиции. Это "вмешательство" нужно только для того, чтобы не было тупых решений.
Чтобы показать всем несведущим насколько отвратителен MQL5 (ведь там нужно самому писать то, что уже написано внутри OrderSend() в MQL4)
И вот новые несведущие люди, не понимающие суть простоты MQL4, будут говорить насколько MQL5 плох - вместо двух строчек кода [1. Я хочу открытую позицию сто раз. 2. Хорошо - держи]. придётся писать после каждой "я хочу" и до "хорошо держи" свои собственные проверки, сокрытые от пользователя в первом варианте, и развёрнутые в MQL-код во втором. Это манипуляции чистейшей воды.
Скорее всего, по причине заложенного в вопрос подвоха, никто и не собирается заниматься прилюдным решением в этой ветке - многим понятен смысл этого вброса - показать радостно-прекрасный MQL4 и сложно-муторный MQL5. Буду рад ошибаться. Но постановка вопроса говорит о многом.
Давайте развернём всё, что сокрыто от глаз в стандартных функциях MQL4 и поглядим - а так ли там всё просто, и сделано ли это всё двумя волшебными строчками кода? Ой вряд ли, думаю...
Там архитектурно не может быть ситуации, как в MT5. Не снаружи, а внутри. Т.к. во внутренностях (не то, что внешне видите) нет MT5-понятий ордера/сделки/позиции. Т.е. внутренности MT4 гораздо проще потрохов MT5.
Задвоения - это не сложности MT5, а архитектурный баг, когда Total()-функции показывают ложь. И когда открывающий позицию ордер (полностью залитый) находится вместе со своей позицией. В общем, только костылями все решается. И, похоже, все костыли доступны теперь в полном объеме.
То-есть для MQL5 вы ставите такие условия, что кто-то может пошалить, а для MQL4 нет? А если я подключусь к счёту с другого компа и поставлю пару отложек… что откроет MQL4???
Вы хотите без каких либо проверок начудить? Вы агитируете за вседозволенность в программировании, или просто пытаетесь побольше охаять MQL5 в чьих-то корыстных интересах?
Напишите всё то-же самое на mql4 с проверками и защитой от дурака.
Чтобы показать всем несведущим насколько отвратителен MQL5 (ведь там нужно самому писать то, что уже написано внутри OrderSend() в MQL4)
Речь не о лаконичности. С помощью своей публичной торговой библиотеки напишите решение задачи. Я спрашивал решение, а не оценивал его.
Факт - элементарная задача пока не решена на MT5. И плевать на длину кода.
Раз здесь есть люди со своими торговыми библиотеками, неужели не могут с помощью уже своих готовых решений написать столь простой по формулировке скрипт?
речь идет о хэдж-счетах
про ожидаемые костыли - у меня 2021 г, ожидается максимально дружественный софт, как пример - тот же Питон, который позволяет юзеру максимально лаконично писать свои коды и получать готовый результат, поэтому он быстро и "взлетел" - люди не хотят писать портянки кода ради собственного самоудовлетворения, а хотят в минимально сжатые сроки решить свои "хотелки"
ЗЫ: вспомнил про пальцы ноги и уши? ... - представьте, что Вам дали Вин 111, ну вот все супер, только раскладку клавиатуры теперь нужно переключать путем нажатия кнопки питания системника, я понимаю, что особо фанатичные извернутся и будут пальцем ноги нажимать заветную кнопку на системнике
Эххх. Вот раньше были времена - люди взахлёб хаяли МТ4, говорили, что им там не хватает контроля, что нужно чтобы разработчики дали его больше, чтобы спустились на уровень-два пониже и дали к ним доступ из MQL. Как только дали - всё стало для просящих жуть как плохо. Хотя все проверки и ожидания ранее были сокрыты от глаз пользователей. Ведь в МТ4 возвращается тикет открытой позиции. Это говорит о том, что вся синхронизация с торговым окружением просто сокрыта от глаз и шаловливых ручек пользователей:
Отсылка ордера --> [чёрный ящик] --> Тикет открытой позиции (ордера как принято в MQL4) (или -1)Ну просили люди дать доступ в чёрный ящик - им дали.
Теперь нужно самому делать эту синхронизацию. Просили? Просили. Дали? Дали. Хорошо это? Говорили, что будет хорошо. Как дали - стало плохо.
Давайте развернём всё, что сокрыто от глаз в стандартных функциях MQL4 и поглядим - а так ли там всё просто, и сделано ли это всё двумя волшебными строчками кода? Ой вряд ли, думаю...
Посему - сравнение совершенно некорректно. Разверните в MQL-код всё, что есть внутри стандартных торговых функций в МТ4, и объёмы кода сравнивайте, предварительно сделав портацию увиденного в чёрном ящике в МТ5. Тогда вот и будет сравнение корректным.
Это что по поводу костылей и прочего для МТ5, и "ай какой дружественный и возбудительно-прекрасный МТ4" - корректно сравнивайте объём и логику кода. Только в одном месте - чёрный ящик, в другом месте - собственная его реализация (как просили, помните?)
По поводу усложнения - согласен. Да, стало сложнее и больше кода писать. Но, читаем выше - сами просили и посмеивались, что "MQL4 для домохозяек, но мы из них выросли и хотим по-серьёзному"...
Ну вот теперь всё по-серьёзному.
речь идет о хэдж-счетах
про ожидаемые костыли - у меня 2021 г, ожидается максимально дружественный софт, как пример - тот же Питон, который позволяет юзеру максимально лаконично писать свои коды и получать готовый результат, поэтому он быстро и "взлетел" - люди не хотят писать портянки кода ради собственного самоудовлетворения, а хотят в минимально сжатые сроки решить свои "хотелки"
ЗЫ: вспомнил про пальцы ноги и уши? ... - представьте, что Вам дали Вин 111, ну вот все супер, только раскладку клавиатуры теперь нужно переключать путем нажатия кнопки питания системника, я понимаю, что особо фанатичные извернутся и будут пальцем ноги нажимать заветную кнопку на системнике
Учитывая выделенное думаю это обращено мне.
Я тоже говорю о хэдж-счетах. И совсем не против ускорения, но если скорость интернета не соответствует скорости процессора, то о каком ускорении может идти речь? Вы ведь понимаете, что открытие позиции происходит на сервере и не факт, что обязательно должно быть безошибочное открытие. А скорость ответа на OrderSend() напрямую зависит в том числе и от скорости интернета… Так вот в МТ4 всё заложено внутрь, пока не получен ответ от сервера, продолжения не будет. И только получив тикет или номер ошибки всё будет известно. И такой порядок установлен для всех. Соответственно и скорость исполнения не на высоте.
Теперь в МТ5 заложили другую тактику… Проверять выполнено или нет возложено на программиста… надо, проверяй, не надо получи увеличенное быстродействие. Вы-же почему-то не хотите этого понять и возмущаетесь, что приходится делать проверку и вместо проверки пытаетесь подобрать время задержки.
При чём здесь рептилия¿ Пишите дружественный софт на MQL5, а питон дан наверное не для того, чтобы можно было полностью писать на нём и выкинуть MQL5… Я так думаю.
знатный холивар назревает, не интересно, я лично стопяцот раз участвовал, убеждать меня не в чем, плюсы каждой платформы давно уже знаю
по сабжу интересна реализация:
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Великий и ужасный МТ4 навсегда (или как грамотно выработать стратегию перехода)
fxsaber, 2021.05.09 12:17
Еще раз, условия задачи для MT4/5 одинаковые. Нужно на пустом счете по окончании выполнения скрипта иметь 100 открытых позиций. При этом допускается во время выполнения скрипта с любого Терминала закрывать некоторые позиции. Это "вмешательство" нужно только для того, чтобы не было тупых решений.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Великий и ужасный МТ4 навсегда (или как грамотно выработать стратегию перехода)
fxsaber, 2021.05.08 18:54
Нужно на MT5 написать скрипт, который на пустом счете открывает 100 позиций.
На MT4 решил таким образом.
У кого какие варианты решения на MT5?
знатный холивар назревает, не интересно, я лично стопяцот раз участвовал, убеждать меня не в чем, плюсы каждой платформы давно уже знаю
по сабжу интересна реализация:
Знаете для чего вот это предложение:
Нужно на MT5 написать скрипт, который на пустом счете открывает 100 позиций.
На MT4 решил таким образом.
У кого какие варианты решения на MT5?
Чтобы показать всем несведущим насколько отвратителен MQL5 (ведь там нужно самому писать то, что уже написано внутри OrderSend() в MQL4)
И вот новые несведущие люди, не понимающие суть простоты MQL4, будут говорить насколько MQL5 плох - вместо двух строчек кода [1. Я хочу открытую позицию сто раз. 2. Хорошо - держи]. придётся писать после каждой "я хочу" и до "хорошо держи" свои собственные проверки, сокрытые от пользователя в первом варианте, и развёрнутые в MQL-код во втором. Это манипуляции чистейшей воды.
Скорее всего, по причине заложенного в вопрос подвоха, никто и не собирается заниматься прилюдным решением в этой ветке - многим понятен смысл этого вброса - показать радостно-прекрасный MQL4 и сложно-муторный MQL5. Буду рад ошибаться. Но постановка вопроса говорит о многом.
Давайте развернём всё, что сокрыто от глаз в стандартных функциях MQL4 и поглядим - а так ли там всё просто, и сделано ли это всё двумя волшебными строчками кода? Ой вряд ли, думаю...
Там архитектурно не может быть ситуации, как в MT5. Не снаружи, а внутри. Т.к. во внутренностях (не то, что внешне видите) нет MT5-понятий ордера/сделки/позиции. Т.е. внутренности MT4 гораздо проще потрохов MT5.
Задвоения - это не сложности MT5, а архитектурный баг, когда Total()-функции показывают ложь. И когда открывающий позицию ордер (полностью залитый) находится вместе со своей позицией. В общем, только костылями все решается. И, похоже, все костыли доступны теперь в полном объеме.
Artyom Trishkin:
… Это манипуляции чистейшей воды.
Только вот совсем непонятны причины …
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Великий и ужасный МТ4 навсегда (или как грамотно выработать стратегию перехода)
Alexey Viktorov, 2021.05.09 09:15
То-есть для MQL5 вы ставите такие условия, что кто-то может пошалить, а для MQL4 нет? А если я подключусь к счёту с другого компа и поставлю пару отложек… что откроет MQL4???
Вы хотите без каких либо проверок начудить? Вы агитируете за вседозволенность в программировании, или просто пытаетесь побольше охаять MQL5 в чьих-то корыстных интересах?
Напишите всё то-же самое на mql4 с проверками и защитой от дурака.
Знаете для чего вот это предложение:....
Чтобы показать всем несведущим насколько отвратителен MQL5
домыслы, есть задача - должно быть решение, если мы пытаемся мыслить как технически грамотные люди
я раз 5 подходил к решению этой задачи, пока не придумал как оптимально решить
fxsaber:
…И, похоже, все костыли доступны теперь в полном объеме.
Только бы голову не сломать с такими костылями.
Чтобы показать всем несведущим насколько отвратителен MQL5 (ведь там нужно самому писать то, что уже написано внутри OrderSend() в MQL4)
Речь не о лаконичности. С помощью своей публичной торговой библиотеки напишите решение задачи. Я спрашивал решение, а не оценивал его.
Факт - элементарная задача пока не решена на MT5. И плевать на длину кода.
Раз здесь есть люди со своими торговыми библиотеками, неужели не могут с помощью уже своих готовых решений написать столь простой по формулировке скрипт?
я раз 5 подходил к решению этой задачи, пока не придумал как оптимально решить
Я сам еще не пробовал MT4-style. Теоретически должно работать. Пока нет возможности посмотреть.