mouse:
Вопрос к разработчикам. Я немного поискал на форуме, но кроме
периодически проскакивающих фраз: "это уже обсуждалось и
ответом было нет", ничего найти не смог.
А вопрос в следующем. С чем связано написание собственного языка/компилятора
вместо предоставления единственного API с возможностью написания
биндингов под всё, что компилируется/исполняется? C/C++, Java, C#,
Python, Ruby...
Из особенностей (я новичок в MQL4), присущих MQL4 могу выделить:
Нечто вроде байт-кода/CLR
который при этом шифруется в EX4
и отсутствие коллбэков как следствие, видимо, из п.1
Отсутствие оптимизации при компиляции. На примере обработки
условий в конструкциях if, где в документации явно прописано, что выполняются все выражения
независимо от результата предыдущих выражений. Видимо, в существующих
масштабах это не критично.
Отдельное разрешение на вызов библиотечных функций. У меня в
голову приходит только один вариант -- чтобы народ ничего лишнего
снаружи не мог вызвать/удалить/поломать, если скрипт/индикатор/эксперт
запускается, например, на чужой машине.
Я не сильно знаком с историей MQL, но подозреваю, что первая/вторая
версия дала ощутимый толчок к поголовному написанию всевозможных
индикаторов, скриптов и т.д, откуда и пошли эксперты (если они
сразу не появились). А дальше снежный ком всё нарастал, как это
было с тем же PHP, который изначально был неким шаблонным языком
при работе с html (лет эдак 10 назад) с минимум возможностей.
Посему вопрос, есть ли перспективы по предоставлению API наружу?
Как я понял разработчики решили не нагружать MQL4 доп. функционалом.
Может быть это и правильно. Но вопрос API решаем мы очень не плохо
решаем эти вопросы. Какая задача?
Mike, Меня интересует что именно с вашей точки зрения решаемо? Поделитесь мыслями как вы эти задачи решаете применительно к MT4:) Если вы продаете, то что именно вы продаете, библиотеку которая будет работать только в текущим билдом или ваши методы не сильно отличаются от наших? И что вы вообще имеете ввиду, под вопросом, Какая задача? За какую стоимость вы решите мою задачу? Нет просто интересно, сколько вы запросите:)
Задача на сию минутке: Разработать анализатор между валютными парами потиково, при этом есть множество условий и правил, которые можно описать, но суть не в этом, советник должен использовать эти данные как основопологающий факт для принятия решений. То есть для этого надо написать достаточно всеобъемлющий интерфейс и понять что именно можно использовать, для наглядности реализовать потиковый график с паралельным просмотром всех отцентрированных валют. К слову скажу, если вы уже нашли решение, оплата после получения реального результата, которого может и не быть в той степени на которую расчет:) Выводы спорны, подтвердена эфективность индикаторов но только как сигналы к действиям, но на сколько мне известно в таком ракурсе задачу никто не решал и оценить реальный результат заблаговременно сложно. Единственное условие, открытый тщательно продуманный исходный код, который удовлетворяет условиям расширения и использования под самые разные нужды.
Да вот был MT3 c API - хорошие были времена ... ;) Странно что не появился
ещё продукт по качеству схожий с MT но который бы предоставил
API или набор функций для взаимодейсвия с терминалом. У меня вообще
складывается ощущение что разрабочики терминалов боятся апи
как огня ...
Нужен такой альтернативный вариант чтобы конкуренцию подстегнуть
и разработчики шли на встречу пожеланиям трудящихся трейдеров
и программистов, желающих напрямую взаимодейсвовать с терминалом
посредством нейтивных функций ;)
Не застал эти времена, а даже если бы и застал что толку, сейчас API нету... А как можно использовать то чего нету:) Надежда остается на то, что хоть в MT5 появятся, когда мы уже скорее всего будем писать на Orcas. Никто незнает наверняка, разработчики наверняка не говорят. Сложно чего-то ожидать:) Я надеюсь что хотябы импорт DLL останется с пришествием новой версии?! А то ведь действительно велосипед придется изобретать:) Мне-то на самом деле все равно на чем писать, если бы были все условия, то меня бы точно врядли интересоваали API и т.д. Во всяком случаее на стадии изучения меня это мало интересовало, до тех пор пока не дошел до того, что оказывается не все так просто, ну вобщем как всегда:) Кстати мне думается, что если в MQL5 появятся полноценные классы, то эту проблемму все же можно будет решить, я правельно мыслю?:)
Mike, Меня интересует что именно с вашей точки зрения решаемо?
Поделитесь мыслями как вы эти задачи решаете применительно
к MT4:) Если вы продаете, то что именно вы продаете, библиотеку
которая будет работать только в текущим билдом или ваши методы
не сильно отличаются от наших? И что вы вообще имеете ввиду,
под вопросом, Какая задача? За какую стоимость вы решите мою
задачу? Нет просто интересно, сколько вы запросите:)
Задача на сию минутке: Разработать анализатор между валютными
парами потиково, при этом есть множество условий и правил, которые
можно описать, но суть не в этом, советник должен использовать
эти данные как основопологающий факт для принятия решений.
То есть для этого надо написать достаточно всеобъемлющий интерфейс
и понять что именно можно использовать, для наглядности реализовать
потиковый график с паралельным просмотром всех отцентрированных
валют. К слову скажу, если вы уже нашли решение, оплата после
получения реального результата, которого может и не быть в той
степени на которую расчет:) Выводы спорны, подтвердена эфективность
индикаторов но только как сигналы к действиям, но на сколько
мне известно в таком ракурсе задачу никто не решал и оценить
реальный результат заблаговременно сложно. Единственное условие,
открытый тщательно продуманный исходный код, который удовлетворяет
условиям расширения и использования под самые разные нужды.
Сколько вам было бы не жалко заплатить, и как это должно выглядеть
(интерефейс)?
К сожалению мне жалко заплатить, деньги которые можно пустить
в другое благое дело, а этим заниматься в открытом виде прилюдно,
так как я не занимаюсь продажей ПО и заниматься не планиру, однако
я занимаюсь зароботком на рынке и эта тема предположительно
решит некоторые проблеммы, за программу я еще могу пожертвовать
автору так как эта стоимость как правило ну ни как не стоимость
разработки этой программы, все в пределах реального. Но люди
покупают программы лишь в том случае если они приносят несоизмеримую
пользу, прибыль. Поэтому я сторонник донейт, методологии пожертвований,
но и купить программу иногда могу, особенно если есть на что,
в пределах разумного:) В конкретные разработки пока вкладывать
не готов, как говорится было бы что, поэтому обхожусь своими
силами, мозги вроде не кривые, интерес пока есть:)
Поэтому о чем разговор, если я осведомляюсь о вопросе, сколько
бы это стоило:))) Интересно оценить свой труд:) Вопрос переадресую
к вам, сколько бы вам не жалко было бы заплатить, за такую программу?:)
Интерфейс, ну на подобие мета трейдера, в меньшем маштабе, исключительно
контекстный вопрос визуального осознания информации, в остальном
больше интерфейс никчему, как в случае визуального определения
данных. Естественно должны быть тиковые графики, как по отдельной
валюте, так и в смешенном варианте, в моих планах по этой теме:
'Анализ нескольких валютных пар по валюте, ваше мнение, можно
ли это использовать?' В общем случае, интерфейс нужен восновном только на стадии разработки,
как отладка и работа над информацией, а так как мета трейдер
не строит тиковых графиков, кроме самого простого на короткой
дистанции и индикаторы к нему не применимы, значит проще это
делать в своем окне, в процессе самого терминала.
Стоимость ПО - понятие относительное на мой взгляд, одно дело
готовый продукт в массовой продаже, совсем другое дело программирование
по индивидуальному заказу. В первом случае стоимость оценивается
полезностью программы, а во втором исключительно количеством
времени и усилиий потраченных разработчиком.
Сколько бы я заплатил затрудняюсь ответить, торговаться не
привык, обычно плачу столько сколько просят, если могу заплатить,
а если не могу, то воздержисваюсь до лучших времен. Если же это
можно самому себе сделать, то и платить не обязательно, если
же самому делать лень, то торг считаю не уместным.
Renat писал (а)>>
В 2002 году был выпущен новый информационно-торговый комплекс MetaTrader 3 (мы назвали его третьей версией, так как первой своей работой посчитали систему FX Charts, второй версией - MetaQuotes). В нем мы полностью переписали встроенный язык, назвав его MQL2 (странная ситуация получилась тогда - язык второй версии, а терминал - третьей).
Я помню, как было дело.
Сначала был просто MetaTrader. Без номера.
Когда мы сделали язык MQL2 и встроили его в терминал, система стала называться MetaTrader 2.
MetaTrader стал тройкой в 2003 году, когда мы добавили возможность программировать пользовательские индикаторы.
Renat писал (а)>>
Похоже, что немногие задумываются над вопросом "Как объединить
чужой язык со своей моделью данных?". Как быстро и бесшовно
получать прямой доступ из того же .NET/Java кода к мельчайшим настройкам/данным
терминала?
Именно этот вопрос и останавливает использование других языков.
Сделать терминал COM сервером, это реализуемо, если очень захотеть. Не здесь собака зарыта, это скорей отмазка.
Зато если открыть API:
1. Нельзя будет отличить МТС от человека
2. ИМХО, появятся МТС, которые будут хачить терминал
3. На Ваше усмотрение, первые 2 пункта далеко не единственные
Вопрос к разработчикам. Я немного поискал на форуме, но кроме периодически проскакивающих фраз: "это уже обсуждалось и ответом было нет", ничего найти не смог.
А вопрос в следующем. С чем связано написание собственного языка/компилятора вместо предоставления единственного API с возможностью написания биндингов под всё, что компилируется/исполняется? C/C++, Java, C#, Python, Ruby...
Из особенностей (я новичок в MQL4), присущих MQL4 могу выделить:
- Нечто вроде байт-кода/CLR
- который при этом шифруется в EX4
- и отсутствие коллбэков как следствие, видимо, из п.1
- Отсутствие оптимизации при компиляции. На примере обработки
условий в конструкциях if, где в документации явно прописано, что выполняются все выражения
независимо от результата предыдущих выражений. Видимо, в существующих
масштабах это не критично.
- Отдельное разрешение на вызов библиотечных функций. У меня в
голову приходит только один вариант -- чтобы народ ничего лишнего
снаружи не мог вызвать/удалить/поломать, если скрипт/индикатор/эксперт
запускается, например, на чужой машине.
Я не сильно знаком с историей MQL, но подозреваю, что первая/вторая версия дала ощутимый толчок к поголовному написанию всевозможных индикаторов, скриптов и т.д, откуда и пошли эксперты (если они сразу не появились). А дальше снежный ком всё нарастал, как это было с тем же PHP, который изначально был неким шаблонным языком при работе с html (лет эдак 10 назад) с минимум возможностей.Посему вопрос, есть ли перспективы по предоставлению API наружу?
Как я понял разработчики решили не нагружать MQL4 доп. функционалом. Может быть это и правильно. Но вопрос API решаем мы очень не плохо решаем эти вопросы. Какая задача?
Mike, Меня интересует что именно с вашей точки зрения решаемо? Поделитесь мыслями как вы эти задачи решаете применительно к MT4:) Если вы продаете, то что именно вы продаете, библиотеку которая будет работать только в текущим билдом или ваши методы не сильно отличаются от наших? И что вы вообще имеете ввиду, под вопросом, Какая задача? За какую стоимость вы решите мою задачу? Нет просто интересно, сколько вы запросите:)
Задача на сию минутке: Разработать анализатор между валютными парами потиково, при этом есть множество условий и правил, которые можно описать, но суть не в этом, советник должен использовать эти данные как основопологающий факт для принятия решений. То есть для этого надо написать достаточно всеобъемлющий интерфейс и понять что именно можно использовать, для наглядности реализовать потиковый график с паралельным просмотром всех отцентрированных валют. К слову скажу, если вы уже нашли решение, оплата после получения реального результата, которого может и не быть в той степени на которую расчет:) Выводы спорны, подтвердена эфективность индикаторов но только как сигналы к действиям, но на сколько мне известно в таком ракурсе задачу никто не решал и оценить реальный результат заблаговременно сложно. Единственное условие, открытый тщательно продуманный исходный код, который удовлетворяет условиям расширения и использования под самые разные нужды.
Нужен такой альтернативный вариант чтобы конкуренцию подстегнуть и разработчики шли на встречу пожеланиям трудящихся трейдеров и программистов, желающих напрямую взаимодейсвовать с терминалом посредством нейтивных функций ;)
Mike, Меня интересует что именно с вашей точки зрения решаемо? Поделитесь мыслями как вы эти задачи решаете применительно к MT4:) Если вы продаете, то что именно вы продаете, библиотеку которая будет работать только в текущим билдом или ваши методы не сильно отличаются от наших? И что вы вообще имеете ввиду, под вопросом, Какая задача? За какую стоимость вы решите мою задачу? Нет просто интересно, сколько вы запросите:)
Задача на сию минутке: Разработать анализатор между валютными парами потиково, при этом есть множество условий и правил, которые можно описать, но суть не в этом, советник должен использовать эти данные как основопологающий факт для принятия решений. То есть для этого надо написать достаточно всеобъемлющий интерфейс и понять что именно можно использовать, для наглядности реализовать потиковый график с паралельным просмотром всех отцентрированных валют. К слову скажу, если вы уже нашли решение, оплата после получения реального результата, которого может и не быть в той степени на которую расчет:) Выводы спорны, подтвердена эфективность индикаторов но только как сигналы к действиям, но на сколько мне известно в таком ракурсе задачу никто не решал и оценить реальный результат заблаговременно сложно. Единственное условие, открытый тщательно продуманный исходный код, который удовлетворяет условиям расширения и использования под самые разные нужды.
Сколько вам было бы не жалко заплатить, и как это должно выглядеть (интерефейс)?
К сожалению мне жалко заплатить, деньги которые можно пустить в другое благое дело, а этим заниматься в открытом виде прилюдно, так как я не занимаюсь продажей ПО и заниматься не планиру, однако я занимаюсь зароботком на рынке и эта тема предположительно решит некоторые проблеммы, за программу я еще могу пожертвовать автору так как эта стоимость как правило ну ни как не стоимость разработки этой программы, все в пределах реального. Но люди покупают программы лишь в том случае если они приносят несоизмеримую пользу, прибыль. Поэтому я сторонник донейт, методологии пожертвований, но и купить программу иногда могу, особенно если есть на что, в пределах разумного:) В конкретные разработки пока вкладывать не готов, как говорится было бы что, поэтому обхожусь своими силами, мозги вроде не кривые, интерес пока есть:)
Поэтому о чем разговор, если я осведомляюсь о вопросе, сколько бы это стоило:))) Интересно оценить свой труд:) Вопрос переадресую к вам, сколько бы вам не жалко было бы заплатить, за такую программу?:) Интерфейс, ну на подобие мета трейдера, в меньшем маштабе, исключительно контекстный вопрос визуального осознания информации, в остальном больше интерфейс никчему, как в случае визуального определения данных. Естественно должны быть тиковые графики, как по отдельной валюте, так и в смешенном варианте, в моих планах по этой теме: 'Анализ нескольких валютных пар по валюте, ваше мнение, можно ли это использовать?' В общем случае, интерфейс нужен восновном только на стадии разработки, как отладка и работа над информацией, а так как мета трейдер не строит тиковых графиков, кроме самого простого на короткой дистанции и индикаторы к нему не применимы, значит проще это делать в своем окне, в процессе самого терминала.
Стоимость ПО - понятие относительное на мой взгляд, одно дело готовый продукт в массовой продаже, совсем другое дело программирование по индивидуальному заказу. В первом случае стоимость оценивается полезностью программы, а во втором исключительно количеством времени и усилиий потраченных разработчиком.
Сколько бы я заплатил затрудняюсь ответить, торговаться не привык, обычно плачу столько сколько просят, если могу заплатить, а если не могу, то воздержисваюсь до лучших времен. Если же это можно самому себе сделать, то и платить не обязательно, если же самому делать лень, то торг считаю не уместным.
Решил поднять тему. Все-таки много новеньких, не совсем знающих историю развития языка MQL и платформы.
В 2002 году был выпущен новый информационно-торговый комплекс MetaTrader 3 (мы назвали его третьей версией, так как первой своей работой посчитали систему FX Charts, второй версией - MetaQuotes). В нем мы полностью переписали встроенный язык, назвав его MQL2 (странная ситуация получилась тогда - язык второй версии, а терминал - третьей).
Я помню, как было дело.
Сначала был просто MetaTrader. Без номера.
Когда мы сделали язык MQL2 и встроили его в терминал, система стала называться MetaTrader 2.
MetaTrader стал тройкой в 2003 году, когда мы добавили возможность программировать пользовательские индикаторы.
Похоже, что немногие задумываются над вопросом "Как объединить чужой язык со своей моделью данных?". Как быстро и бесшовно получать прямой доступ из того же .NET/Java кода к мельчайшим настройкам/данным терминала?
Именно этот вопрос и останавливает использование других языков.
Сделать терминал COM сервером, это реализуемо, если очень захотеть. Не здесь собака зарыта, это скорей отмазка.
Зато если открыть API:
1. Нельзя будет отличить МТС от человека
2. ИМХО, появятся МТС, которые будут хачить терминал
3. На Ваше усмотрение, первые 2 пункта далеко не единственные
Поправьте, если я неправ.