False Entropy Pooling Claims
This article summarizes and rejects some of the false claims recently made about Entropy Pooling, specifically CVaR views.
Entropy Pooling is an incredibly powerful method for implementing market views and performing stress tests for fully general Monte Carlo investment simulations.
The method becomes especially powerful when it is applied in a sequential way, in which case it is referred to as Sequential Entropy Pooling (SeqEP).
For a quick introduction to Entropy Pooling, you can watch the video below:
For a deep presentation of Sequential Entropy Pooling (SeqEP) and how it fits into the broader Fully General Investment Framework (FGIF), see Chapter 5 of the Portfolio Construction and Risk Management book and Lecture 7: Sequential Entropy Pooling from the Applied Quantitative Investment Management course.
Recent false claims about Entropy Pooling
Due to the increasing adoption of the method, an increasing number of people try to portray themselves as Entropy Pooling experts despite having limited practical experience using the method.
The problem is that some of these people very confidently make strong claims about the method that are quote obviously outright wrong.
A recent example is someone who falsely claimed that:
CVaR views cannot be specified as inequalities with only linear constraints.
CVaR views cannot be solved in full generality without fixing VaR to the prior with linear constraints.
Ranking views for moments higher than the first (variance/correlation, skewness, kurtosis) cannot be implemented with linear constraints.
All these claims are in principle already rejected in Chapter 5 of the Portfolio Construction and Risk Management book. However, just to reject them in an even more obvious way, the below Python code uses the Investment Analysis module with the log-normal P&L that follows with the open-source fortitudo-tech package to give practical examples.
The nuances of CVaR views
As explained in Chapter 5 of the Portfolio Construction and Risk Management book, CVaR views in full generality require us to find an optimal number of scenarios below the VaR that are then subsequently used in the final Entropy Pooling update.
Since these algorithms are highly specialized and include several practical computation aspects, they are not included in the Portfolio Construction and Risk Management book.
Instead, you can find a simple example of CVaR views for S&P 500 and STOXX 50 in the accompanying Python code to Section 5.1.3. This example illustrates the basic implementation of CVaR views, while more advanced implementations that can handle the fully general view are implemented in the Investment Analysis module.
One challenge with VaR and CVaR views is ranking views. Currently, there are only slow and unstable mixed integer solutions for this problem for any practically-relevant simulation sample size. Hence, that is why we do not say that “the problem is solved”, while we are working on finding a solution that gives the same speed and stability as the CVaR views in the Python example above.
Conclusion
CVaR Entropy Pooling views in full generality are possible to implement to run in a fast and stable way with linear constraints on the posterior probabilities, while CVaR ranking views are still a challenge.
Be careful who you listen to when it comes to Entropy Pooling, because it seems to be a misunderstood method that some quickly want to claim expertise in.
I have used the method for around 10 years and worked closely with many institutional investors about its practical application in the last +5 years. Hence, my content about Entropy Pooling is based on that foundation.


