fpa_virtual_value_model: Affiliated virtual value

View source: R/fpa_revenue.R

fpa_virtual_value_modelR Documentation

Affiliated virtual value

Description

The virtual value of affiliated private values in quantile space,

\omega(u; \theta) = Q_V(u) - q_V(u)\, H(u; \theta), \qquad H(p) = \frac{1}{\delta'(p)} \int_p^1 K(p, u)\, \delta'(u)\, du,

with K(w, u) = e^{\Lambda(w) - \Lambda(u)}, \Lambda' = 1/\psi and \delta the diagonal section of the copula (Doosti 2026c). The derivative of expected revenue is R'(p) = \delta'(p)\{v_s - \omega(p)\}, so no binding reserve is optimal (a corner) when \omega(u) \ge v_s for all u; under independence \omega is the Myerson virtual value v - (1 - F(v))/f(v).

'fpa_virtual_value_model()' evaluates \omega for a known model; 'fpa_virtual_value()' estimates it from an [fpa_values()] object, with the quantile function and quantile density of the pseudo-values estimated as in [fpa_revenue_qd()].

Usage

fpa_virtual_value_model(
  Q,
  q,
  n,
  family = "independence",
  theta = NULL,
  U = fpa_ugrid()
)

fpa_virtual_value(values, qdf_method = "poisson", bandwidth = "rlcv", ...)

Arguments

Q, q

quantile function and quantile density of the private values.

n

number of bidders.

family, theta

copula family and parameter, as in [copula_psi()].

U

quantile grid (default [fpa_ugrid()]).

values

an [fpa_values()] object fitted with a parametric copula.

qdf_method, bandwidth

quantile density estimator for the pseudo-values, passed to [qdf()].

...

further arguments to [qdf()].

Value

A list with the grid 'U', the virtual value 'omega' and the factor 'H'; 'fpa_virtual_value()' also returns the estimated 'Q' and 'q' on 'U' and the bandwidth 'h' used for the pseudo-values.

References

Doosti, H. (2026c). Optimal reserve prices in affiliated private value auctions: a copula–quantile density approach. SSRN preprint. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.2139/ssrn.7273869")}

Examples

Q <- function(u) (1 - 8 * u / 9)^(-1/2)              # truncated Pareto on [1, 3]
q <- function(u) (4 / 9) * (1 - 8 * u / 9)^(-3/2)
vv <- fpa_virtual_value_model(Q, q, n = 3, family = "clayton", theta = 2)
range(vv$omega)

qdfauction documentation built on Nov. 10, 2026, 5:07 p.m.