initial commit

This commit is contained in:
2026-02-04 00:16:34 +09:00
commit ae11528dd9
867 changed files with 209640 additions and 0 deletions

View File

@@ -0,0 +1,29 @@
from .base import Base
from .updated import Updated
# 툴별 마스터 모델들
from .domestic_stock import DomesticStockMaster
from .overseas_stock import OverseasStockMaster
from .domestic_futureoption import DomesticFutureoptionMaster
from .overseas_futureoption import OverseasFutureoptionMaster
from .domestic_bond import DomesticBondMaster
from .etfetn import EtfetnMaster
from .elw import ElwMaster
from .auth import AuthMaster
# 모든 모델들을 리스트로 제공
ALL_MODELS = [
# 툴별 마스터 모델들
DomesticStockMaster,
OverseasStockMaster,
DomesticFutureoptionMaster,
OverseasFutureoptionMaster,
DomesticBondMaster,
EtfetnMaster,
ElwMaster,
AuthMaster,
# 업데이트 상태 추적
Updated
]

View File

@@ -0,0 +1,11 @@
from sqlalchemy import Column, Integer, String
from .base import Base
class AuthMaster(Base):
"""인증 마스터"""
__tablename__ = 'auth_master'
id = Column(Integer, primary_key=True)
name = Column(String(50), index=True) # 종목명
code = Column(String(50), index=True) # 종목코드

View File

@@ -0,0 +1,5 @@
from sqlalchemy.orm import declarative_base
# SQLAlchemy Base 클래스
Base = declarative_base()

View File

@@ -0,0 +1,12 @@
from sqlalchemy import Column, Integer, String
from .base import Base
class DomesticBondMaster(Base):
"""국내채권 마스터"""
__tablename__ = 'domestic_bond_master'
id = Column(Integer, primary_key=True)
name = Column(String(50), index=True) # 종목명
code = Column(String(50), index=True) # 종목코드
ex = Column(String(30), index=True) # 거래소 코드

View File

@@ -0,0 +1,12 @@
from sqlalchemy import Column, Integer, String
from .base import Base
class DomesticFutureoptionMaster(Base):
"""국내선물옵션 마스터"""
__tablename__ = 'domestic_futureoption_master'
id = Column(Integer, primary_key=True)
name = Column(String(50), index=True) # 종목명
code = Column(String(50), index=True) # 종목코드
ex = Column(String(30), index=True) # 거래소 코드

View File

@@ -0,0 +1,12 @@
from sqlalchemy import Column, Integer, String
from .base import Base
class DomesticStockMaster(Base):
"""국내주식 마스터"""
__tablename__ = 'domestic_stock_master'
id = Column(Integer, primary_key=True)
name = Column(String(50), index=True) # 종목명
code = Column(String(50), index=True) # 종목코드
ex = Column(String(30), index=True) # 거래소 코드

View File

@@ -0,0 +1,12 @@
from sqlalchemy import Column, Integer, String
from .base import Base
class ElwMaster(Base):
"""ELW 마스터"""
__tablename__ = 'elw_master'
id = Column(Integer, primary_key=True)
name = Column(String(50), index=True) # 종목명
code = Column(String(50), index=True) # 종목코드
ex = Column(String(30), index=True) # 거래소 코드

View File

@@ -0,0 +1,12 @@
from sqlalchemy import Column, Integer, String
from .base import Base
class EtfetnMaster(Base):
"""ETF/ETN 마스터"""
__tablename__ = 'etfetn_master'
id = Column(Integer, primary_key=True)
name = Column(String(50), index=True) # 종목명
code = Column(String(50), index=True) # 종목코드
ex = Column(String(30), index=True) # 거래소 코드

View File

@@ -0,0 +1,12 @@
from sqlalchemy import Column, Integer, String
from .base import Base
class OverseasFutureoptionMaster(Base):
"""해외선물옵션 마스터"""
__tablename__ = 'overseas_futureoption_master'
id = Column(Integer, primary_key=True)
name = Column(String(50), index=True) # 종목명
code = Column(String(50), index=True) # 종목코드
ex = Column(String(30), index=True) # 거래소 코드

View File

@@ -0,0 +1,12 @@
from sqlalchemy import Column, Integer, String
from .base import Base
class OverseasStockMaster(Base):
"""해외주식 마스터"""
__tablename__ = 'overseas_stock_master'
id = Column(Integer, primary_key=True)
name = Column(String(50), index=True) # 종목명
code = Column(String(50), index=True) # 종목코드
ex = Column(String(30), index=True) # 거래소 코드

View File

@@ -0,0 +1,15 @@
from sqlalchemy import Column, Integer, String, DateTime
from .base import Base
class Updated(Base):
"""마스터파일 업데이트 상태 추적 테이블"""
__tablename__ = 'updated'
id = Column(Integer, primary_key=True)
tool_name = Column(String(50), nullable=False, unique=True, index=True) # 툴명 (예: domestic_stock, overseas_stock)
updated_at = Column(DateTime, nullable=False) # 마지막 업데이트 시간
def __repr__(self):
return f"<Updated(tool_name='{self.tool_name}', updated_at='{self.updated_at}')>"