Skip to content

turtle_quant_1.strategies.helpers.candle_units

turtle_quant_1.strategies.helpers.candle_units

Helper functions for working with candle unit conversions.

convert_units

convert_units(
    units: int, from_unit: CandleUnit, to_unit: CandleUnit
) -> int

Approximately convert units between different candle units.

Parameters:

Name Type Description Default
units int

The number of units to convert.

required
from_unit CandleUnit

The unit to convert from.

required
to_unit CandleUnit

The unit to convert to.

required

Returns:

Type Description
int

The number of units in the new unit.

Source code in src/turtle_quant_1/strategies/helpers/candle_units.py
def convert_units(units: int, from_unit: CandleUnit, to_unit: CandleUnit) -> int:
    """Approximately convert units between different candle units.

    Args:
        units: The number of units to convert.
        from_unit: The unit to convert from.
        to_unit: The unit to convert to.

    Returns:
        The number of units in the new unit.
    """
    assert from_unit in _SUPPORTED_CANDLE_UNITS
    assert to_unit in _SUPPORTED_CANDLE_UNITS

    if from_unit == to_unit:
        return units

    atomic_units = units * _UNIT_TO_5M[from_unit]
    return round(atomic_units / _UNIT_TO_5M[to_unit])