Documentation Center

  • Trial Software
  • Product Updates

ret2price

Convert returns to prices

Syntax

[TickSeries,TickTimes] = ...
ret2price(RetSeries,StartPrice,RetIntervals,StartTime,Method)

Description

[TickSeries,TickTimes] = ...
ret2price(RetSeries,StartPrice,RetIntervals,StartTime,Method)
generates price series for the specified assets, given the asset starting prices and the return observations for each asset.

Input Arguments

RetSeries

Time series array of returns. RetSeries can be a column vector or a matrix:

  • As a vector, RetSeries represents a univariate series of returns of a single asset. The length of the vector is the number of observations (NUMOBS). The first element contains the oldest observation, and the last element the most recent.

  • As a matrix, RetSeries represents a NUMOBS-by-number of assets (NUMASSETS) matrix of asset returns. Rows correspond to time indices. The first row contains the oldest observations and the last row the most recent. ret2price assumes that the observations across a given row occur at the same time for all columns, and each column is a return series of an individual asset.

StartPrice

A NUMASSETS element vector of initial prices for each asset, or a single scalar initial price applied to all assets. If StartPrice = [] or is unspecified, all asset prices start at 1.

RetIntervals

A NUMOBS element vector of time intervals between return observations, or a single scalar interval applied to all observations. If RetIntervals is [] or is unspecified, ret2price assumes that all intervals have length 1.

StartTime

(optional) Scalar starting time for the first observation, applied to the price series of all assets. The default is 0.

Method

Character string indicating the compounding method used to compute asset returns. If Method is 'Continuous', [], or unspecified, then ret2price computes continuously compounded returns. If Method is 'Periodic' then ret2price computes simple periodic returns. Method is case insensitive.

Output Arguments

TickSeries

Array of asset prices:

  • When RetSeries is a NUMOBS element column vector, TickSeries is a NUMOBS+1 column vector. The first element contains the starting price of the asset, and the last element the most recent price.

  • When RetSeries is a NUMOBS-by-NUMASSETS matrix, then RetSeries is a (NUMOBS+1)-by-NUMASSETS matrix. The first row contains the starting price of the assets, and the last row contains the most recent prices.

TickTimes

A NUMOBS+1 element vector of price observation times. The initial time is zero unless specified in StartTime.

Examples

expand all

Convert Between Stock Prices and Returns

Create a stock price process continuously compounded at 10 percent

S = 100*exp(0.10*[0:19]');
    % Create the stock price series

Compute 10 percent returns for reference

R = price2ret(S); % Convert the price series to a
                  % 10 percent return series

Convert the resulting return series to the original price series, and compare results:

P = ret2price(R, 100); % Convert to the original price
                       % series
[S P]                  % Compare the original and
                       % computed price series
ans =

  100.0000  100.0000
  110.5171  110.5171
  122.1403  122.1403
  134.9859  134.9859
  149.1825  149.1825
  164.8721  164.8721
  182.2119  182.2119
  201.3753  201.3753
  222.5541  222.5541
  245.9603  245.9603
  271.8282  271.8282
  300.4166  300.4166
  332.0117  332.0117
  366.9297  366.9297
  405.5200  405.5200
  448.1689  448.1689
  495.3032  495.3032
  547.3947  547.3947
  604.9647  604.9647
  668.5894  668.5894

Compare the Relative Price Performance of Stocks

This example compares the relative price performance of the NASDAQ and the NYSE indexes.

Load the equity index data:

load Data_EquityIdx

Convert the returns back to prices, specifying the same starting price, 100, for each series, and plot the results:

plot(ret2price(price2ret([Dataset.NASDAQ Dataset.NYSE]), 100))
ylabel('Prices')
legend('Nasdaq', 'NYSE', 2)

The blue (upper) plot shows the NASDAQ price series. The green (lower) plot shows the NYSE price series.

See Also

|

Was this topic helpful?