diff --git a/schedules/anchoring/src/anchoring/service.py b/schedules/anchoring/src/anchoring/service.py index 2732bb1..81b86ac 100644 --- a/schedules/anchoring/src/anchoring/service.py +++ b/schedules/anchoring/src/anchoring/service.py @@ -25,8 +25,8 @@ def calc_price_range_index(target_price: int) -> int: def calc_anchoring_price(target_price: int, anchoring_value: int) -> int: - """앵커링가 = 목표가 × (1 − A), 1원 단위 내림. §4.2 (정수 연산만)""" - return target_price * (1000 - anchoring_value) // 1000 + """앵커링가 = 목표가 × (1 − A), 10원 단위 반올림. §4.2 (정수 연산만)""" + return (target_price * (1000 - anchoring_value) + 5000) // 10000 * 10 def judge_sample_type( diff --git a/schedules/anchoring/tests/test_core.py b/schedules/anchoring/tests/test_core.py index e3cd149..01e6aca 100644 --- a/schedules/anchoring/tests/test_core.py +++ b/schedules/anchoring/tests/test_core.py @@ -23,10 +23,10 @@ E = AnchoringSampleType.EXCLUDED.value # ── §11.1 앵커링가 계산 (내림 검증) ────────────────────── -def test_calc_anchoring_price_floor(): +def test_calc_anchoring_price_round(): assert calc_anchoring_price(30_000, 200) == 24_000 - assert calc_anchoring_price(26_706, 10) == 26_438 # 26,438.94 → 내림 - assert calc_anchoring_price(29_999, 15) == 29_549 # 29,549.015 → 내림 + assert calc_anchoring_price(26_706, 10) == 26_440 # 26,438.94 → 10원 반올림 + assert calc_anchoring_price(29_999, 15) == 29_550 # 29,549.015 → 10원 반올림 assert calc_anchoring_price(0, 10) == 0