Guide 2026-05-05 · By Julie Derthing, Chief Staff Assistant at Seentio

How Seentio's Alert System Fires for Strategy Rebalances

When you activate a strategy on Seentio, you're wiring it into our automated rebalance system. This guide explains exactly how that system works — what triggers a rebalance, how the proposal gets generated, and how the alert reaches you.

The good news: you don't need to know any of this to use it. The system runs in the background. But if you're activating a strategy with real money on it, understanding the moving parts gives you confidence that nothing weird is happening behind the scenes.

What you'll learn

The end-to-end flow from "I just activated my Magic Formula strategy" through "I got an email asking me to approve a rebalance" — what each step is, what can go wrong, and how to debug if you're not getting alerts.

The high-level flow

1. Hourly timer fires (Mon-Fri, US market hours)
        ↓
2. Strategy-runner wakes up
        ↓
3. Loads list of all active strategies from our database
        ↓
4. For each strategy: is it due to rebalance based on cadence?
        ↓ yes
5. Backend computes target holdings (rank universe + factor scores)
        ↓
6. Fetch your current holdings via our brokerage connector
        ↓
7. Diff target vs current → proposed orders
        ↓
8. Save proposal to our database → notify the alert dispatcher
        ↓
9. Send email (or SMS / Slack / webhook) with review link
        ↓
10. You click → land on /strategies/{id}/pending/{rebalance_id}
        ↓
11. Click "Submit Selected" → orders go to your brokerage

Now let's break each step down.

Step 1: The hourly timer

An internal scheduler fires once per hour, Monday through Friday, between 14:00 and 21:00 UTC. That covers the full US trading day plus a buffer on each side. Each tick wakes up the strategy-runner.

We chose hourly — not every-minute — because: - Strategy cadences are weekly/monthly/quarterly, not intraday. An hour of latency on a monthly rebalance is irrelevant. - It keeps infrastructure overhead low. - It's predictable. You know an alert won't arrive at 4:17am if you're on the East Coast.

Step 2-4: Checking who's due

Each invocation, the strategy-runner reads the active-strategies index from our database — a single record listing every active strategy across all users with its cadence and last_rebalance timestamp.

For each entry, it checks: is it due?

Cadence Due if last_rebalance was more than...
Weekly 7 days ago
Monthly 30 days ago
Quarterly 90 days ago

If never rebalanced, it's due. Otherwise the runner compares timestamps and skips strategies that aren't due yet.

Step 5-6: The proposal computation

When a strategy is due, the runner asks the backend to trigger a rebalance for that strategy on behalf of its owner. The backend then does the real work:

  1. Load the strategy definition from our database.
  2. Compute target holdings:
  3. For ranking strategies (Magic Formula etc.): load today's snapshot, run the ranking against the spec, get top-N tickers + per-row weights.
  4. For legacy strategies: call the screener with your filters and rank by your single factor.
  5. Fetch your current holdings via our brokerage connector (the integration that links your linked brokerage account into Seentio).
  6. Diff target vs current — for each ticker, compute the buy/sell delta to bring your portfolio to target.
  7. Apply the position capmax_position_pct ensures no single holding exceeds your set ceiling.
  8. Skip tiny trades — if a delta is below min_trade_dollars, we drop it. This prevents 30 micro-orders from hitting your brokerage every month.

The result is a list of proposed orders, each with a side (BUY/SELL), ticker, dollar amount, and share count.

Step 7-8: Storage + dispatch

The proposal is saved to our database under your account, scoped to the specific strategy and rebalance. Then the strategy-runner notifies the alert dispatcher with the alert payload.

The dispatcher handles channel routing. It checks your tier (because some channels are tier-gated):

Then it dispatches via the right channel: - Email (sender: contact@app-seentio.com, your verified inbox) - SMS (toll-free origination number) - Slack via Slack's incoming webhook (set up at /account?tab=integrations) - Webhook via plain HTTP POST to your URL

Step 9: What you receive

The email looks something like this (SMS and Slack are condensed versions):

Subject: Strategy 'Greenblatt Magic Formula' — Rebalance Ready for Review

Hi,

Your strategy "Greenblatt Magic Formula" is ready to rebalance.

PROPOSED ORDERS (12):
  BUY  STOHF  ~ $1,200
  BUY  EQNR   ~ $1,180
  SELL ADBE   ~ $850
  BUY  PDD    ~ $1,150
  ... and 8 more

Total portfolio value: $35,420

You have full control. We will not execute anything until you log
in and click "Submit Selected". Review and approve here:

  https://app-seentio.com/strategies/strat_abc123/pending/2026-05-05T15-30-00Z

This proposal expires in 24 hours. If you take no action, the
strategy will recompute on the next cycle.

— Seentio

Step 10-11: You decide

Click the link, land on the pending-review page. You'll see:

Nothing executes without your click. This is intentional. Per ADR #1 in our generalized algorithm design, we don't auto-execute orders even if the user has explicitly authorized the strategy. Every trade requires a human in the loop.

Tips & common questions

What's next

Need more help? Visit our Chat page to ask Seentio's AI assistant, or reach out at contact@app-seentio.com.

Frequently Asked Questions

How often does Seentio check if my strategy is due to rebalance?

Every hour during US market hours (14:00-21:00 UTC, Monday through Friday). The check is done by an internal service called the strategy-runner. Each tick, it loads all active strategies and checks each one's cadence (weekly, monthly, quarterly) against its last_rebalance timestamp. If due, it generates a proposal.

What's actually in a rebalance proposal?

The proposal lists exactly which tickers to BUY and SELL, the dollar amounts, and the share counts at current prices. It also shows your current portfolio value and the target weight per position. You review the full list before any orders touch your brokerage.

What channels can I receive alerts on?

Email is available on Starter ($19.99/mo) and above. SMS adds at Retail ($69.99/mo). Slack and webhook add at Professional ($199.99/mo). Each channel needs to be set up at /account — for SMS you verify your phone number; for Slack you add the Seentio app to your workspace; for webhook you provide a URL we POST to.

What happens if I don't respond to a rebalance alert?

Nothing executes. The proposal sits in your /strategies/{id}/pending page until the next scheduled rebalance, at which point it's discarded and a fresh proposal is generated at the new prices. We never auto-execute orders — every trade requires a human click.

Can I trigger a rebalance manually instead of waiting for the schedule?

Yes. Use the rebalance_strategy MCP tool or click the 'Rebalance Now' button on your strategy detail page. This bypasses the cadence check and generates a proposal immediately. Useful when you want to lock in current prices or when you've just changed your strategy spec via update_strategy.

Related Research

Track these stocks in real time

See the data behind the research. Start with Seentio's free tier.

Get started free