Portfolio & Publications

This section presents some of my work in field of quantitative analysis, modelling and development.

Pricing



Poetiq

QLib

Qlib is simple pricing engine pricing derivatives. It covers options, bonds and swaps pricing.

Tech: C++

Financial Modelling



Sigma Sphere Workstation

Yield Curve Modelling - NSS

The Nelson-Siegel-Svensson model is widely put into practice by fixed income boutiques and central banks. The curve modelling is based on polynomial function that approximates theoretical yield curve. The project covered yield curve modelling and visualization with technical documentation to underlying model. In order to learn more about model please review demo and short documentation with links below.

Demo: 3D Historical - NSS Model
Demo: Yield Curve Lookup - NSS Model
Mind that Demo, is set up for less evolutions than required by the model so it often finds local instead of global minima. As otherwise computationally expensive, this is only for presentation purposes.
Documentation: Yield Curve Lookup - NSS Model
Tech: R, Shiny

Trading and Backtesting Systems



Poetiq

Poetiq

Poetiq is KDB+/q based backtesting engine. The engine was developed in cooperation with Stockopedia. The engine is built on standard alpha-oms-port. const.- exec mod. structure; following the format of trading normally adapted by quantitative funds.

Features
Poetiq
  • The engine is built to be flexible in use, and optimized for speed.
  • The market simulation component is replaceable by DMA component, so the system is prepared for fast switch to production. This shortens whole process of implementation of quantitative trading strategies by cutting off additional development when moving to production.
  • System is based on event processing, with further use of subscription-publishing model for event processing.
Git: Git repository
Tech: KDB+/q, Python

Sigma Sphere Workstation

Sigma Sphere Workstation

Sigma Sphere Workstation is the back-testing platform integrating R with C# providing strategy editor. Fast execution of testing is ground for timely output which saves one's valuable time, when it is usually the most of lack, when building profitable strategies. Flexibility is something what is valued highly, that's why platform contains custom collections for data keeping and processing. The world of programming languages refrains collections to int/long size what has been circumvented here, so that platform has no restriction for tick values. All processing is in memory so speed is assured.

Features
Sigma Sphere Workstation
  • It contains adapters, relative and absolute data source objects ,(internal, Bloomberg, IQ feed) with file and SQL based persistent layer.
  • Classic window for strategy testing. There are two ways of processing ->
        - full strategy management (provides 3 trainable modes for machine learning models (Full eval, Train/Test mod, custom Train)
        - alpha model + risk management model (I work on this)
  • Fee scheme implementable.
  • Calculates basic stats, var, expected shortfall, Sharpe ratio (simple form r/var) a Sharpe ratio (r-r(risk free))/var. Strategies can access them and so use them to adjust risk management, but they are calculated based on lazy load so do not slow down whole calculation if not used.
  • Platform automatically converts currencies. It works for multi-currency portfolios. Everything goes to basic currency that can be set up on strategy level or app. level.
  • Strategy editor - code dom, integration with R, R code can be used inside strategy or data can be pushed to R console for further analysis. (subject to rebuilding, I plan to create whole analytical layer here)
  • Strategy specific windows -> there it great space for whatever to be included in strategies with the use of strategy specific tabs. (R-Markdown reports to be added)
  • Portfolio lookup.
  • Trade monitoring.
  • Rolling of futures shown in last part of the video, make the tool extremely useful, it's something I did not come upon with other tools. The chain is automatically rolled by the system.
Tech: C#,R, MSSQL, Bloomberg API

Arbitrage Trader

Arbitrage Trader

Arbitrage trader is system trading currency differences, basically cross broker spot arbitrage. Identifying and executing differences undergoes calculation of probability for the re-quote. Naturally arbitrages are appearing and disappearing in time as competition rises or companies change adjust their systems. The platform was so of great use for some time when FX market provided opportunity as some brokers did not follow fully OTC prices. They created arbitrage opportunity. The application exploited the opportunity and made use of it.

Tech: C#, MySQL, FIX

Utils



Bloomberg API Wrapper

Bloomberg API Wrapper

Bloomberg API Wrapper is small library allowing programmer to pass classes decorated with Bloomberg attributes to send directly to Bloomberg API. This makes whole communication much simpler and code becomes more readable so as the time spent on code writing is significantly less than alternative treating of messages in a full.

Git: Git repository
Tech: C#

Contact Details

Telephone: 00421 (0)917 617 192
Email: jakub.martinovic.husar@sigmasphere.com
Website: www.sigmasphere.com