class StudentTLinearVaRCalculator implements VaRCalculator<StudentTVaRParameters, T> {

  @SuppressWarnings("unchecked")
  @Override
  public VaRCalculationResult evaluate(final StudentTVaRParameters parameters, final T... data) {
    ArgumentChecker.notNull(parameters, "parameters");
    ArgumentChecker.notNull(data, "data");
    final Double value = parameters.getMult() * _stdCalculator.evaluate(data) - parameters.getScale() * _meanCalculator.evaluate(data);
    // REVIEW kirk 2012-06-22 -- Is the "stdCalculator" a standard deviation calculator
    // that we can use for the result?
    return new VaRCalculationResult(value, null);
  }

  public  StudentTLinearVaRCalculator(final Function<T, Double> meanCalculator, final Function<T, Double> stdCalculator);

}