Estimates the Probability of Informed Trading (PIN) using Bayesian Gibbs sampling as in Griffin et al. (2021) and the initial sets from the algorithm in Ersan and Alici (2016) .

## Usage

pin_bayes(data, xtraclusters = 4, sweeps = 1000, burnin = 500,
prior.a = 1, prior.b = 2, verbose = TRUE)

## Arguments

data

A dataframe with 2 variables: the first corresponds to buyer-initiated trades (buys), and the second corresponds to seller-initiated trades (sells).

xtraclusters

An integer used to divide trading days into #(2 + xtraclusters) clusters, thereby resulting in #comb(1 + xtraclusters, 1) initial parameter sets in line with Ersan and Alici (2016) . The default value is 4.

sweeps

An integer referring to the number of iterations for the Gibbs Sampler. This has to be large enough to ensure convergence of the Markov chain. The default value is 1000.

burnin

An integer referring to the number of initial iterations for which the parameter draws should be discarded. This is to ensure that we keep the draws at the point where the MCMC has converged to the parameter space in which the parameter estimate is likely to fall. This figure must always be less than the sweeps. The default value is 500.

prior.a

An integer controlling the mean number of informed trades, such as the prior of informed buys and sells is the Gamma density function with $$\mu$$ ~ Ga(prior.a, $$\eta$$). The default value is 1. For more details, please refer to Griffin et al. (2021) .

prior.b

An integer controlling the mean number of uninformed trades, such as the prior of uninformed buys and sells is the Gamma density function with $$\epsilon$$b ~ Ga(prior.b, $$\eta$$), and $$\epsilon$$s ~ Ga(prior.b, $$\eta$$). The default value is 2. For more details, please refer to Griffin et al. (2021) .

verbose

A binary variable that determines whether detailed information about the steps of the estimation of the PIN model is displayed. No output is produced when verbose is set to FALSE. The default value is TRUE.

## Value

Returns an object of class estimate.pin

## Details

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 pin_bayes() implements the algorithm detailed in Ersan and Alici (2016) . The higher the number of the additional clusters (xtraclusters), the better is the estimation. Ersan and Alici (2016) , however, have shown the benefit of increasing this number beyond 5 is marginal, and statistically insignificant.

The function initials_pin_ea() provides the initial parameter sets obtained through the implementation of the Ersan and Alici (2016) algorithm. For further information on the initial parameter set determination, see initials_pin_ea().

Ersan O, Alici A (2016). “An unbiased computation methodology for estimating the probability of informed trading (PIN).” Journal of International Financial Markets, Institutions and Money, 43, 74--94. ISSN 10424431.

Griffin J, Oberoi J, Oduro SD (2021). “Estimating the probability of informed trading: A Bayesian approach.” Journal of Banking \& Finance, 125, 106045.