Это введение по минисерии статей в рамках нашего гайда о том, что такое параметры у роботов, какие они бывают в OsEngine, и как использовать окно параметров для того, чтобы управлять роботом.
В данной статье будем знакомиться с классом IIStrategyParameter, родителем всех параметров. И где параметры отображаются в интерфейсе.
Как правило, большинство торговых алгоритмов имеет настраиваемые параметры, которые позволяют гибко настраивать систему для разных рынков и инструментов. Более того, с разными настройками робот может показывать совершенно разные результаты на одной и той же бумаге.
Конечно можно в роботах задействовать собственные варианты внедрения настроек, но куда предпочтительнее использовать специально созданные для этого классы. Ведь стандартные параметры сразу прорисовываются в интерфейсе тестера, торговой станции и оптимизатора.
Все типы параметров реализуют интерфейс IIStrategyParameter.
Использование готовых параметров дает возможность программе выводить настройки робота в специальном окне без необходимости создания для этого дополнительных модулей. Доступ к этому окну можно получить, нажав кнопку «Параметры», у конкретного робота:
Мы побеседовали со специалистом, который занимается Data Scientist, и узнали много вещей, связанных с возможностью применения искусственного интеллекта в биржевой торговле.
Во времена, когда слышатся лозунги: «Нейросети будут с нами надолго», возникает большой вопрос насчёт применения этих технологий для предсказания цен на бирже. Так как зачастую будущее движение цены — это огромный массив данных, которые влияют на ценообразование компании, а, как для многих известно, модели машинного обучения в разы быстрее обрабатывают биг дату.
Как я уже упомянул, самым заманчивым применением искусственного интеллекта в контексте финансовых рынков является его способность предсказывать будущие цены активов. Несмотря на то, что достичь высокой точности в этих предсказаниях пока не удается, многие крупные игроки финансового сектора, включая ведущие банки, инвестиционные фонды и прочие значимые организации, активно инвестируют ресурсы в разработку и совершенствование технологий машинного обучения.
По умолчанию как бы считается, что управляющий своими активами, управляющий чужими, наставник по инвестициям и фондовый аналитик — люди более-менее одной профессии. Раз точно умеет А, то наверное может и Б, и наоборот. По мне же, там может быть огромная разница, примерно как между футболистом, футбольным тренером и спортивным комментатором. Вообще три разных профессии, хотя все вертятся вокруг одной игры. Но играют в разное.
Разница следует из того, какой главный параметр оптимизируют в каждом конкретном случае? Только если честно? Переиначивая известную фразу: «Скажи мне главный параметр оптимизации, и я скажу, кто ты»
Управляющий своим капиталом — максимизирует прибыль, соблюдая некий уровень риска и усилий, все просто и честно. Если капитал чужой, то важен не только результат управления, но и сколько там денег. Отсюда добавляется параметр «соответствовать чужим настроениям», он может особо не мешать, но может затмевать все.
Данный способ подключения роботов в платформу нужно использовать, когда Ваши алгоритмы уже готовы, и Вы не нуждаетесь в дебаггинге. Просто торгуете, перенося скрипты из версии в версию OsEngine.
Суть его заключается в следующем: код алгоритмов создается и отлаживается в основном проекте, но потом переносится и хранится в виде текстовых файлов с расширением cs. в специальном каталоге рядом с exe файлом приложения:
ВРЕМЯ ДЕЙСТВИЯ: ДО ЗАКРЫТИЯ ТОРГОВ
УСЛОВИЕ: ЦЕНА >= 1.894
СТОП-ЛОСС: ЦЕНА ВАШЕЙ ПОКУПКИ — 0.04
ТЭЙК-ПРОФИТ: ЦЕНА ВАШЕЙ ПОКУПКИ + 0.04
СТАТИСТИКА С 22.09.1997 ПО 29.12.2018: 710/396
(ЧИСЛО ПРИБЫЛЬНЫХ СДЕЛОК/ЧИСЛО УБЫТОЧНЫХ)
В классе BotPanel имеется ряд абстрактных членов, которые необходимо реализовать в классах наследниках.
По-простому, надо сделать несколько обязательных методов после того, как Вы начнёте создавать своего робота.
Рассмотрим пример создания робота. Пустого, но который уже будет виден тестером.