Docs: correct PlatformConfig overlay scope (credentials never pass through the factory)
Claude-Session: https://claude.ai/code/session_01VPNF37MP9Kuv62B1VBrZ1b
This commit is contained in:
@@ -112,7 +112,7 @@ Legacy fields kept for config-shape compatibility: `rsi_entry_threshold`, `min_e
|
|||||||
### PlatformConfig (top level)
|
### PlatformConfig (top level)
|
||||||
`symbol="XAU/USD"`, primary TF H1, confirmations [M15, H4], `data_lookback_days=60`, `scan_pairs=[XAUUSD]` (mirrors config.json `scanning.pairs` — see below), `scan_timeframes=[M5,M15,H1,H4]`, `candle_buffer_seconds=10`, `ws_cooldown_seconds=300`.
|
`symbol="XAU/USD"`, primary TF H1, confirmations [M15, H4], `data_lookback_days=60`, `scan_pairs=[XAUUSD]` (mirrors config.json `scanning.pairs` — see below), `scan_timeframes=[M5,M15,H1,H4]`, `candle_buffer_seconds=10`, `ws_cooldown_seconds=300`.
|
||||||
|
|
||||||
Deployment settings (credentials, scan pairs/TFs, per-pair base blocked hours, alert quality, log level) overlay from config.json via `app_config.apply_pair_overrides`, applied in the pair factory BEFORE per-TF deltas. `scanning.pairs` in config.json is now the actual deployment switch for what the bot scans — `PlatformConfig.scan_pairs` just carries the resolved value.
|
Per-pair base blocked hours plus `scan_pairs`/`scan_timeframes` overlay from config.json via `app_config.apply_pair_overrides`, applied in the pair factory BEFORE per-TF deltas. Credentials, alert quality, and log level never touch `PlatformConfig` — `telegram_bot.py` and `data_provider.py` read them directly from `app_config.get_app_config()` and its resolvers. `scanning.pairs` in config.json is the deployment switch for what the bot scans — `PlatformConfig.scan_pairs` just carries the resolved value.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
+3
-5
@@ -113,11 +113,9 @@ _CHANNEL_ID_RAW = telegram_channel_id()
|
|||||||
CHANNEL_ID: Optional[int] = int(_CHANNEL_ID_RAW) if _CHANNEL_ID_RAW else None
|
CHANNEL_ID: Optional[int] = int(_CHANNEL_ID_RAW) if _CHANNEL_ID_RAW else None
|
||||||
|
|
||||||
# ── Pairs & buttons ───────────────────────────────────────────────────
|
# ── Pairs & buttons ───────────────────────────────────────────────────
|
||||||
# The scanned pair list is config-driven: `scanning.pairs` in config.json
|
# The scanned pair list is config.json-driven (`scanning.pairs`, read via
|
||||||
# (read via app_config) is the single switch for single- vs multi-pair
|
# app_config) and is the single switch for single- vs multi-pair operation.
|
||||||
# operation — `apply_pair_overrides` stamps it onto PlatformConfig.scan_pairs
|
# Buttons, WS subscriptions, and scan loops all derive from it.
|
||||||
# so the two stay in sync. Buttons, WS subscriptions, and scan loops all
|
|
||||||
# derive from it.
|
|
||||||
|
|
||||||
SCAN_PAIRS = list(_APP.scan_pairs)
|
SCAN_PAIRS = list(_APP.scan_pairs)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user