Обсуждение статьи "Как за 10 минут написать DLL библиотеку для MQL5 и обмениваться данными?" - страница 3

 
kombat:

А возможно будет создавать простые длл средствами мкл5, проще говоря написать в едиторе и скомпилировать...?

А компилятор и линковщик со всеми Windows библиотеками и Platform SDK откуда взять?

Можно поступить гораздо проще - скачать и поставить бесплатный Visual Studio 2008 Express и делать в нем нужные DLL.

 
Renat:

А компилятор и линковщик со всеми Windows библиотеками и Platform SDK откуда взять?

Можно поступить гораздо проще - скачать и поставить бесплатный Visual Studio 2008 Express и делать в нем нужные DLL.

Вопрос не в бесплатности...

А в том, что ради небольшого требуется ставить монстра.

В общем спасибо за ответ...

 

Ещё один маааленький вопрос...

Что нужно скачать с этой страницы:
http://www.microsoft.com/express/Downloads/

это
Visual C++ 2008 Express Edition
или всё
All - Offline Install ISO image file

?

Visual Studio Express
Visual Studio Express
  • www.microsoft.com
Visual Studio Express for Web has the tools to create standards-based, responsive websites, web APIs, or real-time online experiences using ASP.NET. Publish your web application directly to Windows Azure from the IDE. Create web services consumed by connected devices. System Requirements: Windows 7 SP1 (x86 and x64) Windows 8 (x86 and...
 
kombat:


Visual C++ 2008 Express Edition

Его достаточно.
 
Renat:
Его достаточно.

спасиб, уже качаю.

Правда всё одним файлом (800 мб).

Бо не очень доверяю сетевой установке...

 
Renat:

Мы методично с 2001 года создали 4 поколения торговых языков с огромным сообществом трейдеров. Конкуренты умирали, их языки управления не развивались, а мы работали, работаем и будем работать.

Renat:

А компилятор и линковщик со всеми Windows библиотеками и Platform SDK откуда взять?

Можно поступить гораздо проще - скачать и поставить бесплатный Visual Studio 2008 Express и делать в нем нужные DLL.

Прежде всего надо выяснить что такое "их языки управления", провести разграничение "их" функций, и затем уж выяснять, что подразумевается под "их" развитием. Я не про конкурентов, а про языки. Как видим, торговые программы и системы живут среди многообразия окружающих оболочек, даже под виндами мы имеем C++/.net/JScript/shell script/ и прочие, и правильно выше отмечено, что нет смысла пытаться тащить всё внутрь торговой платформы - создание каких-то DLL, или обеспечение таймеров, обмен данными и прочее должно базироваться на уже имеющихся и широко известных средствах самой ОС, свободно доступных доп. модулей (скажем, постоянно развивающейся .net framework с его runtime-версиями) + мощнейших средств разработки и отладки - зачем городить велосипед или next generation Trading OS типа Chrome OS everywhere??

ИМХО развитие языка написания ТС должно служить именно специфическим задачам торговли, т.е. сбора информации, анализа, тестирования, управления торговлей и интеграции с другими системами - всё это можно и ИМХО нужно делать на высоком уровне современных средств разработки, т.е. интегрируя и расширяя выбранный стандартный framework общепринятыми в нём методами (ООП и тд). Задача не в написании замкнутой и самодостаточной платформы на смеси C/C++ или чего там ещё, а прежде всего качественное написание основ торговой платформы, её сервисов, API и интерфейса пользователя. Ибо задача интеграции конкретно имеющейся, пусть даже наилучшей, торговой платформы встанет по любому. Простой пример - автотрейдинг. Наверно понятно, что запуск винды с автологином и МТ терминалом в Старт папке ОС - это уже вредоносный анахронизм, нужен нормальный виндовый сервис, чтобы роботы работали не зависимо от логинов пользователя (сервера?). Возня с DLL, может, и не понадобилась, основывайся платформа на скажем .net. Пиши на C#, managed C++, Дельфи, J++ и ещё куче там чего. ИМХО сказалась боязнь разработчиков сделать слишком расширяемую и гибкую платформу, контролировать которую было бы значительно сложнее любой "песочницы" с подсечёнными корнями.

 

Сколько раз я уже слышал именно такие слова - зачем изобретать велосипед, зачем не взять java, Net и тд в качестве базы. А ведь я сам первые торговые стратегии начал писать ровно 11 лет назад, когда вообще практически понятия API к торговому счету не было.


Ради бога, берите готовые API разнообразных брокеров и делайте свои решения.

Только вот практика показывает, что сырые API требуют только программисты. А на одного программиста, готового в "рукопашную" сходить на написание системы приходятся 1000 трейдеров, которые хотят проверить свои стратегии на готовом и защищенном фреймворке.

Новички требуют API, иногда получают, потом проходит месяц мучений и понимания того, что API для написания даже самой простой торговой стратегии не хватает, а нужно все остальное готовое рыночное окружение. Оказывается, что рынка для простейших программ без интерфейса нет, что покупателей не интересует привязка к одному терминалу и тд. И желание писать дальше неизменно пропадает.


Для нормальной развиваемой среды автопрограммирования в торговых платформах нужен обязательно защищенный фреймворк с жесткой песочницей, иначе никто не будет обмениваться скриптами из-за страха троянов. А не будут обмениваться - умрет сообщество, а заодно и язык.

Сообщество - это не 50, 100 или 500 программистов (которые с удовольствием вытрут/вытирают об тебя ноги), а десятки и сотни тысяч трейдеров, которые используют системы с минимумом сложностей.

Кстати, только на MQL4.community ежедневно приходят больше 30 000 уникальных посетителей, а по всему миру пользователей MetaTrader 4 по нашим оценкам сильно больше миллиона.

MQL4: automated forex trading, strategy tester and custom indicators with MetaTrader
  • www.mql4.com
MQL4: automated forex trading, strategy tester and custom indicators with MetaTrader
 
Renat:
В билде 240 обертки упростили, теперь скорость вызова 19 911 000 вызовов в секунду.
О! таки это хорошо.
 
Renat:

Сколько раз я уже слышал именно такие слова - зачем изобретать велосипед, зачем не взять java, Net и тд в качестве базы. А ведь я сам первые торговые стратегии начал писать ровно 11 лет назад, когда вообще практически понятия API к торговому счету не было.
Это как сказать. Да и через 11 лет что-нибудь да должно было бы поменяться :)

Ради бога, берите готовые API разнообразных брокеров и делайте свои решения.
Иногда к этому склоняют. А почему бы не постараться улучшить ситуацию, тем более если позиция позволяет?

Только вот практика показывает, что сырые API требуют только программисты. А на одного программиста, готового в "рукопашную" сходить на написание системы приходятся 1000 трейдеров, которые хотят проверить свои стратегии на готовом и защищенном фреймворке.
Сырые - понятие относительное. Однако, порой API лучше чем ничего. Или, хуже, их принуждают использовать в силу внутренних орграниченой платформы.
По поводу "защищённого" фреймворка дискуссия открыта, что защищаем, от кого и как.

Новички требуют API, иногда получают, потом проходит месяц мучений и понимания того, что API для написания даже самой простой торговой стратегии не хватает, а нужно все остальное готовое рыночное окружение. Оказывается, что рынка для простейших программ без интерфейса нет, что покупателей не интересует привязка к одному терминалу и тд. И желание писать дальше неизменно пропадает.
Так об этом и речь - не API должен быть, а расширяемый фреймворк со специализированными интерфейсами, заточенными под конкретные задачи! Привязка к терминалу никого не интересует, но зато брокеры "любят" привязывать себя сами. Конечно, здесь им нужно посочувствовать.


Для нормальной развиваемой среды автопрограммирования в торговых платформах нужен обязательно защищенный фреймворк с жесткой песочницей, иначе никто не будет обмениваться скриптами из-за страха троянов. А не будут обмениваться - умрет сообщество, а заодно и язык.
Позволю здесь с Вами не согласиться, но открыт для переубеждения и изменения позиции. Назовите пример из истории автопрограммирования торговых платформ, где (излишняя) мощь той или иной доступной среды разработки переросла в страх пользователей и обрекло такую среду на разрушение и вымирание. Согласитесь, разрешение галочкой использовать DLL вызовы в МТ практически не решает в этом плане ничего, особенно если есть обоснованная причина прибегать к DLL.

Сообщество - это не 50, 100 или 500 программистов (которые с удовольствием вытрут/вытирают об тебя ноги), а десятки и сотни тысяч трейдеров, которые используют системы с минимумом сложностей.
Вот тогда и надо определиться с самого начала, а не пытаться запихать ООП для чела, имеющего смутное представление о программировании. Говоря специфически о системах автоторговли, дайте трейдерам минимум сложности и это перерастёт в максимум сложности под одеялом графического интерфейса (и, в итоге, кошмар для программера системы) - не проще ли никого не вводить в заблуждение и дать ИЗНАЧАЛЬНО возможности для максимальной гибкости создания систем, а не стараться находить компромисс дозволенного, чтобы работало для 95% случаев (читай - "все кроме единиц отщипенцев очень даже довольны, так наша компания позиционирует")?

Кстати, только на MQL4.community ежедневно приходят больше 30 000 уникальных посетителей, а по всему миру пользователей MetaTrader 4 по нашим оценкам сильно больше миллиона.
И что с этой статистикой прикажете делать? Понятно, с точки зрения бизнеса, ДЦ имеет с 98% отдавших денюжку бедолаг, врубивших красивый советничег в несомненно солидно смотрящемся торговом терминале с примочками...

MQL4: automated forex trading, strategy tester and custom indicators with MetaTrader
  • www.mql4.com
MQL4: automated forex trading, strategy tester and custom indicators with MetaTrader
 

Уважаемый pisara,

Давайте уточним - идет спор теоретика с практиком. За "мир во всем мире" конечно биться Вам никто не запрещает, но учитывайте побольше факторов кроме "а почему бы не улучшить?".

Ради бога, берите готовые API разнообразных брокеров и делайте свои решения.
Иногда к этому склоняют. А почему бы не постараться улучшить ситуацию, тем более если позиция позволяет?

Я так и написал - не будете его использовать, ибо не хотите заниматься рутиной. Вам ведь на блюдечке все надо будет дать - все индикаторы, все рыночное окружение, всю историю в разных периодах и тд. И чартинг надо бы, не в уме же Вы будете индикаторами манипулировать?

То есть, Вам фактически нужен полноценный терминал. И мы его даем: MetaTrader 5 + MQL5 + DLL.  Называйте его фреймворком или скажите сразу - отдайте терминал в исходниках/компонентах (ведь по сути этого требуете).


Программисты ошибочно считают "мощью" возможность писать скрипты для торговых систем на незащищенных нативных языках, а потом удивляются от того, что никто даже не собирается пользоваться их творениями. Поэтому они умирают едва родившись. Те же, кто развил и создал сообщество пользователей, думают гораздо глубже (ибо набили шишек раньше) и не допускают таких ошибок.

Контролируемый (по умолчанию отключенный) вызов DLL - это приемлемо, но вот загрузить непонятно кем сделанные DLL к себе в торговый терминал - это дыра похлеще непатченного интернет эксплорера 6.


Для информации статистика Google Trends по торговым терминалам с автоматизацией:


Google Тренды - Сервис: Поиск по Интернету. Запросы не указаны. - По всему миру, 2004 – настоящее время
Google Тренды - Сервис: Поиск по Интернету. Запросы не указаны. - По всему миру, 2004 – настоящее время
  • www.google.ru
Изучайте популярные поисковые запросы при помощи службы "Google Тренды".
Причина обращения: