Язык исследования количественных финансов - PullRequest
5 голосов
/ 30 января 2011

Я работаю над интерпретированной библиотекой количественного финансирования для быстрого создания прототипов производных акций.У меня нет опыта работы с такими языками (я слышал о сленге Гольдмана-Саха, но никогда не видел его).

Какая функциональность присутствует в таких языках, и обладают ли они некоторыми уникальными функциями, соответствующими финансовым рынкам?

Ответы [ 4 ]

4 голосов
/ 24 июля 2011

Вы когда-нибудь рассматривали Python? Существует множество зрелых библиотек, которые можно использовать для статистического анализа, сбора данных и очистки. Чтобы назвать несколько:

Numpy         - N-dim array objects
Scipy         - library of statistical and optimisation tools
statsmodels   - statistical modeling
Pandas        - data structures for time series, cross-sectional, or any other form of “labeled” data
matplotlib    - MATLAB-like plotting tools
PyTables      - hierarchical database package designed to efficiently manage very large amounts of data
CVXOPT        - convex optimization routines

Я лично реализовал некоторые довольно сложные производные модели pring в python, в том числе решетку процентных ставок Vasicek с скачком-диффузией, многие случайные процессы и даже сумел написать генетический оптимизатор.

Один из моих профессоров - директор по исследованиям в области математики в хедж-фонде Чикаго, который использует исключительно Python.

2 голосов
/ 30 января 2011

Возможно, у каждой компании есть что-то свое, но в Интернете есть некоторые материалы (в основном о DSL):

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

  • Кто будет его использовать - продажи или трейдеры или кванты или все
  • Как это будет использоваться - просто оценка заранее определенных блоков и / или решение проблем оптимизации.Это привело бы к возможности определять рабочие процессы.
  • Взаимодействие с базовой инфраструктурой и уровнем ее абстракций
  • Расширяемость (до какой степени)
  • Живые вычисления или моделирование
  • Поддержка ввода-вывода
1 голос
/ 30 января 2011

Большинство языков / инструментов предоставляют конструкции для представления и анализа временных рядов [например, материал регрессии и взаимной корреляции временных рядов]

«Уникальные» функции относятся к скорости доступа, простоте запросов или выразительности.

K очень быстрый, очень лаконичный язык

Matlab очень выразителен, что позволяет вам использовать весь набор инструментов и расширять с помощью Java

Но в конце концов это действительно зависит от того, что именно вы хотите сделать.

0 голосов
/ 10 августа 2011

Вы когда-нибудь рассматривали R? См. Некоторые презентации на R / Finance 2011

...