Официальный сайт СТ Форекс

Решение проблем при программировании торговых роботов на Wealth-lab

Многие из тех, кто программируют своих роботов на Wealth-lab сталкиваются с серьезной проблемой невозможности проторовывать свой код на других платформах из-за того, что на сторонних платформах нет нужных индикаторов, либо они реализованы иначе — стратегия торгует по-другому и получается работа проделана впустую.
Но есть решение и я с Вами им поделюсь!
На самом деле лицензионный Wealth-lab - это всего лишь оболочка, все его плюсы в специальных дополнениях (Extensions ), библиотеках индикаторов, и компонентах. Все эти «вкусности» пишут пользователи со всего света, на протяжении уже 10-ти лет.
В прошлой статье, написал, что Wealth-не очень шустрый и на мой взгляд торговать через него, используя маркет ордер, можно только часовки. Да и отсутствие стакана удручает.
Так, что делать, если мы хотим проторговывать более мелкие тайм-фреймы, или опционы, или вообще, FOREX?
Мы можем торговать например, через Stocksharp, но вдруг там нет тех индикаторов, которые нам нужны и их придется самому переписывать.
Для меня как для непрофессионального программиста — не самая лучшая идея. Сколько ошибок я могу наляпать, да и сколько это займет у меня времени.
Я, как и многие трейдеры — ленив, и как говориться «не хочу ничего решать, я хочу торговать». =)
я трейдер
я трейдер

Поэтому, я открыл для себя следующий способ облегчить себе работу — добавлять библиотеки Wealth-lab в проект с роботом на Stocksharp
1. Открываем нашего робота с использованием VisualStudio, добавляем dll-ки из корневой папки Wealth-lab в References в проект с роботом.

Открываем нашего робота
Открываем нашего робота

*Правой кнопкой на References, далее Add или Добавить ссылку, в зависимости от языка VisualStudio.
2. Добавляем using(и) Wealth-lab в класс вашего торгового робота

Добавляем using(и) Wealth-lab
Добавляем using(и) Wealth-lab

3. Индикатор должен иметь стандартный Stocksharp интерфейс, поэтому прописываем BaseIndicator

прописываем  BaseIndicator
прописываем BaseIndicator

4. Wealth использует Bars, а Stocksharp Candles — поэтому нам нужно создать свои Bars

нужно создать свои Bars
нужно создать свои Bars

5. Добавляем все значения candles в наши Bars, не забывая поменять double на decimal.

Добавляем все значения candles в наши Bars
Добавляем все значения candles в наши Bars

6. Затем, любой наш индикатор достаем прямо, как в wealth-lab, и не забываем преобразовать значение обратно в decimal.
любо� наш индикатор достаем прямо
любо� наш индикатор достаем прямо

С помощью таких индикаторов можно будет и опционы торговать, направленными стратегиям и FOREX, хоть круглосуточно. И само собой голубые фишки и неликвид - в общем, использовать их по прямому назначению!
Главное, что рассчитываться они будут точно также, как в Wealth-lab, а значит — наши тесты были проделаны не зря и им можно доверять.
Подключившись через Plaza II к бирже, можно торговать роботов-скальперов, без проблем, на этих же самых индикаторах с минимальной задержкой.
Вот пример готового индикатора, перенесенного из Wealth-lab:
пример готового индикатора
пример готового индикатора

7. Далее:
-компилируем проект.
-добавляем ссылку на библиотеку с нашим индикатором в References стратегии.
-пользуемся новым индикатором, как родными индикаторами StockSharp:
пользуемся новым индикатором
пользуемся новым индикатором

P.S. Возможно, дергать dll — это не самый этичный метод работы с лицензионных софтом, но Fidelity же не оставляет нам выбора, исключив российский рынок, как нишу для своей программы. А медленные коннекторы, как я уже писал подходят далеко не всем.