Иван Файртрейдов
Иван Файртрейдов личный блог
28 декабря 2014, 15:30

Trading framework

Здравствуйте,
хотел представить на публику трейдинг фреймворк который разрабатываю на скале,
разрабатываю давно и он мне очень нравится, сорцы хостятся на bitbucket в гите
билдится с помощью maven
описание на английском
bitbucket.org/firetrade/firelib/wiki/Home
пример рисерча по стратегии в ролике
www.youtube.com/watch?v=hPSbtsPxjbA
сорцы все в открытом доступе, ключевые части покрыты тестами

основные фичи описаны здесь на английском
bitbucket.org/firetrade/firelib/wiki/Features
если на русском:

вывод стратегии в прод без изменения кода
баскет трейдинг с множеством инсрументов
быстрая в батчах оптимизация с невысокими требованиями по памяти
симуляция асинхронности работы с маркетом что критично для переноса стратегий с бэктеста в прод и тестинга HFT стратегий
как входные данные поддерживаются тики и бары — стаканы еще не сделаны, но несложно сделать с текущей архитектурой
репортинг независимо реализован от ядра фреймворка — промежуточные данные выводятся в csv далее их можно анализировать с помощью питона, текущий стандартный репорт с помощью питона (pandas/ipython)
репортинг позволяет интерактивный рисерч, комбинирование факторов без повторного перетеста
для скорости реализована прозрачная конвертация csv маркет данных в бинарный формат что позволяет читать 10-12 миллионов тиков в секунду
архитектура исключает race-condition в коре фреймворка
тк на скале написан позволяет использовать любые библиотеки из java мира коих тысячи — может как нибудь сделаю демонстрацию machine learning


на вики есть некоторые пробелы в доках, но постепенно их заполняю

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

код открыт, поэтому каждый может пользоваться, если интересно, продуман шаблон для хостинга-деплоя собственных стратегий, чтобы не заморачиваться с деплоем стратегий

также думаю будет интересен фреймворк для hft трейдеров с не очень высокими требованиям по задержкам с хорошими моделями
архитектура допускает расширение фреймворка до стаканов и ордер лога с эмуляций проскальзываний
думаю вклад фреймворка в задержки должен быть не более 100 микросекунд хотя надо измерять

пс раньше был фреймворк на c#, но это винда со всеми вытекающими, они делают какие то телодвижения в сторону линукса, но в ближайший год-два не думаю, что будет что то зрелое
scala мощнейший язык гибридного типа и можно писать очень краткие выразительные программы на нем, хотя есть некоторый входной барьер
23 Комментария
  • vito333
    28 декабря 2014, 18:07
    Много непонятного, но, сука, интересно
  • vfreeman
    28 декабря 2014, 19:25
    можете озвучить целевую аудиторию этого продукта?
  • Рома Н.К.
    28 декабря 2014, 20:16
    хорошая идея. а сколько на данный момент участников?
  • Рома Н.К.
    29 декабря 2014, 07:21
    а как у Вас предикшин считается? на чем основан?
      • Рома Н.К.
        29 декабря 2014, 09:59
        Иван Файртрейдов, Я посмотрел видео, в том месте где были показаны трейды, видно было, что входы в позицию как-то не особо впечатляют, это с чем связано? и ещё, данные подгружаете из внешних csv, а как в Вашей архитектуре решается вопрос с динамической работой с данными, имею ввиду их поступление, хранение, обработка, и принятие решений, бектест?
    • Рома Н.К.
      29 декабря 2014, 10:10
      Иван Файртрейдов, а данные где храните? имею ввиду БД какая-нибудь используется или нет? и насчет баскета хотел спросить, получается у Вас на данный момент используется только регрессия?
        • Рома Н.К.
          29 декабря 2014, 10:21
          Иван Файртрейдов, да это понятно, что каркас. Какие модели планируете развивать? насчет хранения данных и их обработки, если использовать внутренний язык БД (смотря какую конечно же использовать), то можно добиться хорошей скорости, но конечно не для HFT.
        • Рома Н.К.
          29 декабря 2014, 10:25
          Иван Файртрейдов, скажите а как обстоит дело со скоростью обработки данных и вычислений в скала? если можно, то в сравнении с с++, с#
    • Рома Н.К.
      29 декабря 2014, 11:31
      Иван Файртрейдов, уже глянул, перспективы конечно же есть. а какая у вашего проекта конечная цель? и ёще, хотел бы услышать Ваше мнение насчет использования БД в таких проектах. почему все-таки ваш фреймворк не предусматривает работу с БД?
        • Рома Н.К.
          29 декабря 2014, 12:30
          Иван Файртрейдов, по плазе есть наработки?
    • Рома Н.К.
      29 декабря 2014, 13:44
      Иван Файртрейдов, у Вас есть скайп?
  • Рома Н.К.
    29 декабря 2014, 14:07
    ок

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн