# trex-core long-term (multi-day) instance profile (dcy-027 / REQ-077). # Copy to e.g. config/longterm.toml and run alongside the intraday daemon: # trex-core-daemon --config config/longterm.toml # Real per-instance files are gitignored (they hold the portfolio-hub token). # # This profile assumes the strategy module owns ALL protection rules # (stop-loss / trailing / time-stop — dcy-027 OQ-2). The core provides no # autonomous liquidation for this instance; the only core-side backstop is # the operator CLI: trex-core exit # Long-term instances MUST use their own instance_key so slots (DB scope) and # queues (trex.slots.req. etc) never interfere with the intraday daemon # (dcy-027 A-2; dcy-009 topology). instance_key = "longterm" # portfolio-hub auth token (kept out of .env). portfolio_hub_token = "" trading_timezone = "Asia/Seoul" # FCFS admission cap M for this instance (REQ-060). Size to the long-term # portfolio's target position count. max_active_slots = 10 # dcy-024 / REQ-048: long-term holdings must survive market close, day # boundaries and restarts — disable the autonomous safety-sell worker # (stop-loss / forced_close / market-close loops are all OFF). # NOTE: forced_close_at is therefore meaningless on this instance (dcy-027 # CONFIRM) — its executor never runs here. Do not set it on long-term slots. safety_sell_enabled = false # dcy-027 / REQ-076: long-term strategies poll every 1-10 min (OQ-4), so the # intraday default (120s, env TREX_WATCHDOG_TIMEOUT) would mark them expired # all day. 1800s (30 min) keeps `watchdog.expired` a meaningful absence # signal while last_seen stays visible in slots RPC rows. watchdog_timeout_sec = 1800 # Environment note (not TOML keys): do NOT set TREX_MARKET_CLOSE_LIQUIDATION_TIME # for this instance's daemon — market-close liquidation is an intraday concept. # (With safety_sell_enabled=false the loop is off anyway; leaving the env unset # keeps the intent explicit.)