Кирков Алексей
Кирков Алексей личный блог
29 июня 2017, 23:25

quantlib

Опубликовал первую часть библиотеки для количественных трейдеров.

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

https://github.com/robostock/quantlibrary

Цели: добавить модуль расчета модельных портфелей по Марковицу и Блэку-Литерману, добавить инструменты машинного обучения.

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

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

 

P.S: Код доступен для использования в личных целях. В случае публикации обновлений библиотеки обязательна ссылка на первоисточник.

Использование кода в коммерческих целях запрещено

15 Комментариев
  • Так. Математику на чём писать планируете?
    • Stagirit
      30 июня 2017, 09:54
      Бобровский Дмитрий, кстати, у кого какие предпочтения по математике? Я armadillo использую, но пока так и не решил окончательно, оптимальный ли это выбор — вроде достаточно шустро, но конечно сильно менее удобно чем stl (я на плюсах)
      • Stagirit, stl почти наверное будет проигрывать armadillo в скорости вычислений. 
        Я обычно использую связки C#-C++ или C#-R-Rcpp. C# удобен в скорости разработки, C++/RCpp — в расчётах, R — в большом объёме готовых библиотек и скорости работы математики.
    • Кирков Алексей, да, но есть ньюансы. 
      1) Твой проект на C#. Копай в сторону R.NET и смежных проектов. Будь готов к тому, что тебе придётся писать враппер для многопоточной реализации. Вроде где-то на гитхабе попадался новый проект, который реализовывал многопоточку в связке C#-R, но насколько он адекватный — я хз.
      2) Ядро. Реализация на R требует R как среду исполнения. 
      3) Скорость. Если писать чисто скриптовый код на R, то при отсутствии понимания принципов устройства и особенностей языка он будет не самым шустрым. Тут, кстати, может подсобить Rcpp+R.
  • Пафос Респектыч
    30 июня 2017, 01:39
    Выглядит жидковато. Кому это может пригодиться?
    • Zweroboi, все начинали с «Hello world!». Кто знает, может, вскорости это будет мощная библиотека. Подумываю присоединиться к разработке тож.)))
      • Евгений
        30 июня 2017, 16:09
        Бобровский Дмитрий, может тогда и стоит присоединяться, когда она станет мощной библиотекой? ;-)
        • ch5oh
          30 июня 2017, 16:56

          Евгений, И ещё настораживает "Использование кода в коммерческих целях запрещено".

          Очень скользкая формулировка. Зарабатывать деньги на рынке — это коммерческие цели???

          Понятно, если Вы объявите лицензию Apache или GPL / LGPL. А тут какая-то своя личная лицензия предполагается?

          • Евгений
            30 июня 2017, 17:28
            ch5oh, обычная формулировка людей, не знающих российские законы.
        • Евгений, ну, если присоединяться по факту «мощности» библиотеки, то ничего не будет развиваться…
          • Евгений
            03 июля 2017, 10:38
            Бобровский Дмитрий, вот видите. Если без вас не будет развиваться, тогда и вы не поменяете ситуацию. Сыкономите себе несколько недель жизни, потратите на близких, а не на дядичек-анонимуосов.
  • Dry Run
    30 июня 2017, 06:47
    Алексей, вот это смотрели?: http://quantlib.org/
    Правда, написана она на C++, но есть C# аналог: https://github.com/amaggiulli/qlnet
    • Анатолий Федянин, можно враппер для managed-unmanaged кода написать или готовый взять.
  • ch5oh
    30 июня 2017, 12:54
    На чем библиотека? Какой язык? Чем лучше имеющихся релизаций?

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

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