Main Content


Price rate of change



PriceChangeRate = prcroc(Data) calculates the price rate-of-change, PriceChangeRate, from the series of closing stock prices. By default, the price rate-of-change is calculated between the current closing price and the closing price 12 periods ago.


PriceChangeRate = prcroc(___,Name,Value) adds optional name-value pair arguments.


collapse all

Load the file SimulatedStock.mat, which provides a timetable (TMW) for financial data for TMW stock.

load SimulatedStock.mat
PriceChangeRate = prcroc(TMW);
title('Price Rate of Change for TMW')

Input Arguments

collapse all

Data for closing prices, specified as a matrix, table, or timetable. For matrix input, Data is an M-by-1 matrix of closing prices. Timetables and tables with M rows must contain a variable named 'Close' (case insensitive).

Data Types: double | table | timetable

Name-Value Arguments

Specify optional pairs of arguments as Name1=Value1,...,NameN=ValueN, where Name is the argument name and Value is the corresponding value. Name-value arguments must appear after other arguments, but the order of the pairs does not matter.

Before R2021a, use commas to separate each name and value, and enclose Name in quotes.

Example: PriceChangeRate = prcroc(TMW,'NumPeriods',18)

Period difference, specified as the comma-separated pair consisting of 'NumPeriods' and a scalar positive integer.

Data Types: double

Output Arguments

collapse all

Closing price rate-of-change, returned with the same number of rows (M) and the same type (matrix, table, or timetable) as the input Data.


[1] Achelis, S. B. Technical Analysis from A to Z. Second Edition. McGraw-Hill, 1995, pp. 243–245.

Version History

Introduced before R2006a

expand all