Index builder

Overview

The Index builder analysis is used to construct index values for financial securities. More generally, it can be used to create weighted averages of any series.

When creating an index that measures a self-financing investment strategy, such as: Constant user weights, Weights from series, Variable user weights and Market cap weights, you specify the weights of the constituents. See Index Types.

You can select from a variety of calculation methods which are described below.

Settings

Index Types

Constant user weights

Use this to calculate an index using constant weights that you define. You can enter these manually for each series or import them from a text file. By default, every series has a weight of 1. The input series are typically the value or price of some assets. Re-balancing will take place at each observation.

See more here about rebalancing mechanism.

Self-financing investment strategy returns:

Weights from series

This index is calculated using other series as weights. For each series included in the index, you should select the series that will be used as its weight.  You can set how often rebalancing is done with the rebalance frequency setting.

Variable user weights

Calculates an index using changing weights defined by the user. You define sets of weights that should be used to calculate the index starting at different points in time. You can type in dates and weights manually or import them from a text file. Each row in the file should contain a date followed by the weights for each series in the order they are presented in the application. The values should be separated by tabs. The calculation will start at the first date.  The units will be rebalanced on the specified dates to correspond to weights.

Market cap weights

Calculates an index where the relative market capitalization determines the weights. The input series are typically the market capitalization of some asset. You can specify the settings Rebalance frequency and Capped if needed. The start value can be specified. The default is 100.

This method is equal to the method 'Weights from series' only when you specify the same series for input as for the weights in both methods.

Variable user units

Calculates an index by using the specified number of units of the input series at each point in time. The index is scaled to start at the specified start value. The number of units for each series can be specified at different dates. The calculations will not start before the first date.

You can import the units from a text file. Each row in the file should contain a date followed by the units for each series in the order they are presented in the application. The values should be separated by tabs. The start value can be specified. The default is 100.

Moving averages:

Aggregate, weight from series

For each point in time, a weighted arithmetic average is calculated. For each series included in the index, you should select the series that will be used as its weight. You can specify the setting Capped.

Aggregate, variable user weights

For each point in time, a weighted arithmetic average is calculated. The input series are typically the level of some variable.

You can import the weights from a text file. Each row in the file should contain a date followed by the weights for each series in the order they are presented in the application. The values should be separated by tabs.

Settings for calculation methods

Capped (%)

The cap is used as an upper limit on each of the weights at the re-balancing dates. The default value of 100 means that the weights are not capped. You can input a cap value, but it must be positive and less than 100. The sum of all caps must be larger than 100.

When a weight is larger than the cap, the cap is enforced by setting the weight to the cap and scaling up the other weights proportionally. This process is repeated until no weight is larger than the cap.

Missing input

There are two options how Index builder should handle missing values in certain Index types when using Lists functionality.

  • Error - Missing series in lists are treated as errors.
  • Exclude - Missing series in lists are excluded from output.

For what is happening when there's no values see Missing values.

Rebalancing

When the rebalance, frequency is lower than the document frequency, the number of units of the index constituents will be calculated only at the rebalancing dates. The number of units will then be constant until the next rebalancing date.

The value of an index at each point in time is calculated as the number of security units multiplied by its prices.

When the index composition is specified by weights, units must be determined from weights at rebalancing points. Rebalanced units are determined by using weights and prices at that point and the value of the index with the previously defined units. The rebalanced units and the previous units give the same index value.

By rebalancing units, it is meant that the number of security units is set to reflect the value proportions expressed by the weights. So, at each rebalancing date, the units are set to correspond to the value proportions at that date. At the following dates, the units are kept at the same value and the value proportions do not correspond to the value proportions at the rebalancing date.

As a special case: If the index is re-balanced at each point in time, the value of the index is sum of the gross rates of change multiplied by weights and multiplied by previous index value.

Output

The default output of the index builder includes:

  • The index you created.
  • Series in your document that were not included in the calculation.

Optionally, you can also output the series that were included in calculating the index.

Start date/End date

You can select when the calculation of the index starts and ends. If no range is specified, the longest possible range will be used.

Start at shortest/End at shortest

Select if analysis should use values when the shortest series starts or ends.

Import... (user weights from a file)

In Index types where you can use your own weights you can import them in txt or tsv format.
The series name column (header) with series names separated by tab is optional.  If the file only contains rows with single values they are applied to all series in the order they appear in the grid below.

Missing values

If there is a missing value in a series, that series will be excluded from the calculation at that point in time. The weights will immediately be re-balanced. Series that do not have values at a re-balancing date will not be considered until the next re balancing date.

Examples

GDP weighted index

In this example we build a simple index that is an aggregate of three series weighted by GDP. It is calculated from the 10 Year Government Benchmarks for Italy, Spain, and France.

Index with market cap weights

This chart shows the performance of the French CAC 40 Index in comparison with an index composed of the CAC 40 Financial Companies (AXA, BNP, Credit Agricole, Société Générale). The index is calculated by selecting the index type 'Market cap weights' and series that represents the market cap, the Capped (%) has been set to limit the maximum weight of each component.

Yield curve

Overview

The Yield curve analysis lets you plot the yield across different contract lengths for similar debt contracts. This relationship is also known as the term structure of interest rates. You can calculate numerous curves at the same time with different dates, settings, and series. Combining several yield curves in a chart makes it easier to analyze trends over time and differences across regions.

Input & output

The input consists of a number of series with interest rates of different maturity lengths. If there is information in the database about maturity and the type of rate, effective or simple, the information will be filled in automatically. If that is not the case, you will have to define the parameters manually.

The analysis will produce two series for each yield curve. One series which contains the maturity lengths expressed as years and one series with the interest rate at the specified point in time for the corresponding maturity. This type of output is nicely visualized in a Category scatter chart.

Settings

Output yield

All input rates will be converted to either simple annual interest rate or effective annual interest rate. The relationship between the simple rate and the effective rate is:

1 + r simple 100 · m = 1 + r effective 100 m

where m is the maturity length expressed as the number of years.

Output unit

You can select to produce the discount factors instead of the interest rates. In this case the factors are calculated by one of these expressions depending on the type of rate:

DF = 1 + r effective 100 - m

Use natural cubic spline

When the option for natural cubic splines is selected, the curve will not only consist of points corresponding to the maturity lengths, but there will be a value at least every month. Intermediate values will be calculated by creating a natural cubic spline based on the rates. This will result in a smoother yield curve.

Spot rates

When 'Spot rates' is selected, the rate at each point in time will be used.

Forward rates with constant maturity

When 'Forward rates with constant maturity' is selected, you must also specify the length of the forward. The calculation of the forward rate will then be performed for each point on the curve by looking at the current rate and a future rate. If needed, the future rate is calculated by using a spline as described above.

Rates at a future time

With the option called 'Rates at a future time' forward rates that start at the point of the maturity length that you provide are calculated. This will give you a view of the yield curve at a future point in time relative to the observations.

Forward rates between instruments

The rate at each point is the rate of a forward from the corresponding instrument to the next. The length of the forward will thus be the difference in maturity of the current instrument and the next.

Day count convention

When specifying maturity lengths, the 30/360-day count convention is used. There are 360 days per year, 12 months per year and 7 days per week.

Please note that the Count parameter is a decimal number, and you can specify, for instance, 1.5 months.

Examples

Yield curves - Government benchmarks

In the example we calculate the yield curve for the US and Germany. For each country, both the current yield curve and the yield curve as of one year ago is calculated.

Yield curve from Future series

We have used Yield Curve on Future series and also calculated it manually with other analyses for comparison. Note that manual version keeps dates on x-axis. In this file we also used method which shows months on x-axis.

Percent of inverted yield curves

Rising number of 'Inverted' yield curves can signal recession. In this example we have calculate percent of inverted yield curves for United States.

Questions

How to interpolate missing yield series?

In analysis you can enable to fill in intermediate observations using a natural cubic spline. Such a spline is smooth enough (here 'smooth' is used in a mathematical sense) to be arbitrage free and is therefore a good method to use for interpolation.

How to show percent of inverted yield curves?

You don't have to use Yield curve analysis to do this. See one of our examples above.

How to change x-axis to number of months instead of number of years?

There is a workaround which uses formulas and Cross section. See the solution in file  Yield curve from Future series.

Why some series have Simple/Effective yield rate?

It is a standard practice that series under 1 year (i.e., those with no coupon paid) have Simple yield rate, series above 1 year (i.e., those with coupon paid) have Effective yield rate used.

Why value for 12m series is same under Simple and Effective rate method?

Series under 1 year have Simple yield rate while series above 1 year have Effective yield rate used. 12m securities are "on edge" and that's the reason why 12m is the same under both rate methods.