crucible / engine /config.py
s-ttp's picture
Crucible — AI equity analyst (containerized engine), secrets-only
fb490d1 verified
Raw History Blame Contribute Delete
982 Bytes
import os
# API keys — ENVIRONMENT ONLY. Never hardcode: the previous literal keys were committed
# and must be treated as compromised/rotated. Set these as HF Space secrets (or in the
# shell / a .env loaded before use). Empty string means "not configured".
OPENAI_API_KEY = os.getenv("OPENAI_API_KEY", "")
ANTHROPIC_API_KEY = os.getenv("ANTHROPIC_API_KEY", "")
GEMINI_API_KEY = os.getenv("GEMINI_API_KEY") or os.getenv("GOOGLE_API_KEY", "")
KIMI_API_KEY = os.getenv("KIMI_API_KEY", "")
KIMI_MODEL_NAME = os.getenv("KIMI_MODEL_NAME", "kimi-k2-thinking")
ALPHA_VANTAGE_API_KEY = os.getenv("ALPHAVANTAGE_API_KEY") or os.getenv("ALPHA_VANTAGE_API_KEY", "")
FINVIZ_AUTH_TOKEN = os.getenv("FINVIZ_AUTH_TOKEN", "")
# Screener Configuration
MIN_MARKET_CAP = 0 # Filter removed (was $1B)
MAX_DEBT_TO_EQUITY = 2.0
MIN_DROP_FROM_HIGH_PCT = 0.20 # 20% or more below 52-week high
# Analysis Configuration
MIN_INSIDER_BUY_VALUE = 100_000 # $100k
INSIDER_LOOKBACK_DAYS = 180 # 6 months