Skip to contents

Market side aggregation

Usage

aggregate_demand(fit, model, parameters)

# S4 method for missing,market_model,ANY
aggregate_demand(model, parameters)

aggregate_supply(fit, model, parameters)

# S4 method for missing,market_model,ANY
aggregate_supply(model, parameters)

# S4 method for market_fit,missing,missing
aggregate_demand(fit)

# S4 method for market_fit,missing,missing
aggregate_supply(fit)

Arguments

fit

A fitted market model object.

model

A model object.

parameters

A vector of model's parameters.

Value

The sum of the estimated demanded or supplied quantities evaluated at the given parameters.

Details

Calculates the sample's aggregate demand or supply using the estimated coefficients of a fitted model. Alternatively, the function calculates aggregates using a model and a set of parameters passed separately. If the model's data have multiple distinct subjects at each date (e.g., panel data), aggregation is calculated over subjects per unique date. If the model has time series data, namely a single subject per time point, aggregation is calculated over all time points.

Functions

  • aggregate_demand: Demand aggregation.

  • aggregate_supply: Supply aggregation.

Examples

# \donttest{
fit <- diseq_basic(
  HS | RM | ID | TREND ~
    RM + TREND + W + CSHS + L1RM + L2RM + MONTH |
      RM + TREND + W + L1RM + MA6DSF + MA3DHF + MONTH,
  fair_houses(),
  correlated_shocks = FALSE
)

# get estimated aggregate demand
aggregate_demand(fit)
#> [1] 45526.5

# simulate the deterministic adjustment model
model <- simulate_model(
  "diseq_deterministic_adjustment", list(
    # observed entities, observed time points
    nobs = 500, tobs = 3,
    # demand coefficients
    alpha_d = -0.6, beta_d0 = 9.8, beta_d = c(0.3, -0.2), eta_d = c(0.6, -0.1),
    # supply coefficients
    alpha_s = 0.2, beta_s0 = 4.1, beta_s = c(0.9), eta_s = c(-0.5, 0.2),
    # price equation coefficients
    gamma = 0.9
  ),
  seed = 1356
)

# estimate the model object
fit <- estimate(model)

# get estimated aggregate demand
aggregate_demand(fit)
#> # A tibble: 2 × 2
#>   date    D_Q
#>   <fct> <dbl>
#> 1 2     3380.
#> 2 3     3077.

# get estimated aggregate demand
aggregate_supply(fit)
#> # A tibble: 2 × 2
#>   date    S_Q
#>   <fct> <dbl>
#> 1 2     2562.
#> 2 3     2645.
# }