From f554202c58d89038ce18a3c0c607bcd144bde466 Mon Sep 17 00:00:00 2001 From: Mina Choi Date: Wed, 29 Jul 2026 09:51:26 +0900 Subject: [PATCH] =?UTF-8?q?[fix]=20anchoring:=20=EC=95=B5=EC=BB=A4?= =?UTF-8?q?=EB=A7=81=EA=B0=80=201=EC=9B=90=20=EB=8B=A8=EC=9C=84=20?= =?UTF-8?q?=EB=82=B4=EB=A6=BC=20=E2=86=92=2010=EC=9B=90=20=EB=8B=A8?= =?UTF-8?q?=EC=9C=84=20=EB=B0=98=EC=98=AC=EB=A6=BC=20(=EC=9E=90=EB=8F=99?= =?UTF-8?q?=20=EC=A0=9C=EC=95=88=EA=B0=80=20=EC=A0=95=EB=8F=88,=20IMK=20#1?= =?UTF-8?q?1=20=EC=BC=80=EC=9D=B4=EC=8A=A4)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- schedules/anchoring/src/anchoring/service.py | 4 ++-- schedules/anchoring/tests/test_core.py | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) 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