initials_adjpin_cl | R Documentation |
Based on an extension of the algorithm in
\insertCiteChengLai2021;textualPINstimation, generates sets of initial
parameters to be used in the maximum likelihood
estimation of AdjPIN
model.
initials_adjpin_cl(data, restricted = list(), verbose = TRUE)
data |
A dataframe with 2 variables: the first corresponds to buyer-initiated trades (buys), and the second corresponds to seller-initiated trades (sells). |
restricted |
A binary list that allows estimating restricted
AdjPIN models by specifying which model parameters are assumed to be equal.
It contains one or multiple of the following four elements
|
verbose |
a binary variable that determines whether information messages
about the initial parameter sets, including the number of the initial
parameter sets generated. No message is shown when |
The argument 'data' should be a numeric dataframe, and contain
at least two variables. Only the first two variables will be considered:
The first variable is assumed to correspond to the total number of
buyer-initiated trades, while the second variable is assumed to
correspond to the total number of seller-initiated trades. Each row or
observation correspond to a trading day. NA
values will be ignored.
The function implements an extension of the algorithm of
\insertCiteChengLai2021;textualPINstimation. In their paper, the authors
assume that the probability of liquidity shock is the same in no-information,
and information days, i.e., \thetaB=
\thetaS, and use a procedure similar to
that of \insertCiteYan2012;textualPINstimation to generate 64 initial
parameter sets. The function implements an extension of their algorithm,
by relaxing the assumption of equality of liquidity shock probabilities,
and generates thereby 256
initial parameter sets for the unrestricted
AdjPIN
model.
Returns a dataframe of numerical vectors of ten elements
{\alpha
, \delta
, \theta
, \theta'
,
\eb, \es, \mub, \mus, \Db, \Ds}.
# There is a preloaded quarterly dataset called 'dailytrades' with 60
# observations. Each observation corresponds to a day and contains the
# total number of buyer-initiated trades ('B') and seller-initiated
# trades ('S') on that day. To know more, type ?dailytrades
xdata <- dailytrades
# The function adjpin(xdata, initialsets="CL") allows the user to directly
# estimate the AdjPIN model using the full set of initial parameter sets
# generated using the algorithm Cheng and Lai (2021)
estimate.1 <- adjpin(xdata, initialsets="CL", verbose = FALSE)
# Obtaining the set of initial parameter sets using initials_adjpin_cl
# allows us to estimate the PIN model using a subset of these initial sets.
# Use initials_adjpin_cl() to generate 256 initial parameter sets using the
# algorithm of Cheng and Lai (2021).
initials_cl <- initials_adjpin_cl(xdata, verbose = FALSE)
# Use 20 randonly chosen initial sets from the dataframe 'initials_cl' in
# order to estimate the AdjPIN model using the function adjpin() with custom
# initial parameter sets
numberofsets <- nrow(initials_cl)
selectedsets <- initials_cl[sample(numberofsets, 20),]
estimate.2 <- adjpin(xdata, initialsets = selectedsets, verbose = FALSE)
# Compare the parameters and the pin values of both specifications
comparison <- rbind(
c(estimate.1@parameters, adjpin = estimate.1@adjpin, psos = estimate.1@psos),
c(estimate.2@parameters, estimate.2@adjpin, estimate.2@psos))
rownames(comparison) <- c("all", "50")
show(comparison)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.