CalmarLossΒΆ

Defined in fynance.models.loss

class CalmarLoss(rf=0., period=252, eps=1e-8)[source]

Bases: BaseLoss

Negative Calmar ratio as a differentiable loss.

Calmar = annualized return / maximum drawdown. Minimizing this loss maximizes return per unit of worst peak-to-trough loss. The maximum drawdown is computed differentiably from the cumulative return path via torch.cummax.

Parameters are inherited from BaseLoss (period, eps).

forward(y_pred, y_true=None)[source]

Compute the negative Calmar ratio (scalar).