eFinancial Planner: Goal Ranking

White Paper
Implementing Maslowian Portfolio Theory

A paper explaining Maslowian portoflio theory and how to implement it in practice.

View
Live Demo
movie showing the use of the app

10 minute video walkthrough of the proof of concept software capabilities (turn up the volume).

See the video

What?

eFinancialPlanner is a proof of concept software that I developed after completing my PhD on personal financial planning. It is based on the idea that people have multiple goals in life, these goals can be ranked in importance, and that these goals are more important than personality. The software allows you to input your financial situation, your goals, including their ranking, then calculates a financial plan that aims to achieve these goals as efficiently as possible.

We call this approach "Maslowian" after Abraham Maslow, who proposed a hierarchy of needs in psychology, because it is designed to cover financial needs and not desires. Our (Maslowian Portfolio Theory based) approach is different from traditional financial planning software, which often focuses on risk tolerance and personality traits (a consequence of Markowitz' mean-variance approach). This is akin to selling a sports car to a farmer who needs to work a field, simply because he likes speed.

The underlying assumption is that people have limited resources and must make trade-offs between different goals. By ranking goals, the software prioritizes which goals to focus on first and allocates resources accordingly. This, in its turn is rational and allows for customised feedback to the investor.

The software converts the investor's life goals into tangible optimization problems. This allows to design a coherent and logical investment problems for each goal. The most important goals are funded first, and less important goals are funded with any remaining resources, if available.

The software can also suggest suitable investment funds, provide good and bad scenarios via simulations, and deliver a complete financial plan.

Why?

MiFID (2007) and to some extent FINRA 2111 regulations forced banks and other financial advisors assure that the recommended assets are suitable for the private investor. While laudable, this regulatory pressure enforced advisory actions without solid scientific backing. The prevailing theory was Markowitz's 1952 portfolio theory, which won the Nobel Prize in 1991 and was widely recognized. That theory assumes investors are rational and risk-averse, consider all assets in one cauldron (the money for a sandwich is in the same portfolio as retirement savings and houses). That theory then ends up with one portfolio (one risk profile) per investor and focuses on maximizing returns for a given level of risk on an arbitrary horizon (somehow a mix between the one day horizon for the sandwich and the retirement that is for example 15,000 days away). Then on that arbitrary time horizon, we define an arbitrary risk level based on psychological preferences, translate that in an arbitrary way to volatility (standard deviation – which is not even a real risk measure), and then optimize the portfolio accordingly.

This does not make sense for most investors, as they have multiple goals, with different time horizons, and different risk tolerances. [It might have made sense for most investors in 1952 when only the super rich would invest, and they did not have to worry about subsidence, a place to live, etc. Therefore, they could set the arbitrary risk level based on there psychological preferences only.] However, even Markowitz himself was asked how he invested, he replied that he invested one-third in cash, one-third in bonds, and one-third in equities to minimize future regret.

This frustration led me to propose the Maslowian Portfolio Theory in 2008 — the first normative portfolio theory reconciling rational need based investing and behavioural finance.

The publication appeared in the Journal of Asset Management but did not change most banks’ approaches. Seeking greater traction, I pursued a PhD – which took four years and culminated in a 480-page thesis. This process was challenging due to resistance from the professors who were reluctant to amend Markowitz's theory. It felt preposterous to amend the Noble prize winning theory, even if that meant that we would not solve the cognitive dissonance between theory and investment practice. The jury grow to a diverse set of specialists, each masters in their own field (mathematics, legal, operational/practical, etc.).

Despite this work, most banks muddled on with their Markowitz based approach (even though the company that employed me successfully used the theory in their private banking). While I was happy with the success for wealthy clients, I wanted to make the approach more widely available. So, I embarked on developing this software. I chose C++ for efficient computation, CGI for server execution so users could access results via web browsers, and MySQL for data storage, offering scalability and speed. These choices were not the fastest to learn and work with, which contributed to a roughly three-year development timeline, culminating in what you see here.

Learning existing HTML frameworks for C++ was difficult for me, so I built my own along the way, but used Bootstrap's libraries for the bulk of the CSS and the client-side JavaScript. Similarly, I programmed bespoke statistical distributions and estimation methods. The result is software that runs lightning fast, even on the most modest rented virtual web servers, the results appear nearly instantly. That is reassuring, because the code that is ready now, could be copied into an industrial environment.

Note that the CGI binary is not designed to use multi-threading. However, when using Apache (or other webserver) with CGI, Apache creates a new process for each CGI request. This means each CGI execution is isolated with its own process, and multi-threading within the CGI binary typically does not provide performance benefits because Apache itself handles concurrency by spawning multiple processes or threads depending on its Multi-Processing Module (MPM) configuration.

Can I Use the app for free?

Currently, I don’t have a live server hosting the app, but you can watch the walk-through video.

Where is more information?

Depending on your interests:

  1. How the software works: see the video
  2. Scientific Foundations
    1. Some of my publications between 2008 and 2016, notably:
    2. my book: Maslowian Portfolio Theory, a Coherent Appraoch to Strategic Asset Allocation
  3. A Presentation about the software that explains the concept, advantages, and what the software does.
  4. Technical Documentation:
    1. Documentation in PDF (299 pages)
    2. Documentation in HTML
  5. Source code: available on request email us

Note: Installing this software on your own server requires familiarity with C++, CGI, MySQL, and Linux server management. Further you will need to load the database with your investment funds and portfolios on offer. You might also want to over-ride the long-term expectations on returns and volatility of asset classes, as well as the correlations between them. Of course, also define your own asset classes, and the investment products that represent them. Further, you will want to use CSS to customise the look and feel, and maybe fine-tuning of some JavaScript. This means that you need a solid understanding of Linux server management (a standard CGI-enabled LAMP stack will do: we need Linux, Apache, MySQL/MariaDB but not the PhP), the ability to compile the C++, enable CGI on the Apache server, load the database with appropriate access management, have an opinion on investment markets, investment products and the company's view on asset classes, as well as the investment philosophy of your firm. In summary, you need to know IT, investments, and your company.

How can I get involved?

At this point, the project is dormant. However, Contact me if you are interested in collaborating on further development, testing, or research related to eFinancialPlanner. We welcome academic institutions, financial advisors, and software developers who share our vision for improving personal financial planning.

Stay informed

Change Log

V1.0.0
2012 — 2016: active development