Alarms
Alarms are the execution layer of the system. They continuously evaluate signals against market data and trigger notifications when conditions are met.
This page explains how alarms work, how often they are evaluated, and how notifications are delivered.
What Is an Alarm?
An alarm binds together:
- A signal (expression logic)
- A symbol (market instrument)
- A notification channel
When the signal evaluates to true, the alarm is considered activated and a notification is sent.
Evaluation Model
Alarms are evaluated with a time-based, deterministic model designed to reduce noise and avoid duplicate alerts.
Evaluation Frequency
- Alarms are evaluated every minute
- Evaluation is performed over daily price data
- The effective timeframe is day-based, not intraday
This means alarms answer the question:
“Given today’s evolving price action, does this condition hold now?”
Price Data Model
The system combines two data sources:
- Historical daily candles
- Live price updates
Live prices are:
- Smoothed
- Incrementally merged into the current daily candle
- Evaluated as if they are part of today’s candle
This allows alarms to react during the day without switching to noisy intraday timeframes.
Warning
Live price data is delayed by approximately 15 minutes and is not real-time.
Activation Rules
Single Activation Per Day
Once an alarm is triggered:
- It will not re-trigger again on the same day
- Even if the condition remains true
- Or becomes false and true again
The alarm becomes eligible again on the next trading day.
This guarantees:
- No notification spam
- Clear, actionable alerts
- One signal → one decision per day
Notification Delivery
Telegram (Current)
At the moment, Telegram is the only supported notification channel.
When an alarm activates:
- A formatted Telegram message is sent immediately
- Includes signal name, symbol, and trigger context
Telegram was chosen first because it is:
- Real-time
- Reliable
- Low-latency
- Mobile-friendly
Additional notification channels may be added in the future.
Typical Alarm Flow
- Create a signal
- Attach the signal to a symbol as an alarm
- Connect a Telegram chat
- Alarm is evaluated every minute
- Condition becomes true
- Notification is sent
- Alarm stays silent until the next day
Design Philosophy
Alarms are intentionally:
- Predictable
- Noise-resistant
- Day-oriented
- Production-safe
They are built for real-world usage where clarity matters more than frequency.
