Type: | Package |
Title: | Business Cycle Dating and Plotting Tools |
Version: | 0.9.8 |
Date: | 2019-01-06 |
Maintainer: | Majid Einian <m.einian@mbri.ac.ir> |
Description: | Tools for Dating Business Cycles using Harding-Pagan (Quarterly Bry-Boschan) method and various plotting features. |
License: | GPL-2 |
Depends: | methods |
NeedsCompilation: | no |
Packaged: | 2019-01-07 10:39:37 UTC; m.einian |
Author: | Majid Einian [aut, cre] |
Repository: | CRAN |
Date/Publication: | 2019-01-07 13:30:03 UTC |
Business Cycle Dating and Plotting Tools
Description
This package implements the Harding and Pagan algorithm that creates a quarterly dating from a univariate time series. Procedures for printing and plotting appropriate graphs are provided. Also the dating for business cycles of the economy of Iran (by MBRI, CBI) is provided.
Details
Package: | BCDating |
Type: | Package |
Version: | 0.9.8 |
Date: | 2019-01-06 |
License: | GPL-2 |
Depends: | methods |
Author(s)
Majid Einian,m.einian@mbri.ac.ir,
Monetary and Banking Research Institute, Central Bank of Islamic Republic of Iran
See Also
Examples
library(BCDating)
data("Iran.non.Oil.GDP.Cycle")
dat <- BBQ(Iran.non.Oil.GDP.Cycle, name="Dating Business Cycles of Iran")
show(dat)
summary(dat)
plot(dat)
plot(dat,Iran.non.Oil.GDP.Cycle)
data("MBRI.Iran.Dating")
plot(MBRI.Iran.Dating)
Harding-Pagan (Quarterly Bry-Boschan) Business Cycle Dating Procedure
Description
This function implements the Harding and Pagan algorithm that creates a quarterly dating from a univariate time series.
Usage
BBQ(y, mincycle = 5, minphase = 2, name = "")
Arguments
y |
The input time series. |
mincycle |
Minimum length of a cycle. default=5 |
minphase |
Minimum length of a phase of a cycle.default=2 |
name |
The name of the series or dating. |
Details
See Reference paper.
Value
An object of class "BCDating". You can use show(), summary(), window(), and plot() on it.
Author(s)
Majid Einian,m.einian@mbri.ac.ir,
Monetary and Banking Research Institute, Central Bank of Islamic Republic of Iran
Franck Arnaud ,
National Institute of Statistics and Economic Studies (INSEE), France
References
Harding, D. and Pagan A. 2002 "Dissecting the Cycle: A Methodological Investigation." Journal of Monetary Economics 49 (2), 365–381. http://www.sciencedirect.com/science/article/pii/S0304393201001088.
Examples
data("Iran.non.Oil.GDP.Cycle")
dat <- BBQ(Iran.non.Oil.GDP.Cycle, name="Dating Business Cycles of Iran")
show(dat)
summary(dat)
plot(dat)
data(MBRI.Iran.Dating)
plot(dat,MBRI.Iran.Dating)
Class "BCDating"
Description
Class Designed for dating Business Cycles
Objects from the Class
A BCDating is basically is a sequence of peaks and troughs. But it can also be represented as a discrete state process, with values such as -1 for recession and 1 for expansion phases. The BCDating class is designed to handle this kind of data: it can store, print and plot graphs of such data.
Use BBQ to create object of BCDating type from Quarterly Data.
Slots
name
:Object of class
"character"
The name of the Datingstates
:Object of class
"ts"
States of the Dating (-1 for recession and 1 for expansion phases)peaks
:Object of class
"numeric"
Indices of Peakstroughs
:Object of class
"numeric"
Indices of Throughsy
:Object of class
"ts"
The Refernce Time Series (e.g. the GDP Cycle)param
:Object of class
"list"
Parameters of the Dating (i.e. min phase and min cycle)type
:Object of class
"character"
Dating Type
Methods
plot,BCDating,ts-method
,
plot,ts,BCDating-method
,
plot,BCDating,BCDating-method
,
plot,list,missing-method
Author(s)
Majid Einian,m.einian@mbri.ac.ir,
Monetary and Banking Research Institute, Central Bank of Islamic Republic of Iran
Franck Arnaud ,
National Institute of Statistics and Economic Studies (INSEE), France
References
Franck Arnaud's R package datation
Cycle of non-Oil GDP of Iran.
Description
Cycle of non-Oil GDP of Iran. (Non-Oil GDP after x12, and HP filtering)
Usage
Iran.non.Oil.GDP.Cycle
Format
ts Quarterly Time Series
Source
Central Bank of Islamic Republic of Iran. Further calculations by Majid Einian
References
Einian, M. and M. Barakchian (2014), Measuring and Dating Business Cycles of the Economy of Iran, Journal of Monetary & Banking Research, 7(20), Summer 2014, pp. 161-194. (in Persian)
Quartely Grwoth of non-Oil GDP of Iran.
Description
Quartely Grwoth of non-Oil GDP of Iran. (after x12)
Usage
Iran.non.Oil.GDP.Quartely.Grwoth
Format
ts Quarterly Time Series
Source
Central Bank of Islamic Republic of Iran. Further calculations by Majid Einian
References
Einian, M. and M. Barakchian (2014), Measuring and Dating Business Cycles of the Economy of Iran, Journal of Monetary & Banking Research, 7(20), Summer 2014, pp. 161-194. (in Persian)
Dating of Business Cycles of Iran by MBRI
Description
This is the official Dating of Business Cycles of Iran by MBRI. This is not exactly what you get using BBQ
on Iran.non.Oil.GDP.Cycle
as there are some changes to that based on other economic facts. See reference paper for details.
Usage
data(MBRI.Iran.Dating)
Format
BCDating Object
Source
Einian, M. and M. Barakchian (2014)
References
Einian, M. and M. Barakchian (2014), Measuring and Dating Business Cycles of the Economy of Iran, Journal of Monetary & Banking Research, 7(20), Summer 2014, pp. 161-194. (in Persian)
Examples
data(MBRI.Iran.Dating)
plot(MBRI.Iran.Dating)
TimeSeries averages over cycle phases.
Description
This function returns the averages of the input time series over each of phases in the Dating. It omits the NA's in the time series, so will give an error with internal NA's.
Usage
avgts(ts,Dating)
Arguments
ts |
The input time series. |
Dating |
The dating. |
Value
A ts timeseries.
Author(s)
Majid Einian,m.einian@mbri.ac.ir,
Monetary and Banking Research Institute, Central Bank of Islamic Republic of Iran
Examples
data("Iran.non.Oil.GDP.Quarterly.Growth")
data("MBRI.Iran.Dating")
avggrowth <- avgts(Iran.non.Oil.GDP.Quarterly.Growth,MBRI.Iran.Dating)
cbind(avggrowth,Iran.non.Oil.GDP.Quarterly.Growth)
plot(MBRI.Iran.Dating,avggrowth)
plot(MBRI.Iran.Dating,Iran.non.Oil.GDP.Quarterly.Growth,averages=TRUE)
Plotting BCDating Objects, and Plotting Time-Series on BCDating Plot Background
Description
Methods for function plot
. Some arguments are not applicable to all methods, but most are common.
Arguments
dates |
If |
yearrep |
Number of digits a year is represented if dates are plotted (i.e. |
col.bg |
Background Color of Dating plot (i.e. the color for periods with unknown cycle state). default=gery(0.8) |
col.exp |
Color for Expansions. default=grey(1) |
col.rec |
Color for Recessions. default=grey(0.45) |
main |
Main Title of the Plot, if not provided, the name of the Dating will be used. default="" |
xlab |
Label of the X axis. default="" |
ylab |
Label of the Y axis. default="" |
lwd |
The line Width. default=2 |
cex |
Relative magnification factor. default=0.5 |
vert |
A vector of dates in which vertical lines should be plotted. default=NULL |
col.vert |
Color of added vertical lines. default="darkblue" |
windos |
If |
averages |
If |
col |
Color of each of the time series plotted. This can be either a vector with the length equal to number of time series in mts object, or just a single value, which would be used for all time series. default="red" |
Methods
signature(x = "BCDating", y = "missing")
Plots a BCDating.
signature(x = "BCDating", y = "ts")
Plot a Time-Series, (or multiple time serires in case y's class is mts) on a BCDating.
signature(x = "ts", y = "BCDating")
Plot a Time-Series, (or multiple time serires in case y's class is mts) on a BCDating.
signature(x = "BCDating", y = "BCDating")
Plots 2 BCDatings, so you can compare them.
signature(x = "list", y = "missing")
Plots a list of BCDating Objects, so you can compare them.
Author(s)
Majid Einian,m.einian@mbri.ac.ir,
Monetary and Banking Research Institute, Central Bank of Islamic Republic of Iran
Franck Arnaud ,
National Institute of Statistics and Economic Studies (INSEE), France
Examples
library(BCDating)
data("MBRI.Iran.Dating")
plot(MBRI.Iran.Dating)
plot(MBRI.Iran.Dating,dates=TRUE)
data("Iran.non.Oil.GDP.Cycle")
plot(MBRI.Iran.Dating,Iran.non.Oil.GDP.Cycle)
plot(Iran.non.Oil.GDP.Cycle,MBRI.Iran.Dating)
data("Iran.non.Oil.GDP.Quarterly.Growth")
plot(MBRI.Iran.Dating,Iran.non.Oil.GDP.Quarterly.Growth,averages=TRUE)
plot(MBRI.Iran.Dating,cbind(Iran.non.Oil.GDP.Cycle*100,Iran.non.Oil.GDP.Quarterly.Growth))
dat <- BBQ(Iran.non.Oil.GDP.Cycle, name="Dating Business Cycles of Iran")
plot(dat,MBRI.Iran.Dating)
plot(list(dat,MBRI.Iran.Dating))
Showing a BCDating object
Description
Methods for function show
Methods
signature(object = "BCDating")
-
Shows the dates of peaks and troughs of the BCDating.
Author(s)
Majid Einian,m.einian@mbri.ac.ir,
Monetary and Banking Research Institute, Central Bank of Islamic Republic of Iran
Franck Arnaud
Examples
library(BCDating)
data("MBRI.Iran.Dating")
MBRI.Iran.Dating
Summerizing a BCDating Object
Description
Methods for function summary
Methods
signature(object = "BCDating")
-
Lists the start and end dates of recessions and expansions in a BCDating, their duration, amplitude ,... Also the average duration of expansions and recessions are printed.
Author(s)
Majid Einian,m.einian@mbri.ac.ir,
Monetary and Banking Research Institute, Central Bank of Islamic Republic of Iran
Franck Arnaud
Extracting a window of A BCDating
Description
Methods for function window
Methods
signature(x = "BCDating")
-
Sometimes you need to know the state of economics in just a period of time. Using Window, you can obtain a new BCDating object limited to the time period mentioned. See examples.
Author(s)
Majid Einian,m.einian@mbri.ac.ir,
Monetary and Banking Research Institute, Central Bank of Islamic Republic of Iran
Examples
library(BCDating)
data(MBRI.Iran.Dating)
MBRI.Iran.Dating
window(MBRI.Iran.Dating,start=c(1368,2),end=c(1376,1)) # 5th and 6th Gov's of IRI