source push

This commit is contained in:
2026-02-22 18:05:14 +09:00
parent 899a3c6543
commit b827f03d56
19 changed files with 6986 additions and 0 deletions

40
copy_env_row_to_latest.py Normal file
View File

@@ -0,0 +1,40 @@
#!/usr/bin/env python3
"""
env_config에서 지정한 id 행을 그대로 복사해 새 행으로 INSERT.
→ 봇은 항상 id 최대(최신) 행만 쓰므로, 4번 내용이 곧 '최신 설정'이 됨.
사용: python copy_env_row_to_latest.py [소스_id]
소스_id 기본값: 4
"""
import sys
from pathlib import Path
SCRIPT_DIR = Path(__file__).resolve().parent
sys.path.insert(0, str(SCRIPT_DIR))
from database import TradeDB, ENV_CONFIG_KEYS
def main():
source_id = int(sys.argv[1]) if len(sys.argv) > 1 else 4
db_path = SCRIPT_DIR / "quant_bot.db"
db = TradeDB(db_path=str(db_path))
row = db.conn.execute("SELECT * FROM env_config WHERE id = ?", (source_id,)).fetchone()
if not row:
print(f"id={source_id} 행이 없습니다.")
db.close()
return
# id=4 내용으로 새 스냅샷 생성 (created_at만 현재 시각)
import datetime
snapshot = {k: (row[k] if row[k] is not None else "") for k in ENV_CONFIG_KEYS if k in row.keys()}
env_id = db.insert_env_snapshot(snapshot)
db.close()
if env_id:
print(f"✅ id={source_id} 내용을 새 행(id={env_id})으로 복사했습니다. 이제 최신 설정입니다.")
else:
print("❌ INSERT 실패")
if __name__ == "__main__":
main()