SignalDeck Logo SignalDeck Changelog
Back to Home

Release History

Track the evolution of the Forensic Performance Engine.

v1.0.12-Beta

LATEST Feb 12, 2026 2:30 PM

Major Features

  • New "Post-Trade" Experience - Completely overhauled the trade close modal. Now features a soft-styled chart with entry/exit points, clear P&L positioning, visible broker fees, and a new execution rating system (Excellent/Good/Weak).
  • Mobile Polish - Squashed 9 layout bugs for mobile/tablet users. Fixed filter bar, chat chips, and chart sizing for smaller screens.

Security & Stability

  • Hardening - Centralized sanitization to block CSV injection and 12 new types of "prompt injection" attacks (DAN mode, jailbreaks, [INST] tokens).
  • Auth Audit - Enforced strict ownership checks on every API endpoint to prevent cross-user data leaks.

Performance & Fixes

  • Dashboard Speed - Refactored the stats service and optimized SQL to handle large datasets without choking.
  • MySQL Fix - Patched a production-specific crash regarding DISTINCT queries.
  • Batch Updates - Failed trades in a batch update now report specific errors instead of silently failing.

What's New in Detail

  • > Post-trade modal: added chart, realized P&L, fees, and rating input
  • > Security: added checks for [INST] tokens and XML role tags
  • > API: Stats.py refactored from 711 lines to 298 lines
  • > API: Added 41 new security tests (CSV + Prompt Injection)
  • > UI: Fixed text sizing consistency in trade details modal

v1.0.11-Beta

Feb 10, 2026 7:56 PM

Major Features

  • Polygon Indicator Tracking - Capture exact market conditions at entry/exit with SMA, EMA, RSI, and MACD indicators.
  • Search by Trade ID - Find trades by ID or symbol in one search box.
  • Fixed Performance Widgets - Tag and Signal widgets now show ALL entries with proper horizontal axes.

Security & Performance

  • Chat endpoint hardened against prompt injection.
  • Bounded context limits (30-50 trades max).
  • Optimized DOM caching in pagination (11 fewer lookups per update).
  • Auto-timestamps on trade edits (no more manual updates).

UX Improvements

  • CLOSED status badge in post-close modal.
  • Modal tabs scroll to top on switch.
  • Better chat error handling when API fails.
  • Distance to target price shown in post-close summary.
  • Entry/exit indicator data visible in all trade modals.

v1.0.10-Beta

Feb 10, 2026 8:36 AM

Major Features

Trade Efficiency Analytics
  • New Trade Efficiency scatter plot visualizing MAE vs MFE in R-multiples.
  • Click any point to drill down into trade details.
  • 45-degree breakeven efficiency line helps identify optimal exits.
  • Automatic MFE/MAE calculation when closing trades (no more manual backfill!).
Performance Insights Dashboard
  • Performance by Signal widget - track which signals are delivering results.
  • Performance by Tag reorganized into cleaner 2-column layout.
  • Horizontal bar charts with green/red coloring for instant assessment.
  • Sorted by total R-multiples to highlight best and worst performers.
Execution Quality Engine
  • Round-trip slippage tracking - see total friction from entry to exit.
  • Entry/Exit slippage visualization with 4 separate widgets.
  • Trade Close Summary Modal - instant performance feedback on closure.
  • Side-aware calculations (Long vs Short) for accurate metrics.
  • Fixed "Risk Leakage" using weighted sums (corrected 9.85% → ~1.5%).
  • Price Improvement and Limit Penetration tracking.
  • Polygon.io integration for automatic OHLC data fetching.
CSV Export Enhancements
  • Added 16 missing fields - execution metrics, order details, fees, MFE/MAE.

Bug Fixes

  • Resolved reports bug related to grade logic.
  • Fixed frontend graph rendering for entry slippage.
  • Added null safety checks to prevent dashboard crashes.

UI/UX

  • Side-aware conditional formatting (red for unfavorable fills).
  • "Intended Stop" capture in Close Trade modal.
  • Enhanced Trade Details modal with Execution Metrics section.

v1.0.9-Beta

Feb 3, 2026 9:10 PM

This release hardens platform security by enforcing strict CORS policies, sanitizing inputs against injection attacks, and validating financial data integrity. Simultaneously, it improves system stability and performance through new database connection pooling, optimized dashboard indexes, and a migration to native date types.

Security Hardening

  • Critical Patches - Fixed CORS credential hijacking, CSV/SQL injection, and DoS vectors.
  • Input Validation - Enforced strict limits on financial data (no negative prices) and timestamps (no future dates).
  • Internal Access - Whitelisted internal scanners and audit workers from rate limiting to prevent task failures.

Infrastructure & Speed

  • Database Stability - Implemented QueuePool (20 persistent connections) to eliminate "Too Many Connections" crashes.
  • Dashboard Optimization - Added 5 composite indexes for instant filtering and fixed N+1 query bottlenecks.
  • Memory Safety - Capped analytics to the recent 5,000 trades to prevent OOM errors.

Bug Fixes & Frontend

  • Data Integrity - Migrated to native SQL Dates and timezone-aware storage to resolve sorting and DST bugs.
  • UI Stability - Fixed Chart.js memory leaks and resolved race conditions in the Trade Detail modal.
  • Compatibility - Updated local automation scripts to respect new API rate limits.

v1.0.8-Beta

Jan 30, 2026 8:23 PM

We’ve pushed a significant update focused on real-time performance, directional trading support, and deep-risk analytics. Here is what’s new:

Major Features

  • Real-Time Dashboard (WebSockets) - We have replaced the old 5-minute polling system with a WebSocket broadcast. Dashboard updates are now instant - no more waiting or manual refreshes.
  • Full Long/Short Support - You can now filter the entire dashboard, trade history, and discipline charts by "Side" (Long vs. Short). P&L math and Tag Performance now accurately reflect directional filters.
  • Monte Carlo Risk Metric - Added "Pessimistic Estimated Max Drawdown" to the dashboard. Idea taken from r/algotrading conversation. This runs 10,000 simulations of your trade history to estimate your 95th percentile tail risk. Includes an "Early Warning" pulse if your current drawdown exceeds the estimate.

Quality of Life & UI

  • Scanner Bulk Copy - Added a "Copy All" button to scanner run details. This copies tickers in bracketed format [ABC,XYZ] for instant import into TradingView watchlists or LLM logic.
  • Journaling Layout - The Journal Entry field in the New Trade form is now a full-width row, giving you much more space to write.
  • Manual Stop Utility - Added a copy button next to the Manual Override field for quick external use.
  • Table List Cleanup - Cleaned up multiple tags breaking the table layout.
  • "Unsaved Changes" Fix - Fixed a race condition where saving a trade (Ctrl+Enter) would sometimes falsely trigger the "Unsaved Changes" warning upon closing the modal.

Technical & Stability

  • Database Scalability - Upgraded note storage to LONGTEXT to prevent crashes when trade notes exceed 64kb.
  • Audit Performance - Optimized the Trade Audit API to prevent database lag and added batch_id tracking for better logging.

v1.0.7-Beta

Jan 27, 2026 1:43 PM

This update transitions SignalDeck to a professional-grade execution platform with full support for short positions and significant workflow improvements.

Full Short Selling Support

  • Directional Math - Short trades now calculate profit correctly (price drops = gains). We’ve overhauled the math engine across the API and Dashboard.
  • Trade Side Tracking - All trades now track position "Side" (LONG/SHORT).

5-State Trade Status Display

  • We’ve implemented descriptive status badges to differentiate how trades are exited - OPEN | CLOSED | STOPPED OUT | NEVER FILLED | CANCELLED

Automated Risk Management

  • 1.5R Break-Even - The 1.5R target is now auto-calculated on trade creation. It remains anchored to your initial risk, giving you a fixed target regardless of how you manage the stop later.

Productivity & UX Polish

  • Hotkeys - Press E to enter Edit Mode in the modal; Ctrl + Enter to Save.
  • Search Fixed - Eliminated the "Search Jump" bug; typing and editing ticker symbols is now seamless.
  • Robust Filters - Your saved filters are now verified against the database on startup to prevent "empty screen" bugs from deleted strategies or tags.
  • Precision Math - Fixed floating-point "drift" errors (e.g., no more $0.300000000004).
  • Smart Alerts - "Unsaved Changes" alerts now only trigger when you actually have unsaved work in the journal or post-mortem.

Mobile & Sync

  • Mobile Menu - Overhauled with faster, state-driven logic for a smoother experience.
  • Audit Sync - Manual data refreshes now immediately update the "Market Data" timer.

v1.0.6-Beta

Jan 22, 2026 5:03 PM

This release is a massive "under-the-hood" overhaul. While we’ve added some great new features, the primary focus of v1.0.6 was hardening security, improving app stability, and preventing data loss.

New Features & Enhancements

  • Strategy Deployment Tracking - Added a "Date Deployed" column to the table and a date picker to the Strategy Details modal.
  • "Dirty Form" Protection - The app now detects unsaved changes in the Trade Details modal and prevents accidental data loss if you try to close without saving.
  • Clipboard Data - Copying execution data now includes the Original Stop for better external journaling.
  • Connectivity Alerts - Added offline/online listeners to instantly warn you if your internet connection drops.

Security & AI

  • AI Hardening - Patched a vulnerability regarding Indirect Prompt Injection. The AI now strictly separates user notes from system instructions.
  • XSS & CSV Protection - Fixed a cross-site scripting (XSS) vector in the Trades Table and added sanitization to CSV exports to prevent Excel Formula Injection.

Stability & Core Refactors

  • "Zombie Chart" Fix - Implemented a "Clean-Slate" policy for charts. Switching views now synchronously destroys old charts, fixing visual glitches where old data would persist.
  • Math Fixes - Resolved the "Division by Zero" crash ("Infinite R") when Entry Price equals Stop Price.
  • Performance - Switched the UI engine to a Lazy Proxy selector. This reduces memory leaks and ensures the app stays fast even after long sessions.
  • CSV Exports - Fixed the pagination bug - exports now correctly fetch up to 10,000 records based on your current filters.

Bug Fixes

  • Fixed background tab sync drift.
  • Fixed "null" strings appearing in price columns.
  • Fixed race conditions when searching for parent trades.
  • Empty fee inputs now save as null rather than 0.0 to keep average fee stats accurate.

v1.0.5-Beta

Jan 16, 2026 8:20 PM

This update resolves critical dashboard bugs and adds superuser capabilities, ensuring accurate stats across all strategies and seamless screen navigation.

Bug Fixes

  • Dashboard Stats Accuracy - Fixed bug where dashboard showed zero trades for certain strategies despite trades existing in the database. Stats now correctly handle JOIN operations with tags/signals.
  • Superuser Support - Superusers can now view dashboard statistics for all users' strategies, matching the behavior of the trades list.
  • Screen Switching - Resolved issue where navigating between Dashboard and Trades History showed stale data with incorrect filters.
  • Empty State Logic - Fixed false "No Trades" screen appearing when data exists. Added fallback verification and warning messages.

Improvements

  • Time Display - Market Data timestamp now shows readable format (e.g., "14h 00m ago" instead of "840m ago").
  • Error Handling - Added comprehensive logging and graceful degradation when backend inconsistencies occur.
  • Data Verification - Dashboard now cross-checks stats with trades list to prevent incorrect empty states.

Technical

  • Fixed SQLAlchemy subquery scope issues preventing discipline stats calculation.
  • Improved query performance by eliminating duplicate row generation from JOINs.
  • Enhanced frontend-backend discrepancy detection with automatic recovery.

v1.0.4-Beta

Jan 16, 2026 7:37 AM

This update focuses on System Reliability and Customization, featuring strategy protection, health monitoring, and a cleaner UI.

New Features

  • Dynamic Audit Protection - New toggle in Strategy settings. When enabled, the Audit Worker updates prices but never auto-closes trades.
  • API Health Monitor - Added a persistent offline banner. The app auto-recovers and syncs data once the server returns online.
  • Mini-Pagination - Faster navigation via a compact bar added to the Trade History header.

Improvements & Fixes

  • No Loading Flash - New sequence removes the "No Trades Found" flicker during initial data load.
  • Filter Persistence - Fixed bug where refreshing the browser ignored active filter states.
  • ID Shortcuts - Added hover-to-copy buttons for Trade and Run IDs in modals.
  • UI & Labeling - Removed deprecated header buttons and renamed status to "Market Data".
  • Backend Stability - Fixed route nesting and updated Strategy API for dynamic updates.

v1.0.3-Beta

Jan 14, 2026 9:52 AM

This update is all about Speed and User Experience. We've significantly optimized how the application loads data and added quality-of-life features for power users.

New Features

  • Smart Data Loading - We've optimized the initialization process. The app now intelligently checks your profile first - if you have no trade history, we skip the heavy data fetching entirely. This means instant load times for new users and less bandwidth usage for everyone.
  • Improved "Zero Data" Experience - No more staring at broken charts or empty grids! Added dedicated Empty State screens to the Dashboard and Trade History. If you have no trades (or your filters hide them all), the app now guides you on how to get started.
  • Trade Detail Hotkeys - Power users rejoice! When viewing a Trade Details popup, you can now use keyboard shortcuts to navigate tabs - 1 → Overview, 2 → Journal / Notes, 3 → Post Mortem.

Improvements & Fixes

  • Auto-Sync Fixed - Fixed a bug where the app was "too polite" and refused to auto-refresh market data because it incorrectly thought a popup was open. Background syncing is now much more reliable.
  • UI Polish - Fixed the "New Data Available" warning banner (it was missing its yellow background color). Removed excess padding on the Trade Details popup tabs for a cleaner look. Increased the default size of the "New Note" text area for easier typing.
  • Scroll Logic - Fixed an issue where logging in would sometimes leave you scrolled halfway down the page. You now start at the top, every time.

v1.0.2-Beta

Jan 13, 2026 9:51 AM

We've just deployed a significant update focused on data integrity and automation. No more guessing if your dashboard is up to date!

New Features

  • Live Market Data Sync - The dashboard now intelligently detects when our backend audit worker completes a scan. When new price data or stop-loss hits are found, your dashboard will automatically refresh in the background without you needing to reload the page.
  • Data Freshness Indicator - Added a "Last Updated" status light in the Trade History header. Green: Data is fresh (< 1 hour). Yellow: Data is aging (< 4 hours). Red: Data is stale (> 4 hours).
  • Broker Fee Tracking - You can now record Buy Fees and Sell Fees (Commissions) for every trade. Added fields to the "New Trade" and "Close Trade" popups. Added a "Broker Fees" section to the Trade Details view (editable).

Improvements & Fixes

  • Audit Logging - Backend now persists every scanner run to the database, ensuring a permanent audit trail of price updates and automated stops.

v1.0.1-Beta

Jan 12, 2026 10:41 AM

This patch focuses on cross-platform consistency, brand unification, and critical bug fixes for our S3 deployment.

UI & Branding

  • The Great Cat Migration - We have officially retired the generic robot emojis. The SignalDeck Cat Logo is now unified across the Favicon, AI Chat Analyst, Post-Mortem suite, and Login screen.
  • Enhanced Chat UI - Increased the default width of the AI Analyst window. This provides significantly better readability for long technical trade audits and mentor critiques.

System Fixes

  • HTTP Copy Support - Fixed a critical bug where the "Copy Ticker" and "Copy Journal" buttons failed when accessed via the S3 HTTP website endpoint.
  • Technical - Implemented a legacy fallback for navigator.clipboard to ensure copy logic works perfectly in "insecure" (HTTP) browser contexts.