Class PnLExplainCrossPostProcessor
- java.lang.Object
-
- com.quartetfs.biz.pivot.postprocessing.impl.AAdvancedPostProcessor<OutputType>
-
- com.quartetfs.biz.pivot.postprocessing.impl.ABaseDynamicAggregationPostProcessor<LeafType,OutputType>
-
- com.quartetfs.biz.pivot.postprocessing.impl.ADynamicAggregationPostProcessor<com.qfs.vector.IVector,com.qfs.vector.IVector>
-
- com.activeviam.risk.core.postprocessor.impl.PnLExplainCrossPostProcessor
-
- All Implemented Interfaces:
IInputSelectorAware
,IPnLExplainFormulaProviderAware
,com.quartetfs.biz.pivot.postprocessing.IAggregatedMeasureAware
,com.quartetfs.biz.pivot.postprocessing.IPartitionedPostProcessor<com.qfs.vector.IVector>
,com.quartetfs.biz.pivot.postprocessing.IPostProcessor<com.qfs.vector.IVector>
,com.quartetfs.fwk.types.IExtendedPluginValue
,Serializable
@QuartetExtendedPluginValue(intf=com.quartetfs.biz.pivot.postprocessing.IPostProcessor.class, key="PNL_EXPLAIN_POSTPROCESSOR_CROSS") public class PnLExplainCrossPostProcessor extends com.quartetfs.biz.pivot.postprocessing.impl.ADynamicAggregationPostProcessor<com.qfs.vector.IVector,com.qfs.vector.IVector> implements IPnLExplainFormulaProviderAware, IInputSelectorAware
Post-processor used to get PnL approximation for Delta, Gamma and Vega.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected com.quartetfs.biz.pivot.cube.hierarchy.ILevelInfo
asOfDateLevelInfo
static String
PLUGIN_KEY
protected com.quartetfs.biz.pivot.cube.hierarchy.ILevelInfo
riskClassLevelInfo
-
Fields inherited from class com.quartetfs.biz.pivot.postprocessing.impl.ABaseDynamicAggregationPostProcessor
AGGREGATION_FUNCTION, aggregationFunction, DYNAMIC_AGGREGATION_POST_PROCESSOR_PREFETCHER, hierarchiesInfo, isPartitionedOnRangeLevels, LEAF_LEVELS, LEAF_TYPE, leafLevelsInfo, leafType, partitioningLevelsInfo
-
Fields inherited from class com.quartetfs.biz.pivot.postprocessing.impl.AAdvancedPostProcessor
aggregatedMeasureName, ANALYSIS_LEVELS_PROPERTY, analysisLevelsToExpand, continuousQueryHandlerKeys, derivedContextDependencies, evaluator, EVALUATOR, explicitContextDependencies, logger, measuresProvider, name, OUTPUT_TYPE, outputType, pivot, prefetchers, PRINT_TIMINGS, printTimings, properties, underlyingMeasures
-
Fields inherited from interface com.activeviam.risk.core.services.IInputSelectorAware
PROPERTY_NAME
-
Fields inherited from interface com.quartetfs.biz.pivot.postprocessing.IPartitionedPostProcessor
DEFAULT_PARTITIONING_ON_RANGE_LEVELS
-
Fields inherited from interface com.activeviam.risk.core.services.IPnLExplainFormulaProviderAware
PROPERTY_NAME
-
-
Constructor Summary
Constructors Constructor Description PnLExplainCrossPostProcessor(String name, com.quartetfs.biz.pivot.cube.hierarchy.measures.IPostProcessorCreationContext creationContext)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected com.qfs.vector.IVector
evaluateLeaf(com.quartetfs.biz.pivot.ILocation leafLocation, Object[] underlyingMeasures)
There are three underlying measures here: the Sensi value, Current date market data, Previous date market data.static Function<com.activeviam.desc.build.ICanStartBuildingMeasures,com.activeviam.desc.build.IHasAtLeastOneMeasure>
getPostProcessorDescription(String measureName, String sensiValueMeasure, String sensiLadderMeasure, String currentDateMeasure1, String previousDateMeasure1, String currentDateMeasure2, String previousDateMeasure2, String asOfDateLevel, String riskFactorLevel, String riskFactorLevel2, String riskClassLevel, String ladderAvailabilityLevel, String sensitivityName, String formatter, String folder)
String
getType()
void
init(Properties properties)
Leaf levels corresponding the the keys of the market data to retrieve in the underlying market data post-processed measures need to be present in the configuration of the post-processor, as well as the level corresponding to the risk class.static com.activeviam.copper.api.CopperMeasure
measure(com.activeviam.copper.api.CopperMeasure sensiValueMeasure, com.activeviam.copper.api.CopperMeasure sensiLadderMeasure, com.activeviam.copper.api.CopperMeasure currentDateMeasure1, com.activeviam.copper.api.CopperMeasure previousDateMeasure1, com.activeviam.copper.api.CopperMeasure currentDateMeasure2, com.activeviam.copper.api.CopperMeasure previousDateMeasure2, String asOfDateLevel, String riskFactorLevel, String riskFactorLevel2, String riskClassLevel, String ladderAvailabilityLevel, String sensitivityName)
void
setInputSelector(IInputSelector selector)
Set the implementation ofIInputSelector
void
setPnLExplainFormulaProvider(IPnLExplainFormulaProvider provider)
Set the implementation ofIPnLExplainFormulaProvider
-
Methods inherited from class com.quartetfs.biz.pivot.postprocessing.impl.ADynamicAggregationPostProcessor
createLeafEvaluationProcedure, evaluateLeaf
-
Methods inherited from class com.quartetfs.biz.pivot.postprocessing.impl.ABaseDynamicAggregationPostProcessor
checkLeafType, checkPrefetchers, compute, computeLeafType, computeLeafTypeFromGenericType, computePartitioningLevels, computePrefetchFilter, createAggregationFunction, createPrefetchers, getAggregationFunction, getHierarchiesInfo, getLeafLevelsInfo, getLeafType, getTypeFromLiteralType, handleNoLeafLevel, initializeLeafLevels, initializeUnderlyingMeasures, reduce, reduceLeavesAndContribute, retrieveLeaves, setPartitioningLevels, supportsAnalysisLevels
-
Methods inherited from class com.quartetfs.biz.pivot.postprocessing.impl.AAdvancedPostProcessor
addContextDependency, checkInterruption, checkOutputType, computeNamePath, computeOutputType, createEvaluator, expandResult, getActivePivot, getContext, getContextDependencies, getContinuousQueryHandlerKeys, getCurrentMeasure, getDatastoreVersion, getDerivedContextDependencies, getExpansionProcedure, getGenericOutputType, getMeasuresProvider, getName, getOutputType, getOutputTypeFromGenericClassParameter, getOutputTypeFromProperties, getPrefetchers, getProperties, getQueryCache, getTypeFromClass, handleCircularDependency, handleNotSupportedAnalysisLevels, handleUnknownUnderlyingMeasure, hideEvaluator, initializeContinuousQueryHandlerKeys, removeAnalysisLevelsFromFilter, restrictLocationAnalysisLevels, retrieveAnalysisLevelsToExpand, retrieveNamedPrefetchAggregatesWithAnalysisLevels, retrievePrefetchAggregates, retrievePrefetchAggregatesWithAnalysisLevels, setAggregatedMeasureName, toString
-
-
-
-
Field Detail
-
PLUGIN_KEY
public static final String PLUGIN_KEY
- See Also:
- Constant Field Values
-
asOfDateLevelInfo
protected com.quartetfs.biz.pivot.cube.hierarchy.ILevelInfo asOfDateLevelInfo
-
riskClassLevelInfo
protected com.quartetfs.biz.pivot.cube.hierarchy.ILevelInfo riskClassLevelInfo
-
-
Constructor Detail
-
PnLExplainCrossPostProcessor
public PnLExplainCrossPostProcessor(String name, com.quartetfs.biz.pivot.cube.hierarchy.measures.IPostProcessorCreationContext creationContext)
-
-
Method Detail
-
getPostProcessorDescription
public static Function<com.activeviam.desc.build.ICanStartBuildingMeasures,com.activeviam.desc.build.IHasAtLeastOneMeasure> getPostProcessorDescription(String measureName, String sensiValueMeasure, String sensiLadderMeasure, String currentDateMeasure1, String previousDateMeasure1, String currentDateMeasure2, String previousDateMeasure2, String asOfDateLevel, String riskFactorLevel, String riskFactorLevel2, String riskClassLevel, String ladderAvailabilityLevel, String sensitivityName, String formatter, String folder)
-
measure
public static com.activeviam.copper.api.CopperMeasure measure(com.activeviam.copper.api.CopperMeasure sensiValueMeasure, com.activeviam.copper.api.CopperMeasure sensiLadderMeasure, com.activeviam.copper.api.CopperMeasure currentDateMeasure1, com.activeviam.copper.api.CopperMeasure previousDateMeasure1, com.activeviam.copper.api.CopperMeasure currentDateMeasure2, com.activeviam.copper.api.CopperMeasure previousDateMeasure2, String asOfDateLevel, String riskFactorLevel, String riskFactorLevel2, String riskClassLevel, String ladderAvailabilityLevel, String sensitivityName)
-
init
public void init(Properties properties) throws com.quartetfs.fwk.QuartetException
Leaf levels corresponding the the keys of the market data to retrieve in the underlying market data post-processed measures need to be present in the configuration of the post-processor, as well as the level corresponding to the risk class.- Risk class: its value is the string risk class, e.g.
"RiskClass@Risk Classes@Risk"
- Specified by:
init
in interfacecom.quartetfs.biz.pivot.postprocessing.IPostProcessor<com.qfs.vector.IVector>
- Overrides:
init
in classcom.quartetfs.biz.pivot.postprocessing.impl.ABaseDynamicAggregationPostProcessor<com.qfs.vector.IVector,com.qfs.vector.IVector>
- Throws:
com.quartetfs.fwk.QuartetException
- Risk class: its value is the string risk class, e.g.
-
evaluateLeaf
protected com.qfs.vector.IVector evaluateLeaf(com.quartetfs.biz.pivot.ILocation leafLocation, Object[] underlyingMeasures)
There are three underlying measures here: the Sensi value, Current date market data, Previous date market data. The PnL explain computation is done in the method calculatePnL.- Specified by:
evaluateLeaf
in classcom.quartetfs.biz.pivot.postprocessing.impl.ADynamicAggregationPostProcessor<com.qfs.vector.IVector,com.qfs.vector.IVector>
-
getType
public String getType()
- Specified by:
getType
in interfacecom.quartetfs.fwk.types.IExtendedPluginValue
-
setPnLExplainFormulaProvider
public void setPnLExplainFormulaProvider(IPnLExplainFormulaProvider provider)
Description copied from interface:IPnLExplainFormulaProviderAware
Set the implementation ofIPnLExplainFormulaProvider
- Specified by:
setPnLExplainFormulaProvider
in interfaceIPnLExplainFormulaProviderAware
- Parameters:
provider
- the implementation ofIPnLExplainFormulaProvider
-
setInputSelector
public void setInputSelector(IInputSelector selector)
Description copied from interface:IInputSelectorAware
Set the implementation ofIInputSelector
- Specified by:
setInputSelector
in interfaceIInputSelectorAware
- Parameters:
selector
- the implementation ofIInputSelector
-
-