All guides
Documentation

Your Data & Privacy.

TradeClone runs as an add-on inside NinjaTrader 8 on your own machine. This page lists every network request it makes, what each one contains, and what it never contains. All of it is visible in NinjaTrader's own Output window while you trade.

The short version

TradeClone never sees or stores a prop firm login. It places orders through NinjaTrader, which is already connected to your accounts, so there is nothing to hand over.

Your trades are never uploaded on their own. Positions, fills and PnL are read from NinjaTrader's objects in memory and stay there. Three requests leave the machine: two carry no trade data at all, and the third only fires when you press a button.

1. Update check

Once, at startup. A GET to the version manifest, which returns the latest version number, a download link and the release notes.

It sends a User-Agent header and nothing else, so no licence key, no machine identifier and no account data. If it fails, TradeClone carries on and the version reads as unknown. Look for [UPDATE-CHECK] in the Output window.

2. Licence check

At startup, then once an hour. It sends your licence key, a machine ID and the TradeClone version, and gets back whether the licence is valid. Look for [LICENSE].

The machine ID is a SHA-256 hash of the Windows MachineGuid, cut to 32 characters. It tells one machine apart from another so a key cannot be shared across several, and it carries nothing about your hardware, your name or your accounts. The original value cannot be worked back out of it.

No account names, positions, sizes or PnL are included.

If the check cannot reach the server, whether your connection is down or mine is, you keep trading on the 48-hour grace window. Copying is unaffected during it: the licence check runs on its own timer and sits outside the order path entirely, so a fill still copies with the network unplugged.

3. Support report

Only when you fill in the report form and press send. This is the one request that carries trade data, and it never fires on its own.

It contains what you ticked on the form, your copier configuration, the state of each account at the time, any recent exceptions, and the rolling event log, along with your licence key, machine ID and version.

Account names are masked before it leaves. Each becomes its first four characters, then ****, then its last two, so APEX1234567 sends as APEX****67. The mask is applied to the configuration and the state section, then swept over the whole event log as a final pass, so a name cannot slip through in a log line.

A copy also goes to your clipboard before it sends. If the request fails you can still paste it to me yourself, and read exactly what it says first.

What never leaves

Prop firm or broker credentials never leave, because TradeClone never asks for them and has no field to store them: orders go through NinjaTrader's own connection. Account balances never leave, and neither does an unmasked account name. Nor do your trades, unless you send a report, because nothing is uploaded in the background.

TradeClone cannot withdraw funds, change your firm settings or log in anywhere. It submits orders inside the platform you are already signed into, and that is the whole of its access.

What is stored on your machine

TradeClone.xml in Documents\NinjaTrader 8\ holds your settings and licence key. journal-data.json holds your exported trade history, written only when you run the export, to the folder you pick. Both are plain files you own.

Checking it yourself

Every request above writes to the Output window. Open the Output tab, filter for [LICENSE] or [UPDATE-CHECK], and you will see each check as it happens along with its result. TradeClone makes no other outbound requests of any kind, so a packet capture will show those endpoints and nothing more.

Questions about any of this? Ask in the Discord.