Stock Picks Performance Tracker & Auditor
Log a complete record of stock recommendations — including every loss — calculate win rate, profit factor, drawdown and benchmark comparison, then generate a shareable performance report.
Accuracy note: the first five tabs calculate in your browser from the prices you enter, with the benchmark modeled as a configurable annual drift plus dividend yield. The Advanced Audit tab can optionally fetch real daily prices with your own free API key. Open calls are marked to the latest price you record; splits and dividends are handled with per-record adjustment fields. Treat outputs as a transparent audit model, not investment advice.
How to use this auditor
- Add every recommendation — wins, losses, cancelled and still-open calls — with the original timestamp and the entry price the picker actually published.
- Close calls out with an exit date and exit price, or mark open calls to market with the latest price and date.
- Record corporate actions: enter the split factor for calls held through a split, and dividends received as a % of entry.
- Configure the model: allocation %, commission, slippage, breakeven threshold and benchmark drift + dividend yield.
- Open the Performance Dashboard for win rate, profit factor, drawdown, benchmark excess and the significance verdict.
- Check the Evidence Audit for missing sources, duplicates, weekend timestamps and outlier dependence.
- Generate the report: copy the formatted text, print to PDF, or share it — then keep closing calls as they resolve.
- Go deeper in tab 6: live prices, portfolio simulation, Sharpe and Calmar, Monte Carlo, sector and Brier checks, and a tamper-evident fingerprint.
Add a recommendation
Microcopy: use the original entry price the picker actually published — never a price you looked up later. A recommendation with no exit date stays Open and is never counted as a win.
Calculation settings
Costs are charged per side (entry + exit). The benchmark compounds a fixed annual drift plus its dividend yield over each call's matched holding period (total-return style); tab 6 can compare against real fetched prices instead. Open calls are marked to your latest recorded price.
Your recommendation record
| # | Date | Ticker | Dir. | Entry | Exit | Exit date | Net % | Bench % | Status | Evidence | Actions |
|---|
HOLD / WATCH calls are logged for completeness but excluded from performance. Edit loads a record back into the form; Delete removes it permanently.
Full statistics (closed calls)
A high win rate alone does not prove skill — always read it next to profit factor, average winner vs. average loser, and the outlier-excluded return.
Equity curve vs. benchmark
Drawdown
Return distribution & win/loss profile
Evidence & integrity audit
This panel answers the question followers actually ask: is the record complete and honest? It flags weekend / after-hours entries, stale open calls, duplicates, missing evidence, and outlier dependence.
Shareable performance report
How this auditor works
Formulas used in every calculation
Return per recommendation
Net return after costs (commission \(C\) per side, slippage \(s\) in decimal)
Win rate (breakeven calls excluded from the denominator)
Average winner, average loser, payoff and expectancy
Profit factor (net basis; displayed as N/A when there are no losses)
Sequential equity curve and maximum drawdown (allocation \(a\) per call)
Corporate actions and open-call marking (split factor \(f\), dividends \(D\) % of entry, latest price \(P_L\), direction sign \(s\))
Matched benchmark total return (annual drift \(g\), dividend yield \(y\), holding days \(d\)) and excess return
Binomial significance test against baseline hit rate \(p_0\)
Wilson 95% confidence interval for the win rate
Methodology & assumptions (disclosed on every report)
- Directions: BUY / STRONG BUY are scored long; SHORT / STRONG SELL / SELL are scored short; HOLD and WATCH are logged but excluded from performance.
- Entry timing: the stated entry price is always preserved. Calls published on a weekend or after the 16:00 close are flagged and treated as next-session entries at the same stated price.
- Costs: commission is charged per side and slippage per side in basis points, always in the direction that hurts the trade.
- Portfolio model: closed calls compound sequentially with your chosen allocation percentage; overlapping calls are not assumed to each receive 100% of capital unless you set allocation to 100% and understand the assumption. Tab 6 adds a shared-capital simulation for overlapping calls.
- Benchmark: a fixed annual drift plus dividend yield applied over each call's matched holding period (and over the full span for the portfolio curve) — a total-return-style comparison. Tab 6 can compare against real fetched benchmark prices.
- Splits & dividends: a call held through an N:1 split is scored with its entry (and exit) price divided by N; dividends received are added to the call's return as a percentage of entry.
- Open calls: marked to the latest price and date you record (marked-to-market), reported as unrealized and never counted as realized wins; without a latest price they remain visible but unscored.
- Statistics: breakeven calls (within your threshold) are excluded from the win-rate denominator; the binomial test compares your hit rate with the 50% baseline; the Wilson interval shows the uncertainty of small samples.
- Honesty rules: losing calls are never removed, open calls are never counted as wins, and the headline return is always shown next to the return excluding the top 3 winners.
Frequently asked questions
What is a stock picks performance tracker?
A tool that records stock recommendations with their original timestamps and prices, then measures how the complete record — wins and losses — actually performed, instead of showing a cherry-picked highlights reel.
How do you calculate stock-picking win rate?
Divide profitable closed recommendations by all closed recommendations that were not breakeven, and multiply by 100. Open, cancelled and excluded calls are reported separately, never silently dropped.
How do you calculate the return on a stock recommendation?
For a long call: (exit price − entry price) ÷ entry price × 100. For a short call the sign is inverted: (entry − exit) ÷ entry. Net returns additionally subtract commissions and slippage.
How do you compare stock picks against SPY?
Fairly — the benchmark must be measured over the same holding period as each call, not against SPY's unrelated calendar-year return. This tool computes a matched benchmark return for every call and a portfolio-level comparison.
What is a good stock-picking success rate?
It depends on the payoff ratio. A 40% win rate with large average winners can be very profitable, while a 70% win rate with tiny winners and huge losers can lose money. Always read win rate together with profit factor and expectancy.
How do you calculate profit factor?
Gross profits divided by the absolute value of gross losses. Below 1.0 the record loses money; 1.0–2.0 is marginal to good; above 2.0 is strong — but only on an adequate sample size.
How do you calculate maximum drawdown?
Track the equity curve, record its running peak, and find the largest percentage decline from peak to trough. This tool computes it from a consistent sequential equity curve, not from unrelated trade returns.
How can you verify a stock influencer's track record?
Look for a complete call log with publication timestamps, original entry prices, evidence links, an audit trail of edits, and statistics that include losses, open calls and a benchmark comparison — exactly what this auditor is designed to produce.
How many recommendations are needed to evaluate a track record?
At least ~30 resolved calls before any skill verdict is meaningful. Below that threshold this tool refuses to label a record as statistically significant and shows the confidence interval instead.
How do you calculate average return per stock recommendation?
Sum the net returns of all closed calls and divide by their count. The median return is also shown so a single lucky home-run call cannot distort the average.
How are stock splits handled in the performance calculation?
Enter the split factor (e.g. 4 for a 4:1 split) on the recommendation. Entry and exit prices are divided by that factor before the return is computed, so a call held through a split is measured correctly instead of showing a fake −75% loss.
How are open stock recommendations valued?
Open calls are marked to market using the latest price and date you record: the tool reports an unrealized net return and a benchmark return over the same window, but never counts them as realized wins. Without a latest price the call stays visible and unscored.
Stock Tip Track Record Auditor — User Guide, Worked Example & FAQ
What this calculator does. The Stock Tip Track Record Auditor on AlamToolKit.com is a browser-based tool that records every stock recommendation — winning calls, losing calls, open calls, and excluded HOLD/WATCH notes — and computes a complete, honest performance record: win rate, profit factor, maximum drawdown, benchmark excess, statistical significance, and a shareable audit report.
The tool runs entirely in your browser. No prices, no records, and no license keys ever leave the page except through your own Twelve Data API key (Pro only) and your own share link.
Step-by-step: how to use the auditor
Follow the eight steps below in order. Each tab on the tool corresponds to one or more steps, and the field names below match the labels you see on screen exactly.
Open the tool and start on Tab 1 — Recommendations
Scroll to the Stock Picks Performance Tracker & Auditor panel. Tab 1 is already active. You will see a form headed Add a recommendation and, below it, a settings card and your record table.
If you already have a saved draft in this browser, it loads automatically on every visit. You can also press Load Demo Data to see a fictional 10-call example.
Add the first recommendation
Fill every required field (marked with *) using the original timestamp and the original entry price the picker actually published. Do not type in a price you looked up afterwards.
See the Field-by-field reference below for what every input means and its unit. Press + Add Recommendation to commit the row. The row appears in the table and the dashboards recalculate immediately.
Add every call — especially the losing ones
The value of the audit comes from completeness. Add every BUY, SHORT, HOLD and WATCH call the picker published in the period you are auditing, not only the winners. HOLD and WATCH rows are logged but excluded from performance by design.
Common mistake: deleting losing rows later. The Evidence Audit tab flags gaps and outlier dependence, and the report discloses your evidence coverage percentage, so deleting losses is visible.
Close calls, or mark open calls to market
For a resolved call, enter an Exit date and an Exit price. For a call still open, enter a Latest price and a Latest price date. Open calls are marked to market and reported as unrealized — they are never counted as realized wins.
If you enter an exit price without an exit date (or vice versa), the form rejects the row and shows a red message. That is deliberate — mixed entries silently distort the return.
Record corporate actions
If the call was held through a stock split, enter the Split factor (for example, 4 for a 4-for-1 split). If dividends were received, enter Dividends received as a percentage of the entry price (for example, 0.9 for 0.9 %). The tool divides both entry and exit prices by the split factor and adds the dividend percentage to the call return.
Configure the model on the Calculation settings card
These settings apply to every call in the record. Change any of them and the dashboards recompute instantly. See the settings reference table below for units and recommended defaults.
Read the Performance Dashboard (Tab 2) and the Evidence Audit (Tab 3)
Tab 2 shows the verdict banner (statistical significance vs. random chance), the ten headline KPI tiles, the full closed-call statistics table, and four charts: equity curve vs. benchmark, drawdown, return distribution, and the winner/loser profile. Tab 3 lists every integrity flag the tool detected.
A high win rate alone does not prove skill. Always read it next to profit factor, average winner vs. average loser, and the return excluding the top three winners.
Generate the report (Tab 4) and, if needed, run the Advanced Audit (Tab 6)
Enter the analyst name and website at the top of Tab 4, then press Copy Report Text to copy a formatted plain-text report, Print / Save as PDF to produce a PDF, or use one of the share buttons. Tab 6 adds live Twelve Data prices, a shared-capital portfolio simulation, Monte Carlo significance tests, sector and Brier calibration tables, a SHA-256 record fingerprint, and a compressed share link. Tab 6 is a Pro feature — every control is visible but disabled until you activate a license.
Field-by-field reference (with units)
Every input below appears exactly with this label on the tool. Units are shown in brackets. Fields marked Required must be filled in for the row to be saved.
Add a recommendation — identity fields
| Field | Unit / format | What to enter | Common mistake |
|---|---|---|---|
| Ticker Required | Text, up to 10 characters | The exchange symbol exactly as the picker published it, for example AAPL, NVDA, BRK.B. |
Using a company name instead of a ticker. Use Company name for that. |
| Company name | Text, up to 40 characters | Optional. Shown next to the ticker in the record table. | Leaving it blank is fine. |
| Exchange | Dropdown | NASDAQ, NYSE, LSE, NSE, or Other. Informational only — it does not change the calculation. | Choosing the wrong exchange. It has no effect on the numbers. |
| Direction Required | Dropdown | BUY, STRONG BUY, SHORT, STRONG SELL, SELL, HOLD, or WATCH. BUY and STRONG BUY score long; SHORT, STRONG SELL and SELL score short; HOLD and WATCH are logged but excluded. | Using SELL when the picker meant a short exit of a long position. The tool scores SELL as a short recommendation. |
| Recommendation date Required | Date, YYYY-MM-DD | The calendar date the pick was published, not the date you are entering it. | Entering today's date. Weekend and after-hours entries are flagged in the audit. |
| Recommendation time | Time, HH:MM (24-hour) | Optional. Used to flag after-hours calls that were scored against the same day's close. | Entering the time you added the record. Use the time the call was actually published. |
| Entry price Required | Currency units, 4 decimals | The price the picker actually published. For a market-on-open call, use the published opening reference price. | Using a price you looked up later. The audit flags stated prices that fall outside the day's high/low when you fetch live data in Tab 6. |
| Conviction | Dropdown | Low, Medium, or High. Informational only — not used in any calculation. | Expecting it to affect the score. It does not. |
| Target price | Currency units, optional | The picker's stated target. Used only for the "target reached" note in the Evidence Audit. | Entering a target you invented. Use what was published, or leave blank. |
| Stop-loss price | Currency units, optional | The picker's stated stop. Used only for the "stop-out" note in the Evidence Audit. | Confusing target and stop fields. |
Add a recommendation — exit and corporate action fields
| Field | Unit / format | What to enter | Common mistake |
|---|---|---|---|
| Exit date | Date, YYYY-MM-DD | When the call was closed or the position was sold. Must be on or after the recommendation date. | Setting an exit date on a call that is still open. Leave it blank and use Latest price instead. |
| Exit price | Currency units, 4 decimals | Required if an exit date is set. Forfeited otherwise. | Entering an exit price with no exit date. The form rejects it — the two must be entered together. |
| Latest price (open calls) | Currency units, 4 decimals | Current market price for an open call. If supplied, the call is marked to market and reported as unrealized. | Entering a latest price on a closed call. It is ignored if an exit date and price are set. |
| Latest price date | Date, YYYY-MM-DD | The date of that latest price. Used for the matched benchmark return over the same window. | Forgetting the date. If you supply a latest price without a date, the tool defaults to today. |
| Split factor | Numeric, ≥ 0.0001 | 1 = no split. 4 = 4-for-1 split. Entry and exit prices are divided by this factor before the return is computed. |
Entering the split date here. This field takes the ratio, not the date. |
| Dividends received | Percentage of entry, 0 to 100 | Cash dividends received while the call was held, expressed as a percentage of the entry price. Example: 0.9 means 0.9 % of entry. |
Entering a dollar amount. This field is a percentage. |
| Source | Dropdown | Website, YouTube, X/Twitter, Reddit, Newsletter, Telegram, Discord, Brokerage research, Other. Informational only. | Choosing "Website" for every record. It has no effect on the score. |
| Source URL (evidence) | URL, starting with https:// |
The link to the original published call. A record with a URL is labelled Source linked; without, it is labelled Self-reported. | Pasting a link that has since been deleted. The audit will still flag it if a duplicate or missing-exit issue exists. |
| Thesis / notes | Text, up to 500 characters | Optional. A short reason why the call was made. | Leaving it blank is fine. |
Calculation settings — model inputs
| Field | Unit | Default | Effect |
|---|---|---|---|
| Starting capital | Currency units | 10,000 | Starting value of the equity curve. Only affects the absolute value of the curve; percentages are unchanged. |
| Allocation per call | % of current equity | 100 | Fraction of equity deployed on each call in the sequential compounding model. At 100 % the equity curve matches the geometric return series exactly. |
| Commission per side | Currency units | 0 | Fixed commission charged on both entry and exit. Subtracted from the raw return before the net return is reported. Pro feature. |
| Slippage (bps per side) | Basis points (1 bps = 0.01 %) | 5 | Price slippage per side, charged against the trade. Subtracted from the raw return. Pro feature. |
| Breakeven threshold (± %) | Percentage points | 0.05 | Returns within this band around zero are classified BREAKEVEN and excluded from the win-rate denominator. |
| Benchmark drift | % per year | 10 | Annual total-return drift for the benchmark model. SPY 10 %, QQQ 12 %, IWM 8 %, or Custom. |
| Custom benchmark | % per year | 10 | Used only when the Benchmark drift dropdown is set to Custom. |
| Benchmark dividend yield | % per year | 1.3 | Added to the drift. The matched benchmark total return over the holding period is (1 + drift + yield)^(days/365) − 1. |
| Min. sample for verdict | Count of closed calls | 30 | Below this number of closed calls, the verdict banner refuses to label the record statistically significant. |
Advanced Audit (Tab 6) — Pro settings
| Field | Unit | Effect |
|---|---|---|
| Sizing method | Dropdown | Percent of current equity, or Fixed dollars per call. Used only in the shared-capital portfolio simulation. |
| Size (% or $) | % or currency | Deployment per call in the simulation. Does not affect Tab 2 numbers. |
| Max simultaneous positions | Count | Calls that do not fit are skipped and counted. Prevents over-allocation when many calls overlap. |
| Risk-free rate | % per year | Used in the annualized Sharpe ratio calculation. |
| Twelve Data API key | Text | Your own free key from twelvedata.com. Never sent anywhere except Twelve Data. Stored only in the tab. |
| API requests per minute | Count | Spacing between API calls. Lower it if you hit rate limits. |
| Benchmark ticker | Dropdown | SPY, QQQ, IWM, DIA, or Custom. Used for the real-price benchmark comparison. |
| Extra random-pick universe tickers | Comma-separated tickers | Feeds the "random picks" Monte Carlo test. Example: MSFT, KO, XOM, JPM. |
| Monte Carlo simulations | Count, 200 to 20,000 | Number of random runs per simulation. Higher is more stable but slower. |
| Open-call prices | Dropdown | Fill only blank latest prices, or refresh all open calls on fetch. |
How the auditor works — visual workflow
The diagram below traces a single recommendation from entry to the shared report. Every stage is a tab or panel you will use on the tool itself.
Worked example — a single call, step by step
This is the same 10-call demo that the tool loads when you press Load Demo Data. The figures are fictional but the arithmetic is exactly what the calculator performs. Use it to check that you understand every stage before you enter your own data.
Scenario
An analyst published a BUY on NVDA on 2025-01-06 at 14:30, with an entry price of 138.50. They closed the call on 2025-04-11 at 172.40. No split. No dividend. The model settings are: starting capital 10,000, allocation 100 %, commission 0, slippage 5 bps per side, breakeven threshold ±0.05 %, benchmark drift 10 %/yr plus 1.3 % dividend yield.
Stage 1 — raw long return
The call is a long, so the raw return uses the long formula:
R_raw = (Exit − Entry) ÷ Entry × 100 = (172.40 − 138.50) ÷ 138.50 × 100 = 24.476 %
Stage 2 — costs
Slippage is 5 bps per side = 0.0005 in decimal. Commission is 0 in this example. The cost adjustment on the return is:
Cost = (2 × 0 + (138.50 + 172.40) × 0.0005) ÷ 138.50 × 100 = 0.1122 %
Net return after costs:
R_net = 24.476 − 0.112 = 24.364 %
Stage 3 — matched benchmark return
Holding period: 2025-01-06 to 2025-04-11 = 95 days. The benchmark total-return model compounds drift plus yield:
R_bench = (1 + 0.10 + 0.013)^(95 ÷ 365) − 1 = 2.791 %
Stage 4 — excess return
Excess = R_net − R_bench = 24.364 − 2.791 = +21.573 percentage points
Stage 5 — what this means for the full record
This call is a WIN in the record. It contributes +24.36 % to the closed-call return series, appears in the equity curve as the first compounded step, and beats the benchmark by 21.57 percentage points. Nothing about this single call proves skill — the binomial test, the Wilson confidence interval, the outlier-exclusion check, and the minimum-sample threshold all operate on the whole record, not on any single call.
0 and watch every number rise slightly — that is the only number in this example that changes.
What is this calculation used for?
The Stock Tip Track Record Auditor answers one question honestly: if someone followed every call this picker published, including the losers, what would their record look like — and is that record distinguishable from luck? Every number the tool reports is derived from that single question.
Where you would apply it
- Auditing a public analyst before paying for a subscription. Record their last 50 calls and check the win rate, profit factor, and drawdown against the benchmark.
- Auditing your own record before publishing a track record. The Evidence Audit tab flags weekend entries, missing source URLs, duplicate recommendations, and outlier dependence.
- Comparing two pickers on the same benchmark and the same cost assumptions, rather than on selected highlights.
- Benchmarking an investment strategy against a disclosed drift-plus-yield total-return model, matched to each call's holding period.
- Documenting a research log with SHA-256 record fingerprints (Pro) that prove the data has not changed since the fingerprint was published.
Where it should not be used
- As a substitute for an audited brokerage statement. The tool measures self-reported recommendations, not a verified trading account.
- As investment advice. Past recommendation performance under stated assumptions is not a forecast of future returns.
- As a single-call scorecard. A 100 % win on one call is statistically meaningless; the tool refuses to issue a verdict below the minimum sample threshold.
- As a substitute for real fetched benchmark prices when those are available. Tab 6 (Pro) can replace the modeled drift with the actual SPY/QQQ/IWM price series.
What the output tables look like
Below are the headline metrics from the fictional 10-call demo (2 open, 1 HOLD, 7 closed). The exact values depend on your settings, but the shape of every table is identical to what you will see on the tool.
Headline KPIs (Tab 2)
| Metric | Formula | Demo value |
|---|---|---|
| Total recommendations | All rows including HOLD/WATCH | 10 |
| Win rate | Wins ÷ (Wins + Losses) × 100 | 71.4 % |
| Total return | Compounded equity curve return | +34.9 % |
| Benchmark return | Drift + yield over matched span | +11.5 % |
| Excess return | Total − Benchmark | +23.4 pp |
| Winning / losing | Count of wins / count of losses | 5 / 2 |
| Open calls | Calls without an exit | 2 |
| Max drawdown | Peak-to-trough equity decline | −7.4 % |
| Open unrealized | Average MTM return on open calls | +12.4 % |
| Evidence coverage | Calls with source URL ÷ total | 60 % |
Extended statistics (Tab 2, lower table)
| Metric | What it tells you | Demo value |
|---|---|---|
| Average return per call | Mean net return across closed calls | +4.9 % |
| Median return | Middle value, resistant to outliers | +5.6 % |
| Average winner | Mean of winning returns | +12.2 % |
| Average loser | Mean of losing returns (magnitude) | −13.4 % |
| Payoff ratio | Average winner ÷ average loser | 0.91 |
| Profit factor | Sum of wins ÷ magnitude of losses | 3.26 |
| Largest winner | Maximum single-call net return | +32.6 % |
| Largest loser | Minimum single-call net return | −23.7 % |
| Average holding period | Mean days held across closed calls | 78 days |
| Top-3 winners contribution | Share of total return from top three winners | 94 % |
| Return excluding top-3 | Honest "rest of the record" return | −11.2 % |
| Binomial p-value | Probability of this win rate under chance | 0.2266 |
| Win-rate 95 % CI | Wilson confidence interval | 35.9 %–91.8 % |
Key user pain points — and how this calculator solves them
Most "track record" pages online show you a highlights reel. The problems below are the ones a careful follower or auditor runs into, and the ones this tool is designed to close.
| Pain point | How this calculator solves it |
|---|---|
| Cherry-picked wins, silent losses. Bad calls quietly disappear from a public track record. | The report's Record completeness section lists total, closed, open, missing-exit, and excluded calls in one line. The Evidence Audit tab flags missing source URLs and duplicate rows, so a deleted loss leaves a traceable gap. |
| No benchmark, or the wrong one. A record claims +20 % without saying what the market did in the same window. | Every call is matched against the same benchmark over its exact holding period, using the disclosed drift-plus-yield model. Tab 6 (Pro) replaces the model with the real SPY/QQQ/IWM series. |
| Win rate misleading on its own. 70 % wins with tiny winners and huge losers can still lose money. | Win rate always appears next to profit factor, average winner vs. average loser, payoff ratio, and the return excluding the top three winners. |
| No significance test. A 55 % hit rate on 20 calls looks impressive but is indistinguishable from a coin flip. | A binomial p-value against a 50 % baseline and a Wilson 95 % confidence interval are reported for every record. Below the configurable minimum sample, the tool refuses to issue a verdict. |
| Silent cost assumptions. Returns quoted without commission or slippage. | Commission and slippage are explicit fields on the Calculation settings card, and every net return subtracts both. Both are locked to zero on the free plan, so you always see what the number would be under zero-cost assumptions. |
| Unmarked open calls. Still-open positions get treated as wins because the analyst "believes" they will work out. | Open calls are marked to market and reported as unrealized. They are never counted in the win rate, and the open-unrealized KPI is shown separately. |
| Corporate actions break the return. A 4-for-1 split makes a healthy call look like a −75 % loss in a naive spreadsheet. | The split factor field divides both entry and exit prices by the ratio before the return is computed, and dividends received are added as a percentage of entry. |
| No way to compare two records fairly. Two pickers report different time periods, benchmarks, and cost assumptions. | Every record is scored under the same disclosed settings. Load one, save the report, load the next, and the two reports are directly comparable line by line. |
| No tamper evidence on a shared report. A published record can be edited after the fact without detection. | Tab 6 computes a SHA-256 hash chain over every recommendation and displays the resulting fingerprint. Publish the fingerprint somewhere with a public date — any later change alters it. |
| Heavy tools, slow pages. Most trackers load dozens of scripts and take several seconds to render. | Everything runs in your browser with no external dependencies except an optional, on-demand Twelve Data fetch. Only the tab you open is rendered; charts are inline SVG with no charting library. |
Real-world usage scenarios
Scenario A — evaluating a stock influencer before subscribing
You have followed an account for three months. Before paying for the paid tier, open the tool, add every BUY, SHORT and HOLD call they published in that window — including the losers — with the original timestamps and stated prices. Add the source URL for each call from the account's own post. Close the calls they have marked closed, and mark the rest to market. The Evidence Audit tab will tell you how much of the record is source-linked, and the binomial test will tell you whether the win rate is distinguishable from chance. If the record is under the minimum sample, the verdict banner will say so rather than pretending otherwise.
Scenario B — publishing your own track record
You run a newsletter and want a public track record that survives scrutiny. Record every call as you publish it, with the source URL pointing at the actual newsletter issue. Close each call as it resolves. When you are ready to publish, press Copy Report Text on Tab 4 and paste the plain-text report onto your site. If you have Pro, also copy the SHA-256 fingerprint from Tab 6 and add it to the report. Anyone who later suspects the record has been edited can re-compute the fingerprint from the shared CSV and compare it to yours.
Scenario C — comparing two strategies against the same benchmark
You have two strategies with different holding periods and different trade counts. Add each strategy's calls into two separate drafts and save the reports. Because both reports use the same benchmark drift, the same dividend yield, and the same slippage assumption, the excess-return and drawdown columns are directly comparable. Read the payoff ratio and profit factor side by side before you trust any single headline number.
Pro features — what they are, and why they are locked
The free plan gives you the complete core audit: every recommendation, every tab, every dashboard, every chart, the Evidence Audit, the report generator, CSV import/export, and the full methodology. If all you need is an honest historical record of a picker's calls, the free plan is enough and always will be.
Pro adds the tools a careful auditor or a public analyst needs once the record gets serious. Every Pro feature is visible in the interface so you can see exactly what you are buying. Pro features are only disabled on the free plan; they are not hidden, they are not removed from the page, and there is no "teaser" that disappears after one use. What you see on the free plan is the exact layout Pro users work in.
🔒 Unlock Pro — $9 one-time
The free plan gives you the complete audit for up to 25 recommendations.
Pro removes the limit and adds what you need to publish or defend a record:
♾️ Unlimited recommendations
💸 Real commission and slippage
📊 Live prices and real benchmark comparison
📈 Portfolio simulation, Sharpe, Monte Carlo significance tests
🔗 Publishable share link — your entire dataset in one URL, no server
🔐 Proof of record — a fingerprint you publish alongside your report
so nobody can edit the record afterwards
🧾 JSON export
One-time payment. No subscription.
What Pro unlocks
| Feature | What it does | Where it lives |
|---|---|---|
| Unlimited recommendations | Free plan is capped at 25 records per draft. Pro removes the cap so you can audit a full year of calls, or compare multiple pickers in separate drafts. | Tab 1 — Recommendations |
| Commission & slippage | Both inputs are editable on Pro. The free plan locks them to 0 and 5 bps respectively, so the net returns you see on the free plan assume zero commission. Pro lets you model real broker costs and market impact. |
Tab 1 — Calculation settings card |
| Advanced Audit tab | Full Tab 6: live Twelve Data price fetching, real-benchmark comparison, shared-capital portfolio simulation, Sharpe and Calmar ratios, Monte Carlo significance tests (sign-flip and random-universe), sector breakdown, Brier calibration, extra audit flags, and SHA-256 record fingerprinting. | Tab 6 — Advanced Audit |
| Share link with compressed dataset | Produces a self-contained URL that carries the entire record inside the fragment. No server is involved: whoever opens the link sees the exact same data you saw, without a backend. The link is gzip-compressed and works on any host. | Tab 6 — Timestamp fingerprint & share link card |
| Tamper-evident fingerprint | Each recommendation is hashed with SHA-256 and chained to the previous one. The final hash is your record's fingerprint. Publish it somewhere with its own public date — a tweet, an archive snapshot, a blog post. Any later change to the record alters the fingerprint. | Tab 6 — Timestamp fingerprint & share link card |
| Hashed CSV download | Exports the record with a per-row hash column, so a third party can verify each row independently against your published fingerprint. | Tab 6 — Timestamp fingerprint & share link card |
| JSON export | Exports the full record plus your model settings as a single JSON file, for archival or for feeding another tool. | Tab 4 — Report & Export |
Why Pro is locked, and what "locked" actually means
Pro controls are visible but disabled. The browser's own disabled attribute blocks clicks, keystrokes, and programmatic .click() calls on every Pro control. On the Advanced Audit tab, a single banner at the top explains the state; the rest of the tab looks and reads exactly as it will after you activate. There is no dimming of the panel, no hidden sections, no "preview mode". You see what you will get.
Tab 6 carries a (Pro) suffix on its label — 6 · Advanced Audit (Pro) — and nothing else on the page carries a Pro marker. Once you activate a license, the suffix disappears from the tab, the banner disappears from the panel, every control re-enables in a single pass, and a small PRO badge appears next to the site name in the tool header.
How to activate Pro
Buy on Gumroad
Press Unlock Pro on Gumroad on the upgrade card that appears below the tool. Complete the purchase. Gumroad will email you a license key in the form STTRA-XXXXX-XXXXX-XXXXX. Treat the key like a password: it is what identifies you as a paid user, and it can be re-used on any device where you open the tool.
Paste the key into the tool
On the upgrade card, open the collapsible section Already purchased? Enter your license key. Paste your key exactly as it appears in the Gumroad email, including the dashes and without extra spaces. Press Activate.
Confirm the unlock
The tool validates the key offline in a fraction of a second. If the key is accepted, every Pro control re-enables, the (Pro) suffix disappears from Tab 6, and the upgrade card hides itself. A small PRO badge appears next to the site name in the header. Activation is stored in this browser only; you can activate on any other browser or device by pasting the same key again.
What happens if activation fails
| Message | Cause | Fix |
|---|---|---|
| Paste the license key from your Gumroad receipt. | The input is empty or contains only spaces. | Paste the key from the Gumroad email. Do not type it from memory. |
| That does not look like a valid key. Expected format: STTRA-XXXXX-XXXXX-XXXXX | Wrong prefix, wrong number of dashes, or a non-alphanumeric character somewhere in the key. | Re-copy the key from the email. Watch for a zero 0 that looks like a letter O. |
| That key was not accepted. | The key's checksum does not match. Either the key is mistyped or the key was not issued by AlamToolKit.com. | Double-check the key against the Gumroad email. If it still fails, contact support with the receipt attached. |
How keys are generated (for reference)
Each key is built as STTRA-XXXXX-XXXXX-XXXXX. The final XXXXX group is a checksum of the first two groups combined with a private secret. The page computes the same checksum and compares it against what you typed. The check is offline, deterministic, and requires no network call — which is why activation works even if you are offline, on a plane, or on a browser with strict firewall rules.
If you are the tool operator, you can mint a new key at any time by opening the browser console on the tool page and running sttraMakeKey() for a random key, or sttraMakeKey("SEED") for a deterministic key derived from a seed string. Always rotate the secret and bump storeKey if you suspect a leak.
What is not behind Pro
To be explicit, the following are all free and always will be:
- Every recommendation field, every validation rule, and every row of the record table.
- The entire Performance Dashboard (Tab 2), including all ten KPI tiles and all four charts.
- The full Evidence Audit (Tab 3), including every integrity flag and the evidence-coverage metric.
- The shareable performance report (Tab 4), including copy, print/PDF, and the X / Reddit / LinkedIn share buttons.
- The Formulas & FAQ tab (Tab 5), with every formula displayed in full.
- CSV import, CSV export, Save Draft, Load Draft, and Clear All.
- Unlimited saves in your browser, and unlimited reports.
Common mistakes — and how to avoid them
Entering the entry price you can see today, not the price the picker published
This is the most common and most damaging mistake. If you look up the historical close after the fact and type that in, the audit is meaningless. Use the price the picker actually stated at the moment of publication. If the original post does not state a price, leave the row out rather than invent one.
Pro tip: the Evidence Audit tab flags stated prices that fall outside the day's high/low when you fetch live data in Tab 6. That check exists specifically to catch this mistake.
Leaving the exit price blank on a closed call
A call with an exit date but no exit price is flagged MISSING EXIT and cannot be scored. Either fill in the exit price or clear the exit date and use Latest price to mark it to market.
Entering a dividend as a dollar amount
The dividends field takes a percentage of the entry price, not a dollar amount. For example, if a $1.50 dividend was received on a $150 entry, enter 1.0 — meaning 1.0 % of entry — not 1.50.
Entering a split date instead of a split ratio
The split field takes the ratio: 4 for a 4-for-1 split, 2 for a 2-for-1 split, 1.5 for a 3-for-2 split. It does not take the split date. Entering a date will make the return calculation wrong.
Counting open calls as wins
An open call marked to market is reported as unrealized. It is never counted in the win rate, never counted in the profit factor, and never included in the closed-call equity curve. If the analyst claims a 90 % win rate by counting open calls, the tool will show the same record much lower.
Trusting the headline return without reading the top-3 contribution
A record can show +40 % total return driven entirely by one or two lucky calls. The Return excluding top-3 winners row exists to make that visible. If it is negative while the headline is positive, the record depends on outliers — which is not the same as skill.
Frequently asked questions
Does the tool store my data anywhere?
No. All records, settings, and the computed report live only in your browser's localStorage. Nothing is transmitted to a server. The single exception is the optional Twelve Data price fetch in Tab 6, which sends your API key and ticker symbols directly to Twelve Data — never to AlamToolKit.com.
Why does the verdict banner refuse to call my record significant?
Below the minimum sample threshold (default 30 closed calls), the record is too small for a statistically meaningful verdict. The tool shows the Wilson 95 % confidence interval instead, so you can see the uncertainty. You can lower the threshold on the Calculation settings card, but doing so weakens the claim.
What is the benchmark drift-plus-yield model actually doing?
For each call, the tool computes (1 + drift + yield)^(days_held ÷ 365) − 1 and uses that as the matched benchmark return. In the demo, a 95-day call against a 10 % drift and 1.3 % yield produces a benchmark return of +2.79 %. Tab 6 (Pro) replaces this model with the actual SPY/QQQ/IWM price series for each call, which is more accurate but requires a Twelve Data key.
What does the binomial p-value actually mean?
It is the probability that a random picker with a 50 % hit rate would achieve at least your number of wins in the same number of scored calls. A p-value below 0.05 means the record is unlikely to be pure chance at the 95 % level. It does not mean the picker is skilled — significance measures the win rate only, not the payoff ratio.
How are HOLD and WATCH calls treated?
They are logged in the record table and counted in the total recommendation count, but they are excluded from every performance calculation. They have no win rate, no return, no drawdown contribution. This lets you document the full history without distorting the score.
What does "OPEN · MTM" mean in the record table?
MTM stands for marked-to-market. The call is still open, but a latest price has been entered, so the tool can compute an unrealized return. It appears in the Open unrealized KPI tile, but it is never counted as a realized win.
What happens if I enter an exit price without an exit date?
The form rejects the row with a red error message. An exit price without an exit date would silently distort the return (the holding period would be undefined), so the tool refuses to accept the combination.
Can I import records from another tool?
Yes. Press Import CSV on Tab 1 and choose a CSV file. The importer accepts flexible column names: ticker or symbol, direction or side, date or recommendation_date, entry_price or price, and so on. Rows with missing ticker, date, or entry price are skipped and reported.
Can I export my record?
Yes. Press Download CSV on Tab 1 for a full record, or Copy Report Text on Tab 4 for a formatted plain-text report you can paste anywhere. Pro users also get a JSON export and a hashed CSV with a SHA-256 fingerprint on Tab 6.
What is the Advanced Audit tab and why is it locked?
Tab 6 is a Pro feature. It adds live Twelve Data price fetching, a shared-capital portfolio simulation, Sharpe and Calmar ratios, Monte Carlo significance tests, sector and Brier calibration tables, a SHA-256 record fingerprint, and a compressed share link. Every control on the tab is visible so you can see what Pro unlocks, but they are disabled until you activate a license.
How does the Pro license work?
You purchase on Gumroad and receive a license key by email. Paste the key into the license field on the upgrade card and press Activate. The key is validated offline using a checksum, so activation works without any network call. The key is stored only in your browser's localStorage.
Why is the twelve-data fetch limited to 8 requests per minute?
Twelve Data's free tier enforces a per-minute rate limit. The default of 8 requests per minute is a safe ceiling for the free plan. If you upgrade your Twelve Data plan you can raise the field on the Advanced Audit settings card.
What does the SHA-256 fingerprint prove — and what does it not prove?
It proves that the record has not changed since the fingerprint was published. It does not prove that the calls were made when claimed, or that the prices are accurate. It is a tamper-evident seal, not a time-stamp from an independent authority.
Does it work offline?
Yes. Once the page is loaded, everything on Tabs 1 through 5 works entirely offline. Tab 6's live price fetch requires a network connection to Twelve Data, but the rest of the tab — the simulation, the Monte Carlo tests, the sector and Brier tables, and the fingerprint computation — works offline.
Can I use it on mobile?
Yes. The layout is responsive down to 320 px. On a small phone the forms stack vertically, the record table scrolls horizontally, and the charts scale to the viewport. The tab strip scrolls horizontally so all six tabs remain reachable.
A short note about accuracy and trust
This calculator is deliberately transparent about its limits. Every number it produces is derived from inputs you supply, using formulas displayed openly on Tab 5. The benchmark is a disclosed model, not live market data, unless you fetch real prices in Tab 6. Open calls are marked to the latest price you record and reported separately. Losing calls are never removed. The report itself lists the total count, the closed count, the open count, the missing-exit count, and the evidence-coverage percentage — so any reader can audit the audit.
If a number looks too good, check three rows before you trust it: Return excluding top-3 winners, Binomial p-value, and Average unrealized return. Those three rows together tell you whether the record survives after removing luck, whether it is distinguishable from chance, and how much of it is still open.
AlamToolKit.com — free finance, engineering, and everyday calculators with honest methodology and transparent assumptions. Browse the full tool library or the Finance Tools category.