public function setValue($value)
    {
        NumericValidator::validate($value, "Value");
        $value = Formatter::formatToPrice($value, $this->getCurrency());
        $this->value = $value;
        return $this;
    }