Блог им. Zein

Свободный Scala/Java/Kotlin фреймворк для анализа/симуляции/торгов

    • 02 августа 2017, 13:15
    • |
    • Zein
  • Еще
Добрый день.

Некоторе время назад мы с другом (я пишу из под его аккаунта) интересовались темой торгов. Тогда мы разработали фреймворк для этих целей.

Что он позволяет:

1) Написание стратегий на Java/Scala. Это достаточно богатые высокоуровневые языки (по крайней мере по сравнению с языком того жэе метатрейдера), что позволяет проще писать сложную модульную логику.

2) Написание тестов — т.к. стратегия это просто стейт-машина реагирующая на внешние события, для нее можно написать юнит-тесты.

3) Торговля изолирована от стратегии т.н. «торговым бекендом», т.е. стратегия не знает о реальном способе осуществления торговли. Это позволяет, скажем, подменить торговый бекенд симулятором торгов.

4) Стратегия также изолирована от источников данных. Она видит просто источник событий, например тиков. Также стратегия может работать с несколькими источниками событий, то есть фактически есть простая возможность отслеживать несколько пар.

5) Стратегия также изолирована от системного таймера, что позволяет подменить таймер простым циклом. Это, вместе с пунктами 3 и 4 позволяет выполнять быстрые симуляции торговли на данных хранящихся локально (или даже выдуманных или генерируемых какими то алгоритмами).

6) Быстрые симуляции — для простой стратегии год торгов симулируется за несколько секунд.

7) Перебор параметров — есть механизм позволяющий перебирать параметры, т.е. запускать симуляции многократно с разными параметрами и сохранять логи тестовых прогонов для дальнейшего анализа.

8) Параллелизм — система изначально разрабатывалась с расчетом на параллельную симуляцию, каждый прогон подбора может быть запущен в отдельном процессе или даже на отдельной машине.

9) Интеграция с метатрейдером — для метатрейдера был написал плагин, который позволяет импортировать «тики» получаемые метатрейдером в качестве источника событий и использовать метатрейдер как тоговый бекенд. Т.е. фактически, можно управлять метатрейдером и торговать на любых площадках где есть его поддержка.

Сейчас тема торговли для нас не интересна и, вероятнее всего, не будет интересна в ближайшем будущем, поэтому мы делаем этот фреймворк доступным публично, бесплатно, под GPL v3 лицензией, в надежде что он будет кому то интересен и/или полезен.


Ссылка на гитхаб-репозиторий: github.com/7ocb/forex-trade-and-analysis-framework

В случае если нужна будет какая то поддержка, со мной можно связаться через issues в репозитории.
Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
199 | ★3
3 комментария
Небрежненько написано, плохо

Читайте на SMART-LAB:
Новости российского и зарубежного рынков.
Новости российского и зарубежного рынков
Если вас интересуют другие аналитические и информационные материалы от банка АО АКБ «ЦентроКредит», смотрите их на нашем...
Фото
Страховщики становятся финансовой опорой экономики России
Страховой рынок окончательно вышел за рамки своей традиционной роли. Сегодня он не только защищает людей и бизнес от рисков, но и превращается в...
Фото
Риски в инвестициях: как избежать опасных сделок с помощью ИИ
В этой статье я продолжу рассказывать, как искусственный интеллект научился помогать в инвестициях. В предыдущей части «Записок» я...
Фото
Мозговой штурм: какие идеи в моменте?
Доброго вечера. Сегодня мы провели традиционный мозговой штурм. Выпишу некоторые идеи:

теги блога Zein

....все тэги



UPDONW
Новый дизайн