Уважаемые читатели Smart-Lab. Здесь собралось трейдерское сообщество и приверженцы разных стилей торговли. Сегодняшний пост будет интересен тем, кто торгует системно и использует для построения и тестирования торговых стратегий программу Wealth-Lab.
Многие из Вас пользуются этой программой (как по официальной лицензии, так и всякими левыми способами), однако полноценной инструкции по программированию стратегий в велсе
на русском языке с помощью C# и WealthScript — не существует. Во всяком случае мне найти не удалось.
Для тех, кто владеет английским — это не проблема, т.к. существует WealthScriptGuide — очень хорошее описание о том, как программно строить такие торговые стратегии в Велсе. Но думаю, что знатоков английского не так уж и много.
Чтобы не было путаницы, скажу, что есть русский перевод WlNetUserGuide — этот перевод можно было получить на сайте Цериха после предварительного запроса и оставления своих данных.
Однако сейчас, после того, как Церих перестал предоставлять своим клиентом брокер адаптер для Велс Лаба и после ухода оттуда Арсена Яковлева не знаю — предоставляют ли они эту инструкцию.
Да и инструкция эта (WlNetUserGuide) просто рассказывает о программе, она предназначена для общего знакомства с программой, а не для тех, кто хочет сам программировать стратегии на C#.
Исходя из этих соображений я решил самостоятельно перевести и снабдить примерами с российского рынка ценных бумаг инструкцию по программированию торговых стратегий в программе WealthLab.
Сразу скажу, для чего это делаю:
Во-первых, в последнее время я усиленно изучаю английский язык. А учить язык всегда легче, если применяешь его для того, что тебе действительно интересно. В моем случае, это без сомнения трейдинг и торговые стратегии.
Во-вторых, я изучаю еще один язык — язык программирования C#. А весь код для программирования стратегий в программе ВелсЛаб как раз приходится писать на этом языке программирования.
В-третьих, надеюсь эта инструкция будет полезной для Вас — ведь многие хотят строить и тестировать собственные торговые стратегии, но не владеют английским языком.
Хочу сразу предупредить, что скорее всего это будет не дословный перевод. Некоторые предложения я буду пытаться построить так, чтобы их можно было читать и понимать проще всего.
Если увидите какие-либо ошибки или Вам что-то покажется не совсем ясно — пишите об этом в комментариях — с удовольствием поправлю.
Уже переведенные части инструкции по программированию торговых стратегий в Велс Лаб я выкладываю
на своем блоге в этом разделе:
finlabportal.ru/category/wealthscript/
Тем, кто хочет своевременно получать новые статьи с переводом инструкции по программированию торговых стратегий в Велс Лаб — можете
воспользоваться RSS-подпиской.
Не знаю, нужно ли будет дублировать эту информацию здесь — на СмартЛабе, либо ограничиваться анонсами при переводе некоторого количества новых глав.
В общем, кому интересна эта затея — отпишитесь и заходите в гости.
Перевод технической литературы для целей изучения языка — это худший способ изучения языка.
Краткая инструкция:
Чтобы отлаживать стратегии в VS, необходимо выполнить следующие действия:
1. В Visual Studio создать новый проект типа «библиотека классов».
2. Добавить ссылку на основную сборку WL (WealthLab.dll)
3. Изменить в свойствах проекта путь построения сборки (вкладка Build -> Output Path) на путь папки Wealth Lab (напр., C:\Program Files\MS123\Wealth-Lab Developer 5\) и стартовое действие (вкладка Debug -> Start Action) на запуск Wealth.
4. Создать класс, наследующий от WealthScript (в нём перегрузить метод Execute()) и класс, наследующий от StrategyHelper (в нём перегрузить свойства Name, ID, Author, WealthScriptType, Description, CreationDate, LastModifiedDate).
Теперь можно запускать проект. Откроется Wealth Lab. При нажатии на кнопку Open Strategy появится список стратегий, в который будет включена созданная в Visual Studio стратегия, после чего можно ставить точки останова в VS, запускать стратегию из WLD и отлаживать её.
Решаете, какой .NET язык программирования начать изучать?
Мы рекомендуем для новичков посетить курсы по программированию на языке C#. Ведь именно C# это действительно современный, предназначенный для .NET язык программирования, который вобрал в себя все лучшее из других языков программирования. Если Вы уже программировали раньше, то изучение языка C# не составит для Вас труда.
Кроме незначительного преимущества в скорости — никакого.
Не вводите людей в заблуждение!
Прошерстите западные вакансии и требования к программистам для HFT.
Тут вопрос в том чего человек хочет, какие цели ставит. С# хорош для определенных задач :-)) Ни в одну западную контору вас на такие задачи не возьмут с С#.
Робота же можно писать хоть на Delphi, хоть на VBA (в силу своих возможностей). Главное выбирать инструмент под задачу.
Попытаюсь как то резюмировать:
С#:
1. Прост в освоении
2. Для исследования систем на велсе и тслаб
3. Быстро и без замарачек написать робота под задачу StockSharp в помощь.
С++:
1. Кросс-платформенность.
2. Совокупная стоимость ИТ решения, и реализация работы в RealTime — для западных контор, если туда нацелились.
3. QUDA, многопоточные задачи, работа с облаками и кластерами.
4. Очень быстро развивается стандарт, меллко мягкие не поспевают.
вы не поверите, но
3. Правильное название CUDA. И оно есть для C#. Использование CUDA одинаково по скорости и из C++ и из C#. Потому что там свой язык и свой процессоры.
4. Практически не развивается лет 20.
«Приятный звучный и очень настойчивый баритон послышался из ложи N 2:
— Все-таки желательно, гражданин артист, чтобы вы незамедлительно
разоблачили бы перед зрителями технику ваших фокусов, в особенности фокус с
денежными бумажками.»
Вопрос в другом, как для себя «трейдера» написать торгового робота?