Class FactorRiskModel.Decomposition
java.lang.Object
com.quantfinlib.risk.FactorRiskModel.Decomposition
- Enclosing class:
FactorRiskModel
Ex-ante risk of one portfolio under the model. Variances are per
period. Percent contributions of the names sum to 1, and the factor
contributions plus the specific share sum to 1 (Euler decomposition,
Litterman 1996, "Hot Spots and Hedges", Goldman Sachs Risk Management
Series).
-
Constructor Summary
ConstructorsConstructorDescriptionDecomposition(List<String> factorNames, double[] exposures, double factorVariance, double specificVariance, double[] marginal, double[] percent, double[] factorContribution, double specificContribution) Creates the value; arrays are copied. -
Method Summary
Modifier and TypeMethodDescriptionbooleandoubleexposure(int p) Portfolio exposure to factorp.intdouble[]doublefactorContribution(int p) Share of total variance from factorp.double[]doubledoubleinthashCode()doublemarginal(int i) Marginal contribution of nameito total risk.double[]doublepercent(int i) Share of total variance from namei.double[]doubleShare of total variance that is specific.doubledoubletoString()doubleTotal riskσ, per period.double
-
Constructor Details
-
Decomposition
public Decomposition(List<String> factorNames, double[] exposures, double factorVariance, double specificVariance, double[] marginal, double[] percent, double[] factorContribution, double specificContribution) Creates the value; arrays are copied.- Parameters:
exposures- portfolio factor exposuresXᵀwmarginal-∂σ/∂w_i = (Vw)_i/σpercent-w_i (Vw)_i / σ²factorContribution-x_k (F x)_k / σ²specificContribution-Σ w_i² d_i / σ²
-
-
Method Details
-
factorNames
-
exposure
public double exposure(int p) Portfolio exposure to factorp. -
exposureLength
public int exposureLength() -
exposuresCopy
public double[] exposuresCopy() -
factorVariance
public double factorVariance() -
specificVariance
public double specificVariance() -
totalVariance
public double totalVariance() -
totalRisk
public double totalRisk()Total riskσ, per period. -
factorRisk
public double factorRisk() -
specificRisk
public double specificRisk() -
marginal
public double marginal(int i) Marginal contribution of nameito total risk. -
marginalCopy
public double[] marginalCopy() -
percent
public double percent(int i) Share of total variance from namei. -
percentCopy
public double[] percentCopy() -
factorContribution
public double factorContribution(int p) Share of total variance from factorp. -
factorContributionCopy
public double[] factorContributionCopy() -
specificContribution
public double specificContribution()Share of total variance that is specific. -
equals
-
hashCode
-
toString
-