24 lines
1.3 KiB
YAML
24 lines
1.3 KiB
YAML
id: CORE-002
|
|
title: Instrument-Aware Quote Units and Conversion Multipliers
|
|
status: backlog
|
|
priority: P0
|
|
effort: M
|
|
depends_on:
|
|
- CORE-001A
|
|
- CORE-001B
|
|
- CORE-001C
|
|
tags: [core, units, pricing, domain]
|
|
summary: >
|
|
Model quoted instruments with explicit asset/share units and conversion multipliers
|
|
so prices like GLD are never misinterpreted as physical-gold ounce prices.
|
|
acceptance_criteria:
|
|
- GLD quotes are modeled explicitly as prices per share, not as ambiguous gold-ounce prices.
|
|
- Instrument metadata encodes that 1 GLD share represents 0.1 troy ounces of gold exposure.
|
|
- Storage/domain value classes know the unit relationship and convert correctly when calculations combine instrument prices with ounce-based quantities.
|
|
- Cross-unit operations fail closed when no explicit instrument conversion path exists.
|
|
- Tests cover GLD share <-> troy-ounce conversion and reject unsupported mixed-unit operations.
|
|
technical_notes:
|
|
- Prefer explicit instrument/unit types over ad hoc scale factors in page/service code.
|
|
- This should integrate with the Decimal/unit-safe domain model rather than bypass it with raw floats.
|
|
- Consider extending historical/unit types so both live overview paths and backtesting/event paths can share the same conversion rules.
|