CREATE TABLE IF NOT EXISTS signals (id INT AUTO_INCREMENT PRIMARY KEY, symbol VARCHAR(20), side VARCHAR(10), entry DECIMAL(20,8), stop DECIMAL(20,8), reason TEXT, invalidation TEXT, news_warning VARCHAR(255), status VARCHAR(20), received_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP);
CREATE TABLE IF NOT EXISTS trades (id INT AUTO_INCREMENT PRIMARY KEY, signal_id INT, symbol VARCHAR(20), side VARCHAR(10), entry_price DECIMAL(20,8), quantity DECIMAL(20,8), leverage INT, stop_loss DECIMAL(20,8), current_stop DECIMAL(20,8), pnl DECIMAL(20,8) DEFAULT 0, status VARCHAR(20) DEFAULT 'open', order_status VARCHAR(20) DEFAULT 'pending', exchange_order_id VARCHAR(50), limit_expires_at DATETIME, is_paper TINYINT DEFAULT 0, opened_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, closed_at DATETIME NULL);
CREATE TABLE IF NOT EXISTS daily_stats (date DATE PRIMARY KEY, total_pnl DECIMAL(20,8) DEFAULT 0, trades_count INT DEFAULT 0);
CREATE TABLE IF NOT EXISTS activity_log (id INT AUTO_INCREMENT PRIMARY KEY, message TEXT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP);
