Add EUR/USD support and 4-button Telegram scanner

Add EURUSD pair with dynamic pair info lookup. Telegram bot now shows
4 scan buttons: EUR/USD 15M, EUR/USD 1H, USD/JPY 15M, USD/JPY 1H.
Each indicator displays directional arrows in the message output.
Price formatting adapts per pair (5dp for EUR, 3dp for JPY).
This commit is contained in:
Harwinder
2026-05-10 23:49:36 -04:00
parent 7ccd8c4b04
commit a708609f8b
3 changed files with 87 additions and 50 deletions
+12 -4
View File
@@ -1,5 +1,5 @@
"""
ForexBot2 — Configuration (USD/JPY focus)
ForexBot2 — Configuration
==========================================
"""
@@ -35,10 +35,18 @@ class MarketSession(Enum):
OVERLAP_LONDON_NY = "london_ny_overlap"
# ── Single Focus: USD/JPY ─────────────────────────────────────────
# ── Supported pairs ──────────────────────────────────────────────
USDJPY = "USDJPY=X"
EURUSD = "EURUSD=X"
PAIR_INFO = {
USDJPY: {"display": "USD/JPY", "pip_value": 0.01, "is_jpy_pair": True},
EURUSD: {"display": "EUR/USD", "pip_value": 0.0001, "is_jpy_pair": False},
}
# Defaults (kept for backward compat)
DISPLAY = "USD/JPY"
PIP_VALUE = 0.01 # JPY pairs use 0.01 per pip
PIP_VALUE = 0.01
@dataclass
@@ -109,7 +117,7 @@ class SignalConfig:
@dataclass
class NewsConfig:
"""Economic calendar & sentiment."""
tracked_currencies: List[str] = field(default_factory=lambda: ["USD", "JPY"])
tracked_currencies: List[str] = field(default_factory=lambda: ["USD", "JPY", "EUR"])
min_impact: str = "medium"
pre_event_buffer_minutes: int = 30
post_event_buffer_minutes: int = 15