source push
This commit is contained in:
83
update_env_simple.py
Normal file
83
update_env_simple.py
Normal file
@@ -0,0 +1,83 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
환경변수 DB 업데이트 스크립트 (간단 버전)
|
||||
- 딕셔너리로 직접 값을 넣어서 업데이트
|
||||
"""
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
SCRIPT_DIR = Path(__file__).resolve().parent
|
||||
sys.path.insert(0, str(SCRIPT_DIR))
|
||||
|
||||
from database import TradeDB
|
||||
|
||||
def update_env(updates):
|
||||
"""
|
||||
환경변수 업데이트
|
||||
|
||||
Args:
|
||||
updates: 업데이트할 환경변수 딕셔너리
|
||||
예: {
|
||||
"KIS_APP_KEY": "your_app_key",
|
||||
"KIS_APP_SECRET": "your_app_secret",
|
||||
"MM_BOT_TOKEN_": "your_token",
|
||||
...
|
||||
}
|
||||
"""
|
||||
db_path = SCRIPT_DIR / "quant_bot.db"
|
||||
db = TradeDB(db_path=str(db_path))
|
||||
|
||||
# 기존 최신 설정 불러오기
|
||||
latest = db.get_latest_env()
|
||||
if latest and latest.get("snapshot"):
|
||||
current = latest["snapshot"]
|
||||
print(f"📋 기존 설정 불러옴 (ID: {latest['id']})")
|
||||
else:
|
||||
current = {}
|
||||
print("⚠️ 기존 설정 없음 - 새로 생성")
|
||||
|
||||
# 기존 값과 병합
|
||||
new_snapshot = {**current, **updates}
|
||||
|
||||
# 새 스냅샷 저장
|
||||
env_id = db.insert_env_snapshot(new_snapshot)
|
||||
if env_id:
|
||||
print(f"✅ 환경변수 저장 완료! (새 스냅샷 ID: {env_id})")
|
||||
print(f" 업데이트된 키: {', '.join(updates.keys())}")
|
||||
else:
|
||||
print("❌ 저장 실패!")
|
||||
|
||||
db.close()
|
||||
return env_id
|
||||
|
||||
if __name__ == "__main__":
|
||||
# 여기에 업데이트할 값들을 딕셔너리로 넣으세요
|
||||
my_updates = {
|
||||
# 한투 API 설정
|
||||
|
||||
# "KIS_APP_KEY_REAL": "PSUbfJUp3eiA0rthF1GSK8yWI7dD7GvXMPQL", # 여기에 앱키 입력
|
||||
# "KIS_APP_SECRET_REAL": "DzG04RbksnUMROslum/2DliJiVZAdeSgwUNHKSbFehMmD2WKGVUeSd0N1B8LY947W/aNtEmU8pdkvKTFnVX1u68DvCj7cvEtlJc++wCUeaRD3z1Ov48b5PLsPiWvwE+pMd0pEl6jmFg0J6td1TidugAsZtEQ3GUBimyQyDSgw3jkdbnM390=",
|
||||
# "KIS_APP_KEY_MOCK": "PSdfKtsMihgC9tLiUr2XISscuR3fHxl6kvmV", # 여기에 앱키 입력`
|
||||
# "KIS_APP_SECRET_MOCK": "Ip+XZrZcoz11thgDD40XS8i6R1AalYkKFZwg2w8+ZMulVKN8rJVXiqGONxc4EYxw1S3TgOcx7fSldDc6EGq63bprfbgHwKWxstu29ZmLAtRNU0oFqV7e9vCOfgiWxrfnCqwcihoS7ovmza9+Ylqd8/EtjFGNmhQHWocyTAm8kdp5IG6tFtc=", # 여기에 앱시크릿 입력
|
||||
|
||||
# "KIS_ACCOUNT_NO_REAL": "44030801",
|
||||
# "KIS_ACCOUNT_NO_MOCK": "50166974",
|
||||
# "KIS_ACCOUNT_NO_MOCK": "44030801",
|
||||
# "KIS_ACCOUNT_NO_MOCK": "50169256",
|
||||
# "KIS_ACCOUNT_CODE_REAL": "01",
|
||||
# "KIS_ACCOUNT_CODE_MOCK": "01",
|
||||
|
||||
"MIN_RECOVERY_RATIO": 0.35,
|
||||
"MIN_DROP_RATE": 0.02,
|
||||
|
||||
}
|
||||
|
||||
# 빈 값 제거 (업데이트하지 않음)
|
||||
my_updates = {k: v for k, v in my_updates.items() if v}
|
||||
|
||||
if not my_updates:
|
||||
print("⚠️ 업데이트할 값이 없습니다.")
|
||||
print(" update_env_simple.py 파일을 열어서 my_updates 딕셔너리에 값을 입력하세요.")
|
||||
sys.exit(1)
|
||||
|
||||
update_env(my_updates)
|
||||
Reference in New Issue
Block a user