Skip to main content

Telegram Bot

TRADEOS.tech ships a first-class Telegram integration that gives operators a real-time trading assistant in their pocket. The bot has two modes: Observer (read-only analysis and alerts) and Trader (can propose trades with explicit confirmation). Both modes understand natural language.

This is not a notification webhook. It is a full two-way interface to the running system.


What you can do

  • Ask the system questions in plain English — "What is my current drawdown?" or "Explain the last circuit breaker trip"
  • Get automatic push alerts when a high-conviction signal fires
  • Propose a trade via natural language in Trader mode, review it, and confirm with a button tap
  • Switch analytical perspectives with the persona system (Risk Manager, Performance Analyst, Regime Expert, Quant Coach)
  • Check live system status including kill switch state, open positions, and pending intents
  • Cancel a pending trade before it executes — just tap No or send /cancel

Modes

Observer mode (default)

Observer mode is read-only. The assistant can answer questions, explain what the system is doing, analyze current risk, summarize recent signals, and discuss market regime. It cannot propose or execute trades.

Switch to Observer: /observer

Trader mode

Trader mode enables trade proposals. When you describe a trade in natural language (e.g., "Buy 0.01 BTC at market"), the assistant parses the intent, builds a trade proposal, and sends you a preview with Yes / No buttons. No trade executes until you tap Yes.

The confirmation has a 60-second expiry. If you do not confirm within 60 seconds, the proposal is automatically discarded. All proposals and confirmations are recorded in the audit ledger.

Switch to Trader: /trader

warning

Trader mode routes through the full feasibility pipeline. The system may still reject or resize a trade based on active risk limits, even after you confirm. The confirmation means you are authorizing the attempt — not guaranteeing execution.


Observer personas

When in Observer mode, you can switch the assistant's analytical perspective with /persona:

PersonaFocus
Observer (default)Neutral, balanced analysis
Risk ManagerRisk exposure, drawdown, position limits
Performance AnalystWin rates, IC, calibration, P&L attribution
Regime ExpertMarket regime classification, regime transitions
Quant CoachEducational — explains concepts and system mechanics

Change persona: /persona risk or /persona quant (or tap the keyboard shown by /persona)


Smart push alerts

The bot monitors the signal pipeline and sends automatic alerts to your chat when a high-conviction opportunity is detected. You do not need to ask — it will message you.

Alerts are scored before sending. Only signals that clear a quality threshold based on confidence, expected edge, strategy tier, and live win rate are pushed. A noisy, low-confidence setup that fires 50 times a day will not flood your chat.

Alert messages include:

  • Signal direction and instrument
  • Confidence level and edge quality tier
  • Strategy backing (tier badge, hero signal indicator, R:R ratio)
  • Live win rate and recent streak (when available)
  • A plain-English "Bottom Line" summary

System events (circuit breaker trips, kill switch activations, manual operator alerts) are forwarded immediately as plain-text notifications, bypassing the quality filter.


Commands reference

CommandDescription
/startShow welcome message and current mode
/statusLive system status: kill switch, open positions, pending intents
/observerSwitch to Observer mode (read-only)
/traderSwitch to Trader mode (trade proposals enabled)
/persona [name]Change Observer persona (or show selection keyboard)
/cancelCancel a pending trade confirmation
/helpShow command reference

You can also send any free-form text message to interact with the assistant directly.


Security

The bot enforces a strict allowlist of Telegram chat IDs. Messages from any chat not in the allowlist are silently ignored — no error, no response. This means the bot cannot be discovered or used by anyone who is not explicitly authorized, even if they know the bot token.

Rate limiting is enforced per chat: a maximum of 15 natural language messages per minute. Command responses are not rate-limited.


Setup

The bot requires three environment variables:

VariableDescription
TELEGRAM_BOT_TOKENBot token from BotFather
TELEGRAM_ALLOWED_CHAT_IDSComma-separated list of allowed chat IDs
REDIS_URLRedis connection string (same as all other services)

Configuration is hot-reloadable. If the TELEGRAM_ALLOWED_CHAT_IDS list changes at runtime (e.g., via the system config store), the bot picks up the change within 30 seconds without a restart. Bot token changes require a restart.

To find your Telegram chat ID, send a message to the bot and check the logs, or use a chat ID lookup bot.


Relationship to the dashboard

The Telegram bot and the web dashboard are complementary interfaces to the same system. The dashboard is for deep analysis, historical review, and full configuration. The Telegram bot is for real-time monitoring and quick decisions when you are away from a screen.

The bot does not expose configuration controls. Parameter changes, profile switches, and kill switch operations are reserved for the dashboard to keep the mobile interface focused on awareness and simple trade actions.