# ApaLibNET

## Advanced Portfolio Analytics Library .NET

Home > Information > Overview

### Add-In Architecture & Functionality

ApaLibNET is not a "VBA add-in" or "Excel macro", but consists of large libraries of **compiled .NET code**. All calculations are 100% independent of MS Excel, and in fact would work on other platforms like Matlab, ASP web pages, python and other platforms able to interface the .NET standard.

Compiled .NET has the advantage that it is **very fast** (about 10% slower than machine code) with **minimum interference** with the operating system.

ApaLibNET does not rely on "open source code" and similar license types, but is software **designed for commercial business applications**.

The **functionality** of the add-in includes...

- Temporal disaggregation methods: Chow/Lin, Fernandez, Litterman and proprietary methods to generate, for example, monthly observations from quarterly returns.
- Simulation of Markov regime switching processes
- Plotting Markowitz Diversification charts for risk measures beyond volatility
- Piecewise Linear Regression Analysis
- Drawing Dendrograms as Excel charts
- Waterfall allocation (portfolio construction based on hierarchical clustering)
- Clustering Algorithms: Hierarchical clustering , k-means Clustering
- Calculating downside and upside correlation matrices
- Resampling from multivariate time series data, considering autocorrelations
- Ulcer Index, Ulcer Performance Index
- Non-parametric confidence bands for mean, volatility, skewness, kurtosis, correlation, shortfall probability
- Cauchy distribution: inv, cfd, pdf, rnd, sim
- Critical Line Algorithm: implementation of Markkowitz procedure to determine the exact mean-variance efficient frontier
- Simulation of valid random correlation matrices
- Black / Litterman portfolio construction
- Upside/Downside Capture Ratios
- Essential matrix and linear algebra functionality not covered by Excel's built-in functions
- Ex post contributions to portfolio volatility, tracking error and beta
- Dispersion measurement: Shannon entropy
- Singular Spectral Analysis
- Simulation of price processes (GBM, jump-diffusion, ARMA(2,2), GARCH(1,1), normal mixture)
- Conversion of continuous/discrete correlation coefficients
- Portfolio Construction based on Risk Budgets (percentage contributions to volatility)
- Andrew Lo's Active-Passive Ratio
- Statistical classification: k-Means clustering
- Speed/Accuracy Modes: Fast, Balanced, Accurate
- Fixing an invalid correlation matrix
- Contributions to Sharpe Ratio
- Equal-Volatility-Contribution portfolio construction (i.e. risk parity portfolio, equal risk contribution portfolio); robust and exact solutions
- LPM/ UPM, Co-LPM/Co-UPM, Asymmetrical Co-LPM/UPM Matrix, Symmetrical Co-LPM/UPM Matrix
- Parametric VaR: Normal VaR, Modified VaR (Cornish-Fisher Expansion) and NIG VaR
- Parametric CVaR: Normal CVaR
- Historical VaR, CVaR, Shorfall Probability
- Historical Value-At-Gain, Longfall Probability
- Autocorrelation, Partial Autocorrelation Function including confidence bands
- Ljung-Box Q Test for significant autocorrelations
- Normal QQ Correlation, Normal QQ Plot
- Generation of exponential weighting schemes given a halflife/lambda value
- EWMA volatility, correlation, covariance, beta, arithmetic mean
- Conversion Lambda-to-Halflife and vice versa
- Stochastic dominance of any order
- Normal Inverse Gaussian (NIG) distribution functionality: pdf, cdf, invcdf, parameter/moment conversions and maximum likelihood parameter estimation
- Efficient simulation of normal, student's T and NIG distributions for bootstrapping purposes
- Simulation of a NIG distribution with randmized parameters
- Spearman Rank Correlation Coefficient
- Maximum Drawdown, Drawdowns, Underwater Returns, Nth-Non-Overlapping Drawdowns
- Maximum Runup, Runups, Overwater Returns, Nth-Non-Overlapping Drawdowns
- Losing Runs, Winning Runs
- Tracking Error, Beta, Residual Risk, Treynor/Mazui Gamma, Volatility
- Traditional Risk-Adjusted Performance Measures: Sharpe Ratio, Treynor Ratio, Jensen's Alpha, Information Ration (active returns), Information Ratio (residual returns)
- Alterantive Risk-Adjusted Performance Measures: Sortino Ratio, Upside Potential Ratio, Kappa3, Omega, Burke Ratio, Sterling Ratio, Calmar Ratio, Excess Return on VaR, Modified Sharpe Ratio, Conditional Sharpe Ratio, Adjusted Sharpe Ratio, Rachev Ratio, Generalized Rachev Ratio
- Style Analysis: average weights or rolling weights based on a certain window size
- Dynamic Histogram
- Empirical Distribution Function
- Jarque-Bera Test for Normality
- Various utility functions for time series data management
- Bull/Bear Market Returns , Up/Down Market Returns, Upper/Lower Returns
- Geometric, arithmetic average and cumulative returns, conversion of discrete/continuous returns
- Blundell/Ward filter for the "unsmoothing" of returns with first-order autocorrelation
- Simulation of uniform variables from the Clayton and Gaussian copulas
- Ex post asset covariance and correlation matrices
- Statistical factor models: factor extraction with Principal Component Analysis (PCA), factor alphas, betas, weights and portfolio variance decomposition into factor risk and residual risk
- Average pairwise correlation matrix
- Simulate values from the multivariate normal distribution
- Mahalanobis distance between two data sets
- Univariate/bivariate outliers and confidence region for the bivariate Gaussian distribution
- Rank correlation coefficients: Kendall's tau and Spearman's rank correlation coefficient
- Triangular distribution (pdf, cdf, inv, mom, rnd, sim)
- Simplex Sampling (random portfolio weight generation)
- GARCH(1,1) parameters maximum likelihood estimation, calculation of conditional volatility, forward and expected forward volatility, charting
- Factor model mathematics (portfolio risk and return, covariance matrix based on factor exposure vector and systematic and residual risk)
- Mean-variance portfolio optimization: efficient frontiers for restricted or unrestricted weights, dynamic efficient frontier, minimum variance portfolio weights
- Risk contributions (marginal, component, percentage) to portfolio volatility, normal value-at-risk and modified value-at-risk
- Pricipal Component Analysis (PCA): Eigenvalues and Eigenvectors
- Generation of return data sets that exactly reproduce defined returns, volatilities and correlations
- Bayesian risk & return estimators for portfolio optimization: Bayes-Stein, Deloit/Wolf, Jorion
- Augmented Dickey-Fuller test for unit root (useful for detecting the presence of cointegration in pairs trading)
- Hurst coefficient (an indicator for the presence of momentum or mean reversion in return time series data)
- Waterfall chart: calculation of necessary inputs such that a stacked bar chart becomes a waterfall chart
- Attribute Linking: chain-linking of absolute (constituent contributions) and relative (attribution effects) portfolio attributes.
- Tail Index estimation (Hill method)
- Two-sided t-test (test whether the sample mean return is statistically different from another value).
- Resampled Efficient Frontier (the frontier in mu/sigma space, constituent weights of portfolios on the resampled frontier
- Time aggregation of returns: conversion of time series to time series with lower frequency; a convenient way to check the validity of the "square root n" rule in the time aggregation of volatility
- Consolidation of portfolio/benchmark segment data for flexibility in the calculation of performance attribution effects
- Random portfolio weights (biased/unbiased, restricted/unrestricted versions)
- Nelson/Siegel/Svensson yield curve modeling: calculation of points on the N/S/S curve, bonds valuation based on the N/S/S curve
- Drawdown-At-Risk and Conditional Drawdown-At-Risk (both historical)
- Historical Interim Value-At-Risk
- Money-Weighted Return (Dollar-Weighted Return, Internal Rate of Return) from portfolio valuations and in-/out flows and their time weights
- Modified Dietz and Original Dietz Time-Weighted Return from portfolio valuations and in-/out flows and their time weights
- All functions can be used in VBA code, i.e. in user-defined functions as well as classical Excel macros.
- Lower and bounds for editing valid correlation matrices
- Inverse percentile function
- Population kurtosis and skewness
- Expected maximum drawdown of a Geometric Brownian Motion
- Z-Score, Modified Z-Score
- Outlier identification with Z-Score and Modified Z-Score
- Mean Absolute Deviation from Mean, Mean Absolute Deviation from Median
- Normal Mixture Distributions
- Shrinking a valid correlation matrix towards a target
- Parametric Value-At-Risk from conditional and unconditional GARCH(1,1) volatilities
- Linear Multiple Regression (OLS): parameters, R-squared, adjusted R-squared, t-test and p-values
- Chow test for structural breaks
- Conversion of price series into return time series
- Resampling from time series with the option to preserve serial dependencies
- Linear or Non-Linear Dual Alpha / Dual Beta Single-Index Model
- Logistic distributions
- Tail risk attribution of Modified Value-At-Risk
- A fast and high-quality random number generator (Multiply-With-Carry)
- CPPI (Constant Proportion Portfolio Insurance) strategy simulation
- Stochastic cash flow analysis, Monte Carlo wealth simulation for finanical planning and asset liability management (ALM)
- Contributions to portfolio skewness, kurtosis and correlation
- Average correlation and dispersion of correlations
- Surplus optimization
- Testing the validity of a correlation matrix
- Determining the weights in the Most Diversified portfolio (portfolio which maximizes the Diversification Ratio)
- Implied correlation, implied correlation matrix
- Hodrick-Prescott filter
- Moving Average Convergence Divergence (MACD) indicator
- Trade profile for portfolio return, volatility and Sharpe Ratio
- Incremental contribution to volatility and Sharpe Ratio
- Turnover calculations based on two percentage allocations

If you have additional questions, please contact us by email.