Skip to content
← Nova by Horizon

Changelog

New features, fixes, and improvements. We ship regularly and keep this page updated.

April 2026 — Production readiness2026-04-07

Startup validation, live health monitoring, and unattended operation

  • Nova now runs a full preflight check on startup: broker connectivity, account status, database integrity, config validation, and session detection are all verified before any order can be placed.
  • If any critical check fails the engine does not start and logs the exact failure reason — no more silent bad-state startups.
  • Added a watchdog process that continuously monitors engine health, detects market session transitions in real time, and adjusts trading behavior automatically without requiring a restart.
  • Session transitions (market open, close, pre-market start) are now logged with timing and policy changes applied, giving full auditability over when the bot became active or idle.
  • Nova can now run completely unattended: it idles safely during closed sessions, activates automatically when the market opens, and self-recovers from transient loop failures.
  • New status command available to operators that prints a full real-time snapshot of active mode, risk limits, session, and engine health.

Fixes

  • Engine could silently enter a bad state during closed sessions without any indicator in logs.
  • Session multipliers were not re-evaluated on transition — bot could carry stale risk settings across sessions.
April 2026 — Intelligence & regime awareness2026-04-04

Market regime detection and adaptive ML confidence gating

  • Nova now detects the current market regime (trending up, trending down, high volatility, or uncertain) in real time and adjusts its behavior accordingly.
  • In high-volatility or downtrending market conditions, aggressive long bias is automatically reduced; the bot becomes more selective and conservative without manual intervention.
  • ML confidence thresholds are now dynamically adjusted per regime — noisy market conditions require higher signal confidence before a trade is approved.
  • When regime is uncertain or data is insufficient, the system defaults to reduced sizing rather than assuming a benign environment.
  • Short-side trades are now properly unlocked under supported account configurations and eligible market conditions — previously shorts could be incorrectly suppressed.

Fixes

  • ML model could assign high confidence scores during sharp market moves, causing overly aggressive entries at exactly the wrong moment.
  • Short-side signals were not being passed through correctly in all conditions; now resolved.
April 2026 — Trading profiles2026-04-01

SAFE / BALANCED / AGGRESSIVE trading modes with instant switching

  • Introduced a unified trading profile system: choose between SAFE, BALANCED, and AGGRESSIVE modes to instantly reconfigure how Nova approaches risk.
  • SAFE mode prioritizes capital preservation — lower position sizes, stricter confidence requirements, fewer concurrent trades, and tighter daily loss limits.
  • BALANCED mode is the recommended default for most users — full access to strategies with measured risk controls.
  • AGGRESSIVE mode increases position sizing and concurrency ceilings for experienced users who want maximum throughput.
  • All risk limits, session multipliers, minimum confidence thresholds, and concurrent position caps are now driven by the selected profile — no more scattered constants to tune manually.
  • Market context (current regime) and broker capability constraints are layered on top of the base profile automatically — a profile setting is never applied blindly without validating it against real conditions.
  • Modes can be switched at runtime without restarting the engine.
March 2026 — Emergency risk hardening2026-03-26

Circuit breakers, daily stop, and re-entry protection

  • Global daily loss limit enforced across all trading activity: if the account drawdown reaches the configured threshold, all new order placement is immediately blocked for the rest of the session.
  • Consecutive loss circuit breaker: three back-to-back losing trades trigger an automatic cooldown period before new entries are allowed.
  • Per-symbol re-entry block: after closing a position at a loss, that same symbol is locked out for a cooling-off period to prevent revenge trading.
  • Market open protection: during the first 30 minutes after market open, maximum concurrent positions and position sizes are automatically reduced to handle the elevated volatility of the open.
  • Minimum price floor enforced: very low-priced stocks are excluded from trading to avoid thin-market execution risk.
  • All protective checks are evaluated before any order is placed — no check can be bypassed mid-batch.

Fixes

  • Orders could be placed after a pause or stop flag was set, if they were already queued when the flag triggered.
  • Circuit breaker logic was evaluated after the order batch rather than before, allowing a violating trade to go through.
March 2026 — Risk model hardening2026-03-22

Price-tiered position sizing and unified risk controls

  • Position sizing is now tiered by stock price to prevent oversized exposure on low-priced names: higher-priced stocks receive proportionally larger allocations, low-priced names are capped tightly.
  • Maximum loss per trade is now enforced as a percentage of account size — absolute dollar stop levels are computed from this rather than hardcoded.
  • Daily loss limit (previously per-phase) is now enforced globally across all engines and strategies: no single component can exceed its share of the daily risk budget.
  • Session multipliers applied consistently: pre-market positions are sized at a fraction of normal; the first 30 minutes after open use a separate reduced multiplier; regular session gets full allocation.
  • Maximum concurrent positions capped by session to prevent over-concentration during high-risk periods.

Fixes

  • Stock engine was not reading the same risk multipliers as the rest of the system, causing inconsistent position sizing.
  • Risk configuration was scattered across multiple modules with no single source of truth; now consolidated.
March 2026 — Stock-first policy2026-03-17

US equities as primary asset class with full session awareness

  • Nova is now a stock-first trading platform. US equities are the primary asset class; all other markets are supplementary and subject to explicit policy controls.
  • Full US market session awareness added: the bot knows when pre-market, regular hours, after-hours, and closed sessions are active and behaves differently in each.
  • During regular market hours, stock scanning intensity and signal throughput are at their highest. The system is most active and most aggressive during this window.
  • Pre-market and after-hours sessions are treated as lower-intensity windows: position sizes are reduced, confidence requirements are higher, and fewer concurrent trades are allowed.
  • When the market is fully closed, no stock trading occurs. The engine idles cleanly and waits for the next session transition.
  • All signals are tagged with asset class and session context so every trade decision has a full audit trail of what session and policy conditions it was approved under.
  • Crypto supplementary trading follows configurable policy: it can be enabled or disabled independently without affecting stock trading behavior.

Fixes

  • The trading engine had no awareness of US market hours, causing identical behavior at 2 AM and 11 AM.
  • Session classification for mixed-asset portfolios could produce incorrect labels; now asset class and session are evaluated independently.
March 2026 — Reliability & data integrity2026-03-10

Stale data fix, signal webhook hardening, and public changelog

  • Fixed persistent stale data during auto-trading: cross-exchange and on-chain caches now enforce a maximum content age; over-age data is no longer used for scoring.
  • Signal webhook idempotency hardened: events are claimed before execution so a failed DB write cannot cause the same signal to be executed twice on retry.
  • Dashboard and API now show consistent cross-exchange feed staleness when cache content is older than 5 minutes.
  • New public changelog page (this page) so customers can see what's new and what's fixed.

Fixes

  • Cross-exchange cache could serve indefinitely old data when the market container was down (e.g. 70+ hours).
  • On-chain sentiment cache used the same pattern; now fixed with a 10-minute max content age.
  • Webhook: if marking an event as processed failed after execution, a retry could double-execute the same signal.
v1.2.6 — Signals Intelligence Layer2026-03-10

Canonical signals, validation, and Nova delivery

  • Canonical signal schema and validation: all signals are validated and scored before publication; Nova only receives validated canonical signals via webhook.
  • New Signals tab in the dashboard: list, filters, detail drawer, and plan-gated Nova automation visibility.
  • Feature entitlements: signals.read, nova.read, strategies.read, and more; enforced by plan (Free, Starter, Pro, Elite).
  • Bot connection: toggle automation signals to receive published canonical signals on your Nova bot.
v5.5.x — Nova bot reliability2026-03-08

ML pipeline fixes, production hardening

  • ML system overhaul: ensemble feature names, training data aggregation, Bayesian optimizer auto-apply.
  • Ghost position infinite loop fixed; stop-loss state leak fixed; login lockout and provisioning security hardened.
  • Strategy count in marketing copy corrected to 9 active strategies; disclaimer bar updated for live trading.
  • Deploy script: pre-deploy backup, health checks, auto-rollback on failure.
v1.2.5 — Security & reliability2026-03-07

Bot key encryption, SSRF, and scheduler safety

  • Bot API keys are now encrypted at rest; plaintext cleared on write.
  • Managed-host bot URLs validated through the same SSRF guardrails as self-hosted, with allowlist support.
  • Reminder and cleanup schedulers run behind Postgres advisory locks to prevent duplicate execution across replicas.

We ship continuously. This page is updated as notable changes land in production.