| BertrandRUM-Classes {antitrust} | R Documentation |
“Bertrand RUM” Classes
Description
Each class contains all the information needed to calibrate a specific type of demand system and perform a merger simulation analysis under the assumption that firms are playing a differentiated products Bertrand pricing game.
The “Logit” class has the information for a Logit demand system.
The “LogitCap” class has the information for a Logit demand system and assumes that firms are playing a differentiated products Bertrand pricing game with capacity constraints. “LogitCapALM” extends “LogitCap” to allow for an unobserved outside share.
The “LogitNests” class has the information for a nested Logit
The “LogitNestsALM” class has the information for a nested Logit demand system under the assumption that the share of the outside product is not known. Once the model parameters have been calibrated, methods exist that perform a merger simulation analysis under the assumption that firms are playing a differentiated products Bertrand pricing game.
The “LogitALM” class has the information for a Logit demand system assuming that firms are playing a differentiated products Bertrand pricing game with unknown market elasticity.
The “CES” class has the information for a CES demand system
The “CESALM” class has the information for a CES demand system and assumes that firms are playing a differentiated products Bertrand pricing game with unknown market elasticity.
The “CESNests” class has the information for a nested CES demand system.
Let k denote the number of products produced by all firms below.
Slots
pricesA length k vector of product prices.
marginsA length k vector of product margins, some of which may equal NA.
normIndexAn integer specifying the product index against which the mean values of all other products are normalized.
shareInsideThe share of customers that purchase any of the products included in the ‘prices’ vector.
priceOutsideThe price of the outside good. Default is 0.
slopesA list containing the coefficient on price (‘alpha’) and the vector of mean valuations (‘meanval’).
mktElastA length 1 vector of market elasticities.
priceStartA length-k vector of starting prices for the non-linear solver.
insideSizeA positive number equal to total pre-merger quantities (revenues for CES) for all products included in the simulation.
mktSizeA positive number equal to total quantities (revenues for CES) pre-merger for all products in the simulations as well as the outside good.
capacitiesPreA length k vector whose elements equal pre-merger product capacities. (LogitCap and LogitCapALM only)
capacitiesPostA length k vector whose elements equal post-merger product capacities. (LogitCap and LogitCapALM only)
nestsA length k vector identifying the nest that each product belongs to. (LogitNests and CESNests Only)
parmsStartA length k vector who elements equal an initial guess of the nesting parameter values. (LogitNests and CESNests Only)
constraintA length 1 logical vector that equals TRUE if all nesting parameters are constrained to equal the same value and FALSE otherwise. Default is TRUE. (LogitNests and CESNests Only)
parmsStartA length 2 vector whose first element equals an initial guess of the price coefficient and whose second element equals an initial guess of the outside share. The price coefficient's initial value must be negative and the outside share's initial value must be between 0 and 1. (LogitALM and CESALM only)
slopesA list containing the coefficient on the numeraire (‘alpha’), the coefficient on price (‘gamma’), and the vector of mean valuations (‘meanval’) (CES only)
priceOutsideThe price of the outside good. Default is 1. (CES only)
Objects from the Class
For Logit, objects can be created by using the constructor function logit.
For LogitALM, objects can be created by using the constructor function logit.alm.
For LogitCap and LogitCapALM, objects can be created by using the constructor function logit.cap and logit.cap.alm.
For LogitNests, objects can be created by using the constructor function logit.nests.
For LogitNestsALM, objects can be created by using the constructor function logit.nests.alm.
For CES, objects can be created by using the constructor function ces.
For CESALM, objects can be created by using the constructor function ces.alm.
For CESNests, objects can be created by using the constructor function ces.nests.
Extends
Logit: Class Bertrand, directly.
Class Antitrust, by class Bertrand, distance 2.
LogitCap: Class Logit, directly.
Class Bertrand, by class Logit, distance 2.
Class Antitrust, by class Bertrand, distance 3.
#'LogitCapALM: Class LogitCap, directly.
Class Logit, by class LogitCap, distance 2.
Class Bertrand, by class Logit, distance 3.
Class Antitrust, by class Bertrand, distance 4.
LogitNests: Class Logit, directly.
Class Bertrand, by class Logit, distance 2.
LogitNestsALM: Class LogitNests, directly.
Class Logit, by class LogitNests, distance 2.
Class Bertrand, by class Logit, distance 3.
Class Antitrust, by class Bertrand, distance 4.
LogitALM: Class Logit, directly.
Class Bertrand, by class Logit, distance 2.
Class Antitrust, by class Bertrand, distance 3.
CES: Class Logit, directly.
Class Bertrand, by class Logit, distance 2.
Class Antitrust, by class Bertrand, distance 3.
CESALM: Class CES, directly.
Class Logit, by class CES, distance 2.
Class Bertrand, by class Logit, distance 3.
Class Antitrust, by class Bertrand, distance 4.
CESNests: Class CES, directly.
Class Logit, by class CES, distance 2.
Class Bertrand, by class Logit, distance 3.
Class Antitrust, by class Bertrand, distance 4.
Author(s)
Charles Taragin ctaragin+antitrustr@gmail.com
Examples
showClass("Logit") # get a detailed description of the class
showClass("LogitCap") # get a detailed description of the class
showClass("LogitNests") # get a detailed description of the class
showClass("LogitNestsALM") # get a detailed description of the class
showClass("LogitALM") # get a detailed description of the class
showClass("CES") # get a detailed description of the class
showClass("CESALM") # get a detailed description of the class
showClass("CESNests") # get a detailed description of the class