Other Useful ‘Bertrand’ Methods

Share:

Description

Methods defined for the ‘Bertrand’ class and its child classes.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
## S4 method for signature 'ANY'
calcShares(object,preMerger=TRUE,revenue=FALSE)
## S4 method for signature 'ANY'
calcQuantities(object,preMerger=TRUE)
## S4 method for signature 'ANY'
calcPrices(object,preMerger=TRUE,subset,...)
## S4 method for signature 'Antitrust'
calcPriceDelta(object)
## S4 method for signature 'AIDS'
calcPriceDelta(object,isMax=FALSE,subset,...)
## S4 method for signature 'Bertrand'
calcProducerSurplus(object,preMerger=TRUE)
## S4 method for signature 'ANY'
calcMargins(object,preMerger=TRUE)
## S4 method for signature 'Bertrand'
calcMC(object,preMerger=TRUE)
## S4 method for signature 'ANY'
calcSlopes(object,preMerger=TRUE)
## S4 method for signature 'Bertrand'
hhi(object,preMerger=TRUE,revenue=FALSE)
## S4 method for signature 'Antitrust'
ownerToMatrix(object,preMerger=TRUE)
## S4 method for signature 'Antitrust'
ownerToVec(object,preMerger=TRUE)
## S4 method for signature 'Bertrand'
plot(x,scale=.1)
## S4 method for signature 'Bertrand'
summary(object,revenue=TRUE,shares=TRUE,parameters=FALSE,digits=2,...)

Arguments

Let k denote the number of products

object

An instance of one of the classes listed above.

x

Used only in plot method. Should always be set equal to object

preMerger

If TRUE, returns pre-merger outcome. If FALSE, returns post-merger outcome. Default is TRUE.

isMax

If TRUE, uses numerical derivatives to determine if equilibrium price vector is a local maximum. Default is FALSE.

revenue

If TRUE, returns revenues. If FALSE, returns quantities. Default is TRUE

subset

A vector of length k where each element equals TRUE if the product indexed by that element should be included in the post-merger simulation and FALSE if it should be excluded.Default is a length k vector of TRUE.

shares

If TRUE, returns shares. If FALSE, returns levels. Default is TRUE

parameters

If TRUE, reports demand and cost parameters. Default is FALSE

digits

The number of significant digits to round printed results. Default is 2

scale

The proportion below marginal cost and above equilbrium price that should be plotted. Default is .1

...

Arguments to be passed to non-linear solver, OR for summary to CV.

Methods

calcShares

signature(object= c(Linear,AIDS,Logit,LogitNests,CES,CESNests), preMerger=TRUE, revenue=FALSE)

Computes equilibrium product shares assuming that firms are playing a Nash-Bertrand pricing game. ‘revenue’ takes on a value of TRUE or FALSE, where TRUE calculates revenue shares, while FALSE calculates quantity shares.

calcQuantities

signature(object=c(Linear,LogLin,LogitCap),preMerger=TRUE)

Computes equilibrium product quantities assuming that firms are playing a Nash-Bertrand pricing game.

calcPrices

signature(object=c(Linear,LogLin,AIDS,Logit,LogitNests,LogitCap,CES,CESNests),preMerger=TRUE,subset,...)

Computes equilibrium product price levels assuming that firms are playing a Nash-Bertrand pricing game. ‘...’ may be used to feed additional options to the optimizer responsible for computing equilibrium prices. Typically, BBsolve is used, but see the appropriate document for further details.

calcPriceDelta

signature(object=Antitrust)

Computes equilibrium price changes due to a merger assuming that firms are playing a Nash-Bertrand pricing game. This is a wrapper method for computing the difference between pre- and post-merger equilbrium prices

calcPriceDelta

signature(object=AIDS,isMax=FALSE,subset,...)

Computes equilibrium price changes due to a merger assuming that firms are playing a Nash-Bertrand pricing game and LA-AIDS. This method calls a non-linear equations solver to find a sequence of price changes that satisfy the Bertrand FOCs.

calcProducerSurplus

signature(object=Bertrand,preMerger=TRUE)

Computes equilibrium producer surplus.

calcMargins

signature(object=c(Bertrand,LogitCap),preMerger=TRUE)

Computes equilibrium product margins assuming that firms are playing a Nash-Bertrand pricing game. For "LogitCap", assumes firms are playing a Nash-Bertrand pricing game with capacity constraints.

calcMC

signature(object=Bertrand,preMerger=TRUE)

Computes either pre- or post-merger marginal costs. Marginal costs are assumed to be constant. Post-merger marginal costs are equal to pre-merger marginal costs multiplied by 1+‘mcDelta’, a length-k vector of marginal cost changes. ‘mcDelta’ will typically be between 0 and 1.

calcSlopes

signature(object=c(Linear,LogLin,AIDS,PCAIDSNests,Logit,LogitNests,LogitCap,CES,CESNests),preMerger=TRUE)

Computes demand parameters assuming that firms are playing a Nash-Bertrand pricing game.

hhi

signature(object=Bertrand,preMerger=TRUE,revenue=FALSE)

Computes the Herfindahl-Hirschman Index (HHI) using simulated market shares and either pre- or post-merger ownership information.

ownerToMatrix

signature(object=Antitrust,preMerger=TRUE)

converts a length-k ownership vector into a k x k ownership matrix where element i,j equals 1 if products i and j are commonly owned, and 0 otherwise.

ownerToVec

signature(object=Antitrust,preMerger=TRUE)

converts a k x k ownership matrix into a length-k ownership vector

plot

signature(x,scale=.1)

Use ggplot to plot pre- and post-merger demand, marginal cost and equilibria. ‘scale’ controls the amount above marginal cost and below equilbrium price that is plotted.

show

signature(object=Antitrust)

Displays the percentage change in prices due to the merger.

summary

signature(object=c(Bertrand,AIDS),revenue=TRUE,shares=TRUE,parameters=FALSE,digits=2,...)

Summarizes the effect of the merger, including price and revenue changes. Setting ‘revenue’ equal to FALSE reports quantities rather than revenues. Setting ‘shares’ to FALSE reports quantities rather than than shares (when possible). Setting ‘parameters’ equal to TRUE reports all demand parameters. ‘digits’ controls the number of significant digits reported in output. ‘...’ allows other arguments to be passed to a CV method.

upp

signature(object)

Calculate the Upwards Pricing Pressure (upp) index.

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.