quantize_krx_price#

pyqqq.utils.compute.quantize_krx_price(price: Decimal | int | float, etf_etn: bool, rounding: str = 'floor') int[source]#

주어진 가격을 한국거래소(KRX)의 틱 사이즈에 따라 지정된 반올림 방식으로 조정합니다.

이 함수는 ETF 또는 ETN 여부에 따라 적절한 틱 사이즈를 계산하고, 주어진 가격을 이 틱 사이즈에 맞추어 반올림합니다. 사용자는 ‘round’, ‘ceil’, ‘floor’ 중에서 반올림 방식을 선택할 수 있습니다.

Parameters:
  • price (Decimal) – 반올림할 가격.

  • etf_etn (bool) – 가격이 ETF 또는 ETN 상품인 경우 True, 그 외는 False.

  • rounding (str, optional) – 반올림 방식(‘round’, ‘ceil’, ‘floor’). 기본값은 ‘floor’.

Returns:

반올림된 가격.

Return type:

int

Raises:

ValueError – rounding이 지정된 세 가지 옵션 중 하나가 아닐 경우 오류를 발생시킵니다.

Examples

>>> quantize_krx_price(Decimal('1520.75'), False, 'round')
1521
>>> quantize_krx_price(Decimal('1520.75'), True, 'ceil')
1521
>>> quantize_krx_price(Decimal('1520.75'), False, 'floor')
1520