Beta Access RequiredPrice Change Events are currently in beta. To request early access, please contact our team at hello@dialect.to.
Overview
Dialect offers two types of price change detection:- Market-Based Price Changes: Track price movements over sliding time windows (e.g., “SOL is up 10% in 24h”)
- Trade-Based Price Changes: Personalized alerts relative to users’ actual trade prices (e.g., “SOL is up 50% since you bought”)
Market-Based Price Changes
Market-Based Price Changes are triggered by significant price movements of a token over sliding time windows using percentage change thresholds.How It Works
Dialect continuously monitors token prices and analyzes percentage changes over sliding time windows. When a token’s price change exceeds the configured threshold within a time window, a webhook is triggered with detailed information about the price movement.Sliding Window Analysis
Price changes are calculated using a sliding window approach:- Window Duration: Configurable time periods (1h, 3h, 6h, 12h, 24h, 7d)
- Threshold: Percentage change required to trigger an event
- Direction: Both upward and downward movements are detected
Supported Time Windows
| Window | Beta Status | Use Case |
|---|---|---|
| 1h | Future | Momentum detection, immediate market shifts |
| 3h | Available | Short-term trend confirmation |
| 6h | Available | Intraday trend identification |
| 12h | Available | Half-day trend analysis |
| 24h | Available | Daily price movement tracking |
| 7d | Planned | Weekly trend detection |
Market-Based Webhook Payload
Market-Based Field Details
Event Metadata
- event:
token_price_change - timestamp: ISO 8601 UTC timestamp when event was generated
Token Information
- symbol: Token ticker symbol
- address: Token mint address on Solana
Trigger Details
- type:
sliding_window_percentage_change - window: Sliding window configuration
- duration: Time window used for the calculation (e.g.,
1h,3h,6h,12h,24h,7d)
- duration: Time window used for the calculation (e.g.,
- threshold: The percentage change that must be crossed within the window to trigger the event
Change Information
- direction:
upfor price increases,downfor decreases - from: Price and timestamp at the start of the window
- to: Price and timestamp at the end of the window
- absolute: Raw price difference (
to.value - from.value) - percentage: Percentage change over the window (
(to.value - from.value) / from.value * 100)
Trade-Based Price Changes (Last Trade)
Trade-Based Price Changes are triggered by significant price movements of a token relative to a user’s actual trading history. They offer a more personalized approach to price change alerts, providing alerts based on a user’s buy/sell behavior rather than market-wide price movements.How It Works
Please note that during the beta, we only support
buy transactions that happened after the wallet was registered.- Registration: Wallets must be explicitly registered to receive last trade events
- Trade Detection: System monitors all swap transactions for the wallet
- Anchor Points: Last buy price becomes the baseline for percentage calculations
- Threshold Monitoring: Price changes are evaluated against market cap-specific thresholds
- Event Triggering: Alerts fire when thresholds are crossed in either direction
Registration Process
Wallets must be explicitly registered to receive last trade events. During beta:- Contact us at hello@dialect.to to register your wallets
- Projects provide wallet lists to Dialect for monitoring
- No backfill of historical trades (monitoring starts from registration)
Trade-Based Threshold System
Thresholds are determined based on token market capitalization at the time of initial tracking:Standard Position Thresholds
| Market Cap Range | Uptrend Triggers | Downtrend Triggers |
|---|---|---|
| Large Cap (>$1B) | +5%, +10%, then every +10% | -5%, -10%, then every -10% |
| Mid Cap (500M) | +20%, +50%, then 2x, 3x, 4x… | -20%, -30%, then every -10% until -90% |
| Small Cap (<$50M) | +50%, then 2x, 3x, 4x… | -20%, -30%, then every -10% until -90% |
| Micro Cap (<$1M) | +50%, 2x, then every 1x | -30%, -50%, -70%, -90% |
Post-Exit Thresholds
After a full sell (100% position exit), different thresholds apply:| Market Cap Range | Uptrend Trigger | Downtrend Trigger |
|---|---|---|
| Large Cap (>$1B) | +30% | -30% |
| Mid Cap (500M) | 2x | -50% |
| Small Cap (<$50M) | 3x | -50% |
| Micro Cap (<$1M) | 5x | -70% |
Event Triggering Rules
Threshold Crossing
- Events trigger when price fully crosses a threshold
- Same threshold cannot trigger twice consecutively
- Price must cross another threshold before original can trigger again
Round Trip Detection
- System tracks when price returns to previous thresholds
- Generates contextual alerts like “TOKEN back to +50% from 2x”
- Helps users understand retracement patterns
Multiple Threshold Handling
- If multiple thresholds crossed in 5-minute window, only most significant triggers
- Prioritizes largest movement (highest for uptrend, lowest for downtrend)
Trade-Based Webhook Payload
Trade-Based Field Descriptions
Event Metadata
- event:
token_last_trade_price_change - timestamp: ISO 8601 UTC timestamp when event was generated
- walletAddress: The wallet being monitored for this event
Token Information
- symbol: Token ticker symbol
- address: Token mint address on Solana
Trigger Details
- type:
trade_percentage_change - trade: The anchor trade (last buy or sell) used for calculations
- type:
buyorsell - timestamp: When the trade occurred
- transactionId: Blockchain transaction signature
- balance: Token balance changes
- before: Balance before trade
- after: Balance after trade
- change: Net change (positive for buys, negative for sells)
- type:
- threshold: The percentage threshold that was crossed
Change Information
- triggerTrade: Price change from the anchor trade
- lastTrade: Price change from most recent trade
- lastPeak: Price change from previous alert threshold (optional)
- Each contains:
- direction:
upordown - from/to: Start and end prices with timestamps
- absolute: USD price difference
- percentage: Percentage change
- direction:
- Each contains:
Edge Cases
Partial Sells
- Last buy price remains the anchor
- Partial sells don’t reset calculation baseline
- Allows tracking performance of remaining position
- If a subsequent buy occurs after a partial sell, that new buy immediately replaces the anchor; thresholds reset from the new buy price
- When multiple trades happen within the same 5‑minute time window,
lastTradealways refers to the chronologically latest trade
SOL Handling
- Trade‑based SOL price changes are muted in MVP
- SOL is treated as an investment vehicle rather than a tracked asset for trade‑based alerts
- Market‑based SOL price change alerts remain available and are unaffected
Multiple Buys (DCA)
- Only most recent buy price is used as anchor
- No averaging across multiple purchases
- We do not average across buys. Any new buy supersedes the prior anchor and restarts threshold tracking