Portfolix made easy!


Portfolix is a portfolio management system. This document compares the fixed income version of Portfolix to YieldBook and shows where Portfolix is better. You will need YieldBook for pricing and a trading system for positions, Portfolix will automate all the reporting, downloading, transforming, sectorizing, cleaning, what-if analysis and presentation of those prices/positions.


Simplest application of Portfolix allows you to look at market values and durations of your accounts in excel. Note that these are automatically up-to-date in real time. Lets say you view your accounts by benchmark:

As you see the value weighted average duration of your accounts that you manage against Lehman Agg is 6.5 years.

I have drilled into Merrill 1-3 year benchmark to see what accounts I manage against it and what their market values are.

Let’s say I now want to see the accounts that are managed against Lehman Agg. I have to double-click on Merrill to collapse it, and then double-click on Lehman Agg to see the details. It’s called drilling in, and the format of the data is called PivotTable. Durations and market values are recalculated on the fly and take less than 0.1sec for this simple report.

You will see 5 accounts that are managed against Lehman Agg. Also note that I manage accounts against the same benchmark slightly differently, depending on what restrictions clients have placed on the asset allocation. These are called sub-benchmarks, I have shown 2 sub-benchmarks and reported their composite numbers.

Note how duration of your composite portfolio is automatically calculated.


Say now that you are interested in a particular account. I have uploaded the Salomon BIGINDEX as of 09/27/2001 as one account. Just drag the benchmark to the top as the filter (page field) and drag another dimension in from the toolbar, I shall look at the duration distribution. So first drag benchmark to the top:

Then select the account:

Finally drag duration dimension to the row field:



Say I would now want to see the details of the long bonds that BIGINDEX holds. All I do is double-click on the 6+ cell (A6). Because there are too many bonds to fit on the screen, I have applied the show top ten filter.


We can now see the duration of each bond, its contribution to the account’s duration, and weight. We also see the par amount allowing us to easily determine the amount we wish to trade. Portfolix allows automatic what-if scenarios, where if you can change the quantity of a particular bond and see how it affects your portfolio composition.

You can use all the standard Excel functions like sorting and formatting, the table behaves just like a normal PivotTable, except that data comes from a central OLAP server.


There are numerous other dimensions, except for duration buckets that you can look at. Lets say rating:


You can see that 1.28 years of duration is “Unrated”. If I double-click I can see that they are all agencies, I can either go and classify them as AAA or I can just group them quickly under investment grade:


I can also stack several dimensions together, lets say we want to see both ratings and sector:

Again you can see how everything sums to 100%. You will also see a large misclassified part. That’s because the sector file in my computer is old. However, Portfolix allows you to create sector file from excel sheet listings, YieldBook or any other data source. Furthermore, it allows you to optimize the sector file by looking at historical volatilities and correlations of different sectors, so you can eliminate sectors that move very closely together. Furthermore, by double-clicking on the misclassified column, you will see the industry code, issuer and cusip of the misclassified security, which makes creating sector files even easier.


Now there is 0.09% in BB rated securities. If I want to see the whole database information on those securities, I just rightclick and choose drillthrough:


Resulting is a source database position by position view of all data allowing easy debugging of errors.


Now lets look at a particular account that is managed against the BIGINDEX. We have measures like the difference in duration and weight against the benchmark:

Here unfortunately the fact that unrated agencies distorts the picture. Still you can see that the account has 1.3 years of duration more in BBB than the benchmark.



You can set conditional formatting based on values, so that outliers are red. Here is an example of a real excel sheet:




Portfolix keeps monthly snapshot of history. You can build tracking error, return attribution, var and other risk/return based models on this because historical volatilities can be observed. It also allows you to calculate the covariance matrix. This example shows the duration bucket weights of an account over the past 3 months. I have also calculated the standard deviation. You can build a tracking error model for this if you use the appropriately adjusted standard error for the benchmark to calculate the contribution to tracking error of a percentage deviation in a particular sector.





To perform what if analysis you can enter a new value into A column, say 300. The market value of the whole portfolio is updated.

You can also use write-back on duration and weights, although it is slightly more complicated (you have to tell Portolix if you want to buy fewer long bonds or more short maturity ones).

You can enter a data into a higher level (this case you entered data directly for A rated securities) and the distribution to lower level is automatically done (in this case Cusips for A rated securities were selected and allocated either evenly, by existing weights or by custom weights). The same way other dimensions were automatically updated (e.g. sectors).


More dimensions

Dimensions are grouped into 5 categories:

Account based dimensions allow you to view composites by benchmark or portfolio manager, at the same time breaking them using a bond based dimension:

Bond based dimensions allow you to slice and dice by country, currency, rating (moodis, SP, minimum, average), sector (lehman, salomon, custom), duration bucket, issuer, cusip and many other ways:

Mortgage based dimensions allow for loan type, mortgage production year and term based slicing

Muni dimensions are for slicing by state and other municipal characteristics.

Finally you can slice accounts by various restriction categories as to what you are allowed to hold there.



You can plot data by using excel excellent charting capabilities by just one click:


Adding dimensions

You can easily add new dimensions to your data, either from your existing excel sheets that groups cusips in some unique way, or from a number of other data sources:


If you know SQL you can create your own measures as well, for example, measuring the portfolio sector loadings differences from benchmark against a particular HJM interest model factor. You can also distribute reports via pdf files, email or online realtime to clients into their excel sheets. Portfolix integrates with all existing MIS systems and data warehouses.


If you wonder technically, then Portfolix uses an industry standard OLAP technology running on Microsoft .NET Analysis Server. We have solved the database explosion problem of all other OLAP systems, use industry standard extension to SQL called MDX to model the non-aggregating dimensions like duration and variance. Portfolix historical cube will normally hold 1m records and takes 30mins to process. The daily cube takes 10 mins to fully process and less than 2 sec on average per query. We have successfully tested Portfolix on tick by tick trade and quote data on NYSE (over 100m records per month).


Please schedule a demo by emailing [email protected] or calling me (646) 345 3758 so that I can show you these and many other more advanced features.