From edcc6348c83b1eac3af8a5a213ccf9a4ce829c7e Mon Sep 17 00:00:00 2001 From: kjh2064 Date: Sat, 13 Jun 2026 13:54:45 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20WBS-1.4=20=EB=A7=A4=EB=8F=84=20?= =?UTF-8?q?=EC=8B=A0=ED=98=B8=20=EC=8B=9C=20Rule=5FSell=5FQty=20=EC=9E=90?= =?UTF-8?q?=EB=8F=99=20=EC=82=B0=EC=B6=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/gas_adapter_parts/gdc_02_account_satellite.gs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gas_adapter_parts/gdc_02_account_satellite.gs b/src/gas_adapter_parts/gdc_02_account_satellite.gs index 8b94192..3417b35 100644 --- a/src/gas_adapter_parts/gdc_02_account_satellite.gs +++ b/src/gas_adapter_parts/gdc_02_account_satellite.gs @@ -685,7 +685,12 @@ function _addTickerRoute_(ctx) { ? posRec.available_quantity : heldQty; return Math.max(1, Math.min(Math.round(heldQty * sellRatioPct / 100), availQty)); })(); - const ruleSellQty = ""; + const ruleSellQty = (() => { + const heldQty = Number.isFinite(accountHoldingQty) ? accountHoldingQty : 0; + if (heldQty <= 0 || !sellRatioPct) return ""; + const calc = Math.floor(heldQty * sellRatioPct / 100); + return calc > 0 ? calc : ""; + })(); // ── Allowed_Action ─────────────────────────────────────────────────── // 우선순위: 데이터 품질 → HF005 → DART → 유동성 → REGIME매수차단 → RW청산 → SS001