"""Asset model (종목 정보).""" from sqlalchemy import Column, String, BigInteger, Numeric, Date, Boolean from sqlalchemy.dialects.postgresql import UUID import uuid try: from app.database import Base except ModuleNotFoundError: from backend.app.database import Base class Asset(Base): """Asset model (kor_ticker → assets).""" __tablename__ = "assets" id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) ticker = Column(String(20), unique=True, nullable=False, index=True) name = Column(String(100), nullable=False) market = Column(String(20)) # KOSPI, KOSDAQ market_cap = Column(BigInteger) # 시가총액 stock_type = Column(String(20)) # 보통주, 우선주 sector = Column(String(100)) # 섹터 last_price = Column(Numeric(15, 2)) # 최종 가격 eps = Column(Numeric(15, 2)) # 주당순이익 bps = Column(Numeric(15, 2)) # 주당순자산 dividend_per_share = Column(Numeric(15, 2)) # 주당배당금 base_date = Column(Date) # 기준일 is_active = Column(Boolean, default=True) # 활성 여부 def __repr__(self): return f""