JSK TradeProof

Documentation

1. What TradeProof is, and what it is not

It is an analyser for trades you have already taken. Paste a broker export or a strategy
tester export into a sheet, and it produces a full report: 45 performance and risk metrics,
charts, and the robustness tests that tell you how much of a result was skill and how much was
the order the trades happened to arrive in.

It is not a trading journal. A journal records trades as you take them. TradeProof reads a
history you already have.

It is not a backtester. It does not read price data and does not generate trades from
rules. It tells you what the trades you have did.

Your trades never leave the workbook. The analysis runs inside your spreadsheet. The only
network request TradeProof makes is a licence check that sends your key and nothing else,
and with no key entered, it makes no request at all.


2. Installing

Excel: install from AppSource, then open it from Home → TradeProof. You need Excel
with ExcelApi 1.17 support: Microsoft 365 on Windows, or Excel on the web.

Google Sheets: install from the Google Workspace Marketplace, then Extensions →
TradeProof → Open TradeProof
. Approve the two permissions the first time.

TradeProof asks Google for exactly two things: the current spreadsheet only, and permission
to show the sidebar. It cannot open, list or read any other file in your Drive.


3. Your first report, in five minutes

  1. Get your trades into a sheet. Paste or import your export into a blank tab.
  2. Select them and click Read selected range: or Use everything on this sheet,
    which is easier when one export sits in one tab.
  3. Check the mapping. TradeProof shows its guess for every column. Rows highlighted amber
    were guessed from the values, not from a header, so check those first. Entry time,
    profit/loss and direction are required.
  4. Set up writes a TradeProof — Settings sheet holding every option.
  5. Build report.

Three sheets appear beside your data: Summary, Analysis and Trades, plus a hidden
chart-data sheet. Your own sheet is not touched.

⚠️ Import, do not paste, if your data has leading zeros or long order ids. Excel rewrites
007 to 7 and an 18-digit id to 1.23E+17 as it imports, before TradeProof sees
anything. Import the file with those columns set to Text. TradeProof preserves what it is
given; it cannot recover what Excel has already discarded.


4. The settings sheet is the control panel

Everything except your licence key is a cell on TradeProof — Settings.

That is deliberate. A task pane is about 320 pixels and a Sheets sidebar is a fixed 300 that
you cannot resize, and by the time five analyses had options it was a column of controls nobody
could scan. Moving them to a sheet buys three things:

  • Room. A list of hours is 9-16 rather than twenty-four checkboxes.
  • Real controls. Choices become in-cell dropdowns; dates become date cells.
  • Reproducibility. The settings travel with the workbook, so the same report can be
    rebuilt months later by whoever opens the file.

Only the sections you ticked in the panel are written, so the sheet stays readable.

Dates must be YYYY-MM-DD

Everywhere you type one: market phases, the out-of-sample date, what-if ranges.

02/06/2025 is refused, not guessed. It means 2 June to half the world and 6 February to
the other half, and quietly picking one would move a boundary by months. If a date is refused,
the message quotes the cell back at you.


5. Reading the core report

Summary

The headline figures, plus the equity curve and drawdown charts.

Every metric appears three times: all trades, longs only, shorts only. That is the point:
a strategy that only works in one direction looks perfectly healthy in aggregate, and the
three-column layout is what makes it visible.

Analysis

Performance broken down by day of week, hour of day and month.

Trades

The normalised list TradeProof actually analysed. This is where to check a row against your
broker statement, because it shows what was read, not what you sent.

A figure that could not be computed is blank

Never zero. A profit factor with no losing trades is not 0, and a phase holding no trades
did not "break even". Those show an em dash with the reason beside them. A zero is a claim,
and TradeProof does not make claims it cannot support.


6. The analyses

Each is optional and off by default. Monte Carlo is the only slow one.

Monte Carlo (paid)

Takes your own trades and reshuffles them thousands of times, resampling with
replacement or reordering, then reports the spread of results that same set
produced.

You get percentile bands for final equity, maximum drawdown and profit factor, plus Risk of
Ruin
: the share of runs that fell below the threshold you set.

The seed is fixed and printed on the sheet, so the same settings reproduce the same table.
Iterations run from 100 to 10,000.

⚠️ A resampling of your past trades is not a forecast. It describes the variation inside
the record you already have.

What-if scenarios (paid)

Each scenario is measured against the same unmodified baseline: remove the N best or worst
trades, resize positions, keep one direction, keep only certain days, hours or months, cap a
loss, apply a stop or target, or exclude overlapping trades.

⚠️ Removing your worst trades is not an improvement. It measures how much of the result
depended on them.

Out-of-sample (paid)

Splits the history at a date you give, or at a percentage, and puts both halves side by side
with the decay between them.

Walk-forward windows divide the history into equal consecutive periods instead, so you
can see whether a result held up period after period rather than once.

Market phases (paid)

Your own named date ranges: Bear phase, Post-election, whatever you like.

Trades are grouped by entry time, because that is when the decision was made: a trade
opened in a bear phase was a bear-phase decision, whatever happened later.

Six blank rows are provided and you can insert more. They must stay together: reading
stops at the first empty name.

Portfolio (free: 3 strategies · paid: unlimited)

Name up to 8 sheets, each holding one strategy, or split the current range by symbol or tag.

You get each strategy's share of profit, a correlation matrix, a diversification ratio,
whether the combined drawdown was smaller than the parts alone, and the number of months in
which every strategy lost at once. That last figure is the one that ends portfolios.

Compare two sheets (paid)

Two trade sets side by side, a backtest against the live record say, with the difference,
the percentage, and which side did better on each measure.


7. Downloading the report

Download report produces a self-contained HTML file: charts as vector graphics, no remote
references, opens with the network off. Save as PDF from the same window.

On a paid plan the document carries your brand name, tagline, accent colour, font and
logo. The free and instant tiers carry ours.

Adding a logo. In Excel, pick the file in the panel. In Google Sheets, put a direct
https link in the Report logo cell on the settings sheet. The image is fetched once and
embedded, so the document still shows it when emailed or opened offline. Some image hosts
refuse to be read this way, and the panel says so rather than leaving a broken image.


8. Tiers

Instant Free Paid
Account none JSKAPPS account one-time purchase
Trades up to 100 unlimited unlimited
45 metrics, charts, day/hour analysis
Portfolio None up to 3 strategies unlimited, with correlation
Monte Carlo, What-if, Out-of-sample, Market phases None None
Your own brand on the report None None

Instant needs no account and no network, which is why the privacy claim is true for a
first-time user: nothing is sent because nothing can be.

On trade 101 without an account, TradeProof refuses and changes nothing, and says a free
account lifts the limit. It does not silently analyse the first 100.

Where your key is kept. In Excel, per-user on your own machine. In Google Sheets it is not
stored at all and is re-entered each session. Either way it is never written into the
workbook, so sending the file does not send your licence.


9. When something goes wrong

"That is a single cell — too small to hold a trade list."
Select the whole block, or use Use everything on this sheet.

"…is a TradeProof report sheet, not your trade data."
The selection is on a sheet TradeProof generated. Switch to your own.

"That is a selection of 2 separate areas."
Ctrl-selecting several blocks is refused rather than half-read. Select one range.

Leading zeros or long ids have changed.
Excel did that on import, before TradeProof ran. Import as Text: see §3.

A date column read as the wrong month.
Tick Dates are day-first (DD/MM) in the panel before reading the range.

The report shows far fewer trades than I have.
Check the column letters on the settings sheet, and that the date column imported as dates.
The panel reports how many rows were skipped and why.

Google Sheets: "You do not have permission to perform that action."
Check you can edit the spreadsheet, that the sheet is not protected (Data → Protect sheets
and ranges
), and that you are signed in as the account that approved the add-on. With
several Google accounts in one browser, open the spreadsheet in that account's window.

Google Sheets: it stopped part way.
Apps Script ends every execution after six minutes. TradeProof checkpoints and continues;
leave the sidebar open and watch the progress.

A paid feature stayed locked after entering my key.
Read the message under the key box. It distinguishes a key that was not recognised from
one that could not be checked: the second means the licence server was unreachable, you
have the free tier for now, and it is checked again next time.


10. Limits, stated plainly

  • Trades only. No price history, no indicator backtesting, no live journaling.
  • Ambiguous dates are refused, never guessed.
  • Excel destroys some values on import, before TradeProof runs. Import as Text.
  • Google Sheets has no logo file picker: a paid user supplies a link instead.
  • Google Sheets executions end at six minutes. Long runs checkpoint and continue.
  • The Sheets add-on does not remember your key between sessions.

11. Undoing, and your own data

Reports are written to sheets prefixed TradeProof —. The range you select is read and
never written to.

To remove a report, delete those sheets. Re-running replaces them rather than adding
duplicates, so you never end up with Summary (2).

Uninstalling removes the add-in, not your report sheets, and nothing of yours is held
anywhere else.


12. Getting help

info@jskapps.com. Include the host (Excel or Google Sheets), its version, and what the
panel said.

If a figure looks wrong, the single most useful thing to send is the TradeProof — Settings
sheet: it records exactly how that report was produced.