When I’m not coding Sigma1 financial software, I’m often away from the keyboard thinking about it. Lately I’ve been thinking about how to subdivide the HAL0 portfolio-optimization code into autonomous pieces. There are many reasons to do this, but I will start by focusing on just one: power users.
For this blog post, I’m going to consider Jessica, a successful 32 year-old proprietary trader. Jessica is responsible for managing just over $500 million in company assets. She has access to in-house research, and can call on the company’s analysts, quants, and researchers as needed and available. Jessica also has a dedicated $500,000 annual technology budget, and she’s in the process of deciding how to spend it most effectively. She is evaluating financial software from several vendors.
Jessica is my target market for B2B sales.
In my electrical engineering career I have been responsible for evaluating engineering software. Often I would start my search with 3 to 5 software products. Due to time constraints, I would quickly narrow my evaluation to just two products. Key factors in the early software vetting process were 1) ease of integration into our existing infrastructure and 2) ease of turn-on. After narrowing the search to two, the criteria switched to performance, performance, performance, and flexibility… essentially a bake-off between the two products.
Ease of use and integration was initially critical because I (or others on my team) needed a product we could test and evaluate in-house. I refused to make a final selection or recommendation based on vendor-provided data. We needed software that we could get up and running quickly… solving our problems on our systems. We’d start with small problems to become familiar with the products and then ramp up to our most challenging problems to stress and evaluate the software.
Assuming Jessica (and others like her) follow a similar approach to software purchases, HAL0 portfolio software has to get through both phases of product evaluation.
HAL0 software is optimized to “solve” simultaneously for 3 goals, normally:
- A risk metric
- A total-return metric
- An “x-factor” metric (often an orthogonal risk metric)
While being great for power users, the x-factor metric is also non-standard. To help get through the “ease of start up” phase of product evaluation, I will likely default the x-factor to off.
Once the preliminary vetting is complete and final evaluation begins in earnest, performance and flexibility will be put to the test. If, for instance, Jessica’s team has access to a proprietary risk-analysis widget utilizing GPGPUs that speeds up risk computation 100X over CPUs, HAL0 software can be configured to support it. Because HAL0 is increasingly modular and componentized, Jessica’s resident quants can plug in proprietary components using relatively simple APIs. Should competing products lack this plug-in capability, HAL0 software will have a massive advantage out of the starting gate.
When it comes to flexibility, component-based design wins hands down. Proprietary risk metrics can be readily plugged in to HAL0 optimization software. Such risk models can replace the default semi-variance model, or be incorporated as an adjunct risk metric in “x-space.” Users can seed portfolio optimization with existing real and/or hypothetical portfolios, and HAL0 software will explore alternatives using user-selected risk and performance metrics.
HAL0 Portfolio-Optimization Basic Features
Out-of-the-box HAL0 software comes pre-loaded with semi-variance and variance risk metrics. Historic or expected-return metrics are utilized for each security. By default, the total return of any portfolio is computed as the weighted average of expected (or historic) total return of the securities that portfolio. Naturally, leveraged and short-position weightings are supported as desired.
These basic features are provided for convenience and ease of setup. While robust and and “battle-ready”, I do not consider them major value-add components. The key value-proposition for HAL0 portfolio-optimization is its efficient, multi-objective engine. HAL0 software is like a race car delivered ready to compete with a best-in-class engine. All the components are race-ready, but some world-class race teams will buy the car simply to acquire the engine and chassis, and retrofit the rest.
Because HAL0 software is designed from the ground up to efficiently optimize large-asset-count portfolios using 3 concurrent objectives, switching to conventional 2-D optimization is child’s play. Part of the basic line up of “x-space” metrics includes:
- Diversification as measured against root-mean-square deviation from market or benchmark in terms of sector-allocation, market-cap allocation, or a weighted hybrid of both.
- Quarterly, 1-year, 3-year, or 5-year worst loss.
- Semi-variance (SV) or variance (V) — meaning concurrent optimization for both V and SV is possible.
Don’t “Think Different”, Be Different!
My primary target audience is professional investors who simply refuse to run with the herd. They don’t seek difference for its own sake, but because they wish to achieve more. HAL0 is designed to help ease its own learning curve by enabling users to quickly achieve the portfolio-optimization equivalent of “Hello, World!”, while empowering the power user to configure, tweak, and augment to virtually any desired extreme.