qfinbox.core.utils

Common utilities for qfinbox.

Functions

calculate_annualized_return(returns[, frequency])

Calculate annualized return from a series of returns.

calculate_annualized_volatility(returns[, ...])

Calculate annualized volatility from a series of returns.

ensure_1d(data)

Ensure data is a 1D numpy array.

ensure_2d(data)

Ensure data is a 2D numpy array.

to_numpy(data)

Convert data to numpy array.

qfinbox.core.utils.to_numpy(data: ndarray | Series | DataFrame | list) ndarray[source]

Convert data to numpy array.

Parameters:

data (array-like) – Data to convert.

Returns:

Data as numpy array.

Return type:

np.ndarray

qfinbox.core.utils.ensure_1d(data: ndarray | Series | list) ndarray[source]

Ensure data is a 1D numpy array.

Parameters:

data (array-like) – Data to convert.

Returns:

1D numpy array.

Return type:

np.ndarray

Raises:

ValueError – If data cannot be converted to 1D array.

qfinbox.core.utils.ensure_2d(data: ndarray | DataFrame | list) ndarray[source]

Ensure data is a 2D numpy array.

Parameters:

data (array-like) – Data to convert.

Returns:

2D numpy array.

Return type:

np.ndarray

qfinbox.core.utils.calculate_annualized_return(returns: ndarray, frequency: int = 252) float[source]

Calculate annualized return from a series of returns.

Parameters:
  • returns (np.ndarray) – Array of returns.

  • frequency (int, default 252) – Number of periods per year (252 for daily, 12 for monthly).

Returns:

Annualized return.

Return type:

float

qfinbox.core.utils.calculate_annualized_volatility(returns: ndarray, frequency: int = 252) float[source]

Calculate annualized volatility from a series of returns.

Parameters:
  • returns (np.ndarray) – Array of returns.

  • frequency (int, default 252) – Number of periods per year (252 for daily, 12 for monthly).

Returns:

Annualized volatility.

Return type:

float