history
Tracks and analyzes trade history with performance metrics from Polymarket and Kalshi, enabling detailed insights and reporting.
Install this skill
Security score
The history skill was audited on Feb 19, 2026 and we found 27 security issues across 2 threat categories. Review the findings below before installing.
Categories Tested
Security Issues
Template literal with variable interpolation in command context
| 104 | console.log(`Fetched ${trades.length} trades`); |
Template literal with variable interpolation in command context
| 134 | console.log(`${trade.timestamp}: ${trade.side} ${trade.market}`); |
Template literal with variable interpolation in command context
| 135 | console.log(` Size: $${trade.size}`); |
Template literal with variable interpolation in command context
| 136 | console.log(` Price: ${trade.price}`); |
Template literal with variable interpolation in command context
| 137 | console.log(` P&L: $${trade.pnl?.toFixed(2) || 'open'}`); |
Template literal with variable interpolation in command context
| 151 | console.log(`Total trades: ${stats.totalTrades}`); |
Template literal with variable interpolation in command context
| 152 | console.log(`Winning trades: ${stats.winningTrades}`); |
Template literal with variable interpolation in command context
| 153 | console.log(`Losing trades: ${stats.losingTrades}`); |
Template literal with variable interpolation in command context
| 154 | console.log(`Win rate: ${(stats.winRate * 100).toFixed(1)}%`); |
Template literal with variable interpolation in command context
| 156 | console.log(` Total: $${stats.totalPnl.toLocaleString()}`); |
Template literal with variable interpolation in command context
| 157 | console.log(` Gross profit: $${stats.grossProfit.toLocaleString()}`); |
Template literal with variable interpolation in command context
| 158 | console.log(` Gross loss: $${stats.grossLoss.toLocaleString()}`); |
Template literal with variable interpolation in command context
| 159 | console.log(` Profit factor: ${stats.profitFactor.toFixed(2)}`); |
Template literal with variable interpolation in command context
| 161 | console.log(` Average: $${stats.avgTradeSize.toFixed(2)}`); |
Template literal with variable interpolation in command context
| 162 | console.log(` Largest win: $${stats.largestWin.toFixed(2)}`); |
Template literal with variable interpolation in command context
| 163 | console.log(` Largest loss: $${stats.largestLoss.toFixed(2)}`); |
Template literal with variable interpolation in command context
| 165 | console.log(` Sharpe ratio: ${stats.sharpeRatio.toFixed(2)}`); |
Template literal with variable interpolation in command context
| 166 | console.log(` Max drawdown: ${(stats.maxDrawdown * 100).toFixed(1)}%`); |
Template literal with variable interpolation in command context
| 185 | console.log(`${day.date} | ${sign}$${day.pnl.toFixed(2).padStart(8)} | ${bar}`); |
Template literal with variable interpolation in command context
| 199 | console.log(`\n${category}:`); |
Template literal with variable interpolation in command context
| 200 | console.log(` Trades: ${data.trades}`); |
Template literal with variable interpolation in command context
| 201 | console.log(` Win rate: ${(data.winRate * 100).toFixed(1)}%`); |
Template literal with variable interpolation in command context
| 202 | console.log(` P&L: $${data.pnl.toLocaleString()}`); |
Template literal with variable interpolation in command context
| 203 | console.log(` Avg trade: $${data.avgTrade.toFixed(2)}`); |
Access to .env file
| 83 | apiKey: process.env.POLY_API_KEY, |
Access to .env file
| 84 | address: process.env.POLY_ADDRESS, |
Access to .env file
| 87 | apiKey: process.env.KALSHI_API_KEY, |
Install this skill with one command
/learn @alsk1992/history