Excel Add-In
Releases
Current release version: 2.2
Version 2.2 (March 25, 2013)
Implementation of additional functionality (8 new functions)...
- apaCLA(): Critical Line Algorithm (original Markowitz procedure to determine the exact efficient frontier)
- apaMRP.RT(): risk tolerance of the restricted maximum return portfolio
- apaWeights.MSR(): Weights of the maximum Sharpe Ratio portfolio
- apaCorrels.Random(), apaCorrels.Const(): generate correlation matrices with random and constant values
- apaMatrix.Standardize(): Standardize a time series matrix
- apaSystem.Deactivate(): Transfer your license from an old computer to a new one
- apaLicense.UserID(): for users not remembering their user id (because they have too many already)
Enhancements and changes...
- Various enhancements related to license management, update and similar operational functionality
- Enhanced algorithms for calculating correlation matrices from inputs/data, rank correlations
- Further alignment of accuracy/performance characteristics between functions, additional functions affected by apaSpeed.Set()
Version 2.1 (January 30, 2013)
Implementation of additional functionality (19 new functions)...
-
apaMVE(): direct calculation of mean, volatility and composition of portfolios on th mean-variance frontier
-
apaWeights.Combinatorial.TwoAssets(), apaWeights.Combinatorial.EqualWeighted(): helper functions for combinatorical portfolio construction
- apaTimePoints.FromDates(), apaTimePoints.Rounded(): helper functions to handle conversion of actual dates to time points / time periods for analytical purposes
-
apaReturn.IRR.All(): calculation of all real and imaginary solutions for the internal rate of return problem
-
apaMarketData.Yahoo(): retrieve price/return data from Yahoo Finance
-
apaGainLossSpread(),
apaGiniMeanDifference(): alternative risk measures
-
apaCovar.Semi(), apaCovars.Semi(), apaCoLPMs.Asymmetrical.Symmetrized(), apaCoUPMs.Asymmetrical.Symmetrized(): additional partial moment functions
-
apaConditionalSerialCorrelation(), apaBenfordLaw(), apaBiasRatio(): fraud indicators
-
apaActiveShare(): an exposure-based tracking measure
-
apaNormalMixture.StateProbabilities(), apaNormalMixture.States(): additional normal mixture distribution functionality
Enhancements and changes...
- Fixed a bug affecting the existing asymmetrical LPM/UPM
- In return calculation formulas, the argument "CFWeights" has been renamed "CFTime"
- Additional functions are now covered by the speed mode settings, further fine tuning of the speed modes
- Selected low-level performance enhancements
Version 2.0 (October 11, 2012)
Implementation of additional functionality (9 new functions)...
-
apaCaptureRation.Downside.Continuous(), apaCaptureRation.Downside.Discrete(), apaCaptureRation.Upside.Discrete(), apaCaptureRation.Upside.Continuous() - various capture ratios
-
apaLicense.ExpiryDate(), apaLicense.Puchased(), apaLicense.InUse() - software license helper functions
-
apaMatrix.Rank(), apaMatrix.ConditionNumber() - matrix / linear algebra functionality
Enhancements and changes...
- Fixed a bug in the installation process which affected automatic updating in certain system environments. IMPORTANT NOTE: the fix works on new installations only; existing installations should be 1) uninstalled and 2) all files and folders deleted manually; release 2.0 can then be downloaded and installed.
- Redesign of the installation wizard such that the same setup file can be used for Excel 32-bit and 64-bit.
- Introduction of a subscription-based licensing system: New users now purchase the add-in on a one year subscription basis. IMPORTANT NOTE: existing users can continue using the add-in and are eligible for all future updates at no additional costs.
Version 1.7 (September 30, 2012)
Implementation of additional functionality (9 new functions)...
-
apaBL.PosteriorReturns(), apaBL.PosteriorReturns.FullConf(), apaBL.ImpliedConfidence(), apaBL.ImpliedReturns(), apaBL.ImpliedWeights() - Blacl/Litterman portfolio construction
-
apaVolatility.ExPost.Contributions(), apaTrackingError.ExPost.Contributions(), apaBeta.ExPost.Contributions() - ex post contributions to various portfolio risk measures
-
apaEntropy.Shannon() - an alternative dispersion measure
Enhancements and changes...
- Fixed some compatibility issues of version 1.6 with older Excel versions.
Version 1.6 (September 17, 2012)
Implementation of additional functionality (23 new functions)...
-
apaSSA.Signal(), apaSSA.Signal.Redrawn(), apaSSA.Components(), apaSSA.Spectrum() - several methods to conduct singular spectral analysis
-
apaPriceSim.GBM(), apaPriceSim.GARCH11(), apaPriceSim.MN(), apaPriceSim.ARMA22(), apaPriceSim.JDLN - simulation of univaruate price processes; geometric Brownian motion, GARCH(1,1), Mmxed normal, ARMA(2,2) and Jump-Diffusion with lognormally distributed jumps
-
apaPcdf(), apaPpdf(), apaPinv(), apaPrnd(), apaPsim() - implementation of the Poisson distribution
-
apaUsim() - simulation of the uniform distribution, much faster and better than Excel's internal RAND()
-
apaLognormalToNormal.Correlation(), apaLognormalToNormal.Covariance(), apaLognormalToNormal.Volatility(), apaLognormalToNormal.Mean() and apaNormalToLognormal.Correlation(), apaNormalToLognormal.Covariance(), apaNormalToLognormal.Volatility(), apaNormalToLognormal.Mean() - conversion of the first two moments and dependence between the normal and corresponding lognormal distributions
Enhancements and changes...
- Various minor enhancements affecting all functions or selected function groups
Version 1.5 (May 29, 2012)
Implementation of additional functionality (13 new functions)...
- apaWeights.RB, apaWeights.RB.FromCovars: Determine composition of
the risk budgeting portfolio (i.e. portfolio with risk contributions that
correspond to a given risk budget)
- apaSpeed.Set and apaSpeed.Get: Management of calculation speed and calculation
accuracy
- apaReturn.Contributions: contributions to portrfolio return from
portfolio constitutents
- apaSharpeRatio.Contributions: contributions to Sharpe Ratio from
portfolio constitutents
- apaSharpeRatio.FromConst: calculate portfolio Sharpe Ratio
directly from constituent exces returns and constituent weights
- apaIsValidCF: validates skeweness and kurtosis values for
Cornish-Fisher expansion
- apaKMeans: k-means clustering algorithm
- apaCorrels.Analyze: analysis of the validity of a correlation
matrix
- apaCorrels.Fixed: Makes a correlation matrix semi-positive
definite (Eigenvalue method)
- apaWeights.MD.FromCovars: Maximum Diversification portfolio from
covariances
- apaWeights.EVC.FromCovars: Equal Risk Contributiuon (Risk Parity)
portfolio from covariances
Enhancements and changes...
- Simplified startup procedure resulting in faster startup times
- Increased secruity, the add-in only connects to our domain
www.andreasssteiner.net
- More robust determination of maximum diversification and risk
partiy portfolios
- Implemented a workaround for a multi-threading issue in Excel
Version 1.4
Implementation of additional functionality (13 new functions)...
- apaWeights.MD: determines the Most Diversified portfolio.
- apaCorrels.Implied: correlation matrix based on implied correlation coefficient,
- apaCorrel.Implied: Implied correlation coefficient.
- apaCorrels.IsValid: checks whether a matrix is a valid correlation matrix
- apaWeights.EVC.Robust: determines the robust risk parity portfolio.
- apaHPFilter: Hodrick-Prescott filter.
- apaMACD: Moving Average Convergence Divergence indicator (technical analysis).
- apaTradeProfile: impact analysis of trades on selected return, risk and risk-adjusted performance measures.
- apaSharpe.Incremental: incremental asset contributions to portfolio Sharpe Ratio.
- apaVolatility.Incremental: incremental asset contributions to portfolio volatility.
- apaTSGetRow: extract a row from a matrix.
- apaTurnover: calculates tunrover based on changes in precentage allocations
- apaVolatility.ExAnte.Contributions.FromCovars: ex ante volatility contributions from asset exposures and a covariance matrix.
Enhancements and changes....
- New argument IsCorrelOtherwiseCovar: All functions related to statistical factor modeling (apaStatFactors...) can now either target the correlation or the covariance matrix.
- Changed versioning: new format is Major.Minor(.Build)
- Set user agent to operate the function library / Excel add-in in high security environments.
Version 1.3.4
Implementation of additional functionality (1 new function)...
- apaWeights.MVE.Liabilities.Restricted.RiskTolerance: constituent weights of a portfolio on the mean-variance-liability efficient frontier,
Enhancements and changes....
- Web-based activation/licensing system
- Various minor performance enhancements affecting many functions indirectly
Version 1.3.3
Implementation of additional functionality (7 new functions)...
- apaWeights.EVC: Weights of the fully invested long-only equal-volatility-contribution portfolio.
- apaActivePassiveRatio: a portfolio's active-passive ratio
- apaGARCH11.Volatility.Conditional.Forward: GARCH(1,1) forward volatility
- apaGARCH11.Volatility.Conditional.ExpectedForward: GARCH(1,1) expected forward volatility
- apaCorrel.Average: Average correlation coefficient from returns
- apaCorrel.Dispersion: Dispersion of orrelation coefficient from returns
- apaCorrels.Dispersion: Dispersion of orrelation coefficient from correlations
Enhancements and changes....
- Name changes in all GARCh(1,1) functions
- Changes in GARCH(1,1) methodology: unconditional volatility is now set to the sample volatility of the return time series (volatility targeting)
- Various minor performance enhancements affecting many functions indirectly
- Generalized licensing algorithm
Version 1.3.2
Implementation of additional functionality (7 new functions)...
- apaWealthSimulation: Stochastic wealth simulation that can be used for financial planning purposes or asset/liability management
- apaSkewness.Contributions: Contributions to portfolio skewness
- apaKurtosis.Contributions: Contributions to portfolio kurtosis
- apaCorrels.Contributions: Contributions to correlation
- apaCFinv, apaCFrnd, apaCFsim: a partial implementation of the distribution based on the Cornish-Fisher Expansion for simulation purposes
Enhancements and changes....
- Introduction of a setup file, making the activcation process more user friendly
- apaTSGet() returns a zero value if no numerical values are found in a range
Version 1.3.1
Implementation of additional functionality (3 new functions)...
- apaStrategy.CPPI: CPPI strategy simulation
- apaVersion.Current: Latest available version number
- apaUrnd: Fast generation of a high-quality uniform random number
Enhancements and changes....
- Automatic version check and download whenever a new release is available
- Fast and high-quality random number generation with the Multiply-With-Carry method
- Various numerically intense functions were given an optional DoSwitchOff parameter (e.g. apaVaR.GP)
- Various numerically intense functions are not calcualted anymore in the Excel function wizard
- Renamed apaVersion to apaVersion.Installed
- Various minor performance enhancements affecting several functions
Version 1.3.0
Implementation of additional functionality (28 new function in total)...
- Automatically resize array formulas such that all results are shown
- Several functions related to empirical loss analysis (e.g. mean excess loss)
- Exceedance correlations
- Empirical tail dependence
- Generalized Pareto distribution: cdf, pdf, inv, simulation, estimation
- EVT VaR estimate based on the Generalized Pareto distribution
- Symetrized Joe-Clayton copula: cdf, pdf, simualtion, estimation
- Empirical copulas: pdf, cdf
- Simulation of the independence copula
- Ichimoku chart
- Diversification ratio
- Random allocations with restrictions and bias
Enhancements and changes....
- Requires the .NET 4.0 framework
- Returns low-level error messages, not just #VALUE anymore
- Various performance enhancement
- Faster and more accurate numerical optimization algorithm (Nelder-Mead)
- Renamed apaSystemPerformance() to apaSystem.Performance()
Version 1.2.6
Implementation of additional functionality (38 new functions in total)...
- 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 (two components): Cdf, pdf, maximum likelihood estimation, inv cdf, simulation, theoretical first four moments from distribution arguments
- Shrinking a valid correlation matrix towards a target (perfect correlation, zero correlation, minimium correlation)
- Parametric Value-At-Risk from conditional and unconditional GARCH(1,1) volatilities
- Non-linear serial dependency: autocorrelations calculated with Spearman's rank correlation coefficient
- Linear Multiple Regression (OLS): parameters, R-squared, adjusted R-squared, t-test and p-values
- Upper and Lower returns relative to a threshold
- 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 distribution: cdf, pdf, inv cdf, moments, arguments from moments
- Tail risk attribution of Modified Value-At-Risk
Enhancements...
- Various minor changes enhancing stability (Excel crashes due to memory overflows)
- Different, more mainstream, formula for Clayton copula
- Renamed BiNormal and BiClayton simulation functions
- Rolling style analysis: the first n weights are not zero anymore, but N/A
Version 1.2.5
Implementation of additional functionality...
- Population versions of the third and fourth moment: apaKurtosis.Population, apaSkewness.Population
- Inverse percentile function: apaPercemtile.Inverse
- Lower and upper bounds on the entries in a valid correlation matrix: apaCorrels.Bounds
Enhancements...
- Various performance and stability enhancements
- Adjusted definition of CVaR and CVaG not to include VaR/VaG
- Introducing the license file
- Deleted the VaG function because it is redundant
- Changed CVaR, CDaR functions to accept confidence rather than a threshold
- Changed Conditiona Sharpe Ratio, Rachev Ratio and Generalized Rachev Ratio functions to accept confidence level rather than a threshold
Version 1.2.4
Implementation of additional functionality...
- Historical Interim Value-At-Risk
- Contributions to Ex Ante Tracking Error when asset returns in portfolio and benchmark are identical or different.
- Loading external CSV files as time series
- Calculation of all rolling returns with one function call
- Portfolio kurtosis/skewness from returns or cokurtosis/coskewness matrix
- Money-Weighted Return (IRR) and Time-Weighted Return (Original Dietz, Modified Dietz)
Enhancements...
- Several functions return #N/A values, which simplifies making charts
- The XLA component is not needed anymore
Version 1.2.3
Implementation of additional functionality...
- High quality random number generation with the Mersenne Twister algorithm
- Function to create unbiased restricted random weight
- Drawdown-At-Risk/Conditional Drawdown-At-Risk functions
- System Performance Test function
Version 1.2.2
Implementation of additional functionality...
- Nelson/Siegel/Svensson yield curve modeling functions
- Biased and unbiased functions to generate random weights
- Calculation of the weights of the maximum return portfolio on the mean-variance efficient frontier with inequality constraints on the weights.
Enhancements
- Performance increase of all functions related to empirical percentiles.
- Fixed a bug in the functions simulating random distributions (Normal, Multivariate Normal, NIG, T etc.)
Version 1.2.1
Implementation of additional functionality...
- Student T distribution: cdf, pdf, inv
- Time aggregation of returns
- Consolidation of segment data for performance attribution purpose
|