NinjaTrader robot: setup, settings and support
Install the TradeLog robot in NinjaTrader 8, set it up correctly, and understand every setting and message it shows.
The TradeLog robot for NinjaTrader is a trading panel and a risk guard that sits on your chart. It works out the position size for the risk you chose, places the trade with its stop and target, keeps watching after the fill, and syncs everything to your TradeLog journal.
What it will never do
These are limits the robot enforces on itself, not features that are missing. They are worth knowing before you start.
- It never moves a stop on a trade you have already opened. The line that follows price is a planning line only.
- It never decides when to buy or sell. There is no signal and no automated entry: you click, it sizes and protects.
- It never touches an order larger than the position it belongs to, because that is not protection and the robot cannot tell what you meant by it.
- It cannot read trades you made before you installed it. NinjaScript does not expose them.
What you need
- NinjaTrader 8, version 8.1 or newer.
- A NinjaTrader account you can trade on. Sim is the right place to start.
- A TradeLog plan that includes automatic sync — Basic or Premium.
- Your TradeLog API key, from Settings then API Keys.
Installing it
- 1In TradeLog, go to Settings then API Keys and create a key for NinjaTrader. It is shown once, so copy it now.
- 2Download the robot file from your Connections page. It is a single zip — do not unzip it.
- 3Only if you ever installed the robot as a source file — a .cs pasted into the NinjaScript Editor, which testers before September 2026 did: remove it first, or the import fails with "duplicate method names". In the NinjaScript Editor open Indicators, right-click TradeLogSyncV3, choose Remove, and let NinjaTrader recompile.
- 4In NinjaTrader, open Control Center and choose Tools, then Import, then NinjaScript Add-On…
- 5NinjaTrader shows a standard warning about third-party add-ons. It appears as soon as you choose the menu item, before you pick the file, and for every add-on that did not come from NinjaTrader — ours included. Press OK.
- 6Pick the zip file and confirm. NinjaTrader compiles it and tells you it succeeded. If it asks to restart, restart.
- 7Open a chart of the instrument you want to trade.
- 8Right-click the chart, choose Indicators…, find TradeLogSyncV3 in the list on the left and double-click it. That is the name NinjaTrader lists it under; on the chart it then reads TradeLog Sync with its version.
- 9Fill in the settings on the right — the next section says which ones and in what order — then press OK.
Your first setup, in order
- 1Setting 1.1 API Key: paste the key you copied from TradeLog. Paste it exactly, with no spaces before or after. Nothing works without this one.
- 2Setting 2.1 Risk per trade - manual override ($): leave it empty unless you want to run without TradeLog driving your risk. Normally your risk comes from Strict Risk Management in the app and this box is ignored.
- 3Setting 2.2 Default reward:risk: how far the Take-Profit line is first drawn compared with the stop. You can drag it on every trade.
- 4Setting 3.2 Guardian: watch every symbol on the account: leave it ON so the whole account is protected, not only this chart.
- 5Setting 6.1 Write diagnostics to the Output window: leave it OFF. Turn it on only when support asks.
Every setting, explained
This is the complete Parameters list, in the order NinjaTrader shows it, generated from the robot itself so it cannot drift from what is on your screen. The numbers are the ones you can quote to support.
The settings below are shown exactly as they appear in the NinjaTrader Parameters dialog, in English. NinjaTrader does not translate them, so the words here match the words on your screen.
1. TradeLog Account
- 1.1API KeyDefault: (empty)
- START HERE. Your TradeLog API key, so the robot can reach your account. Where to find it: sign in at tradelog.cot-reports.com, then Settings -> API Keys. Paste it exactly as shown. Without a key the robot cannot size a trade or send anything to your journal.
2. Risk
- 2.1Risk per trade - manual override ($)Default: 0
- OPTIONAL. Normally your Risk comes from TradeLog: whatever you set under Strict Risk Management in the app is what the robot uses, and this box is ignored. Fill it in only to run WITHOUT that - then also switch on 'Use the manual Risk above' below. Example: 500 means a stop-out costs about 500. 0 = nothing is trimmed (fail-safe).
- Accepted range: 0 or more
- 2.2Default reward:riskDefault: 2
- How far the Take-Profit line is first drawn compared with the Stop-Loss distance. 2 means the target sits twice as far from entry as the stop. You can always drag the line afterwards.
- Accepted range: 0.1 to 100.0
- 2.3Maximum contracts per orderDefault: 100
- A fat-finger ceiling: the panel never sends more than this many contracts in one order, whatever the Risk works out to. 0 = no ceiling.
- Accepted range: 0 or more
- 2.4Size up to the full RiskDefault: OFF
- OFF by default. ON = when a plan would risk LESS than your Risk, the robot adds contracts until it reaches it, and your Stop-Loss stays exactly where you put it. Only if the contract count hits your 'Maximum contracts per order' cap first does the Stop-Loss move AWAY from entry instead - and the panel says so when it happens. Example: Risk 150, one contract risks 1.50 - it takes 100 contracts, so with a 100 cap nothing moves; with a 20 cap the stop moves out until 20 contracts risk the full 150. One of the two settings that can INCREASE position size, which is why it is off unless you turn it on.
- 2.5Allow 1 contract even if it exceeds the RiskDefault: OFF
- OFF by default. When your Stop-Loss is so far from Entry that even ONE contract would risk more than your Risk, the panel refuses and shows Contracts: 0. ON = it places that one contract anyway and says in red, on the panel, that you are over your Risk. It NEVER places more than one, so the overshoot is only ever what a single contract costs at the stop you drew. Example: Risk 500 on ES with a 55-tick stop - one contract risks 687.50. The second of the two settings that can INCREASE what you lose, which is why it is off unless you turn it on.
3. Protection
- 3.1Use the manual Risk above instead of TradeLogDefault: OFF
- OFF (default, recommended) = your Risk comes from TradeLog and the box above is ignored. ON = run without TradeLog driving the Risk: the Guardian trims to the manual amount above instead. Switch this on only if you want the robot to ignore the app.
- 3.2Guardian: watch every symbol on the accountDefault: ON
- ON (default) = the whole account is protected, not only the instrument on this chart - including trades you opened outside the TradeLog panel. OFF = only this chart's instrument is protected and every other instrument is left alone. This is SCOPE only - it never switches trimming on by itself. With the robot on several charts of one account, only ONE of them trims; the others say so on their panel.
4. Sync
- 4.1Sync interval (seconds)Default: 30
- How often open positions are sent to your TradeLog journal. Lower = fresher, and more requests. 30 suits almost everyone.
- Accepted range: 10 to 300
5. Display
- 5.1Show the trading panelDefault: ON
- ON (default) = the Buy/Sell panel is drawn on the chart. OFF = no panel; the robot still watches and protects, it just gives you nothing to click.
- 5.2Panel coloursDefault: Dark
- Auto = follow the chart background. Or force Light / Dark.
- AutoLightDark
- 5.3Panel positionDefault: TopLeft
- Which corner of the chart the panel starts in. You can also drag it by its header.
- TopLeftTopRightBottomLeftBottomRight
- 5.4Messages on the chartDefault: Expanded
- Where the message card starts: Expanded (default) or Collapsed (only its header chip, for a clean chart). The arrow opens and closes it either way, and an ALARM is never missed - while one is standing the folded chip turns red and carries the warning mark.
- ExpandedCollapsed
- 5.5Show shortcut keys on the buttonsDefault: ON
- ON (default) = each button shows the key that triggers it - BUY (B), SELL (S), LONG (L), SHORT (K), MARKET/PENDING (O), REFRESH (R). The keys keep working either way; this changes the LABEL only.
- 5.6Show tooltips on active buttonsDefault: OFF
- OFF (default) = hovering a button that is READY to be pressed shows nothing, so the panel never covers the chart while you wait for your moment. ON = every button explains what the press will do. A button that is GREYED OUT always explains why it cannot be pressed, whatever this is set to - that reason exists nowhere else. The 'i' in the panel header is exempt for the same reason.
- 5.7Labels on the plan linesDefault: ON
- ON (default) = each Entry / Stop-Loss / Take-Profit line carries a small label with its price.
- 5.8Label text colourDefault: White
- The colour of the words inside the Entry / Stop-Loss / Take-Profit label. The label itself is a filled marker in the LINE'S own colour (blue / red / green), the way NinjaTrader draws its own order labels, so White (default) reads on all three. Choose Black if you prefer dark text on the coloured marker.
- BlackWhite
- 5.9Label positionDefault: Left
- Where each label sits on its line. Left (default) = in a box at the left end of the line, set back from the right-hand price scale, the way NinjaTrader keeps its own order labels clear. Center = over the middle of the line.
- CenterLeft
- 5.10How long the plan lines areDefault: To last candle
- To last candle (default) = the lines stop at the newest candle, like a NinjaTrader order line. To right edge = they carry on past it, so you can read the level against price. Full width = right across the visible chart.
- To last candleTo right edgeFull width
- 5.11Prices on the price scaleDefault: ON
- ON (default) = the Entry / Stop-Loss / Take-Profit prices also appear on the price scale at the right. OFF = the lines and their labels stay exactly as they are, with no price on the scale.
- 5.12Stop-Loss line follows priceDefault: ON
- ON (default) = while you are setting a trade up, the Stop-Loss line is pushed along so it stays on the correct side of Entry - never back towards Entry. PLANNING LINES ONLY: it can never move a stop on a trade you have already opened.
- 5.13Take-Profit line follows priceDefault: ON
- ON (default) = the same for the Take-Profit line, so the market cannot end up past your target before you have even entered. PLANNING LINES ONLY: it can never move a target on a trade you have already opened.
- 5.14First Stop-Loss distance (ticks)Default: 0
- How far from Entry the Stop-Loss line is drawn the FIRST time, in ticks. 0 = automatic, from recent volatility. Set a value if the lines seed too close together to grab with the mouse. DISPLAY ONLY - you still drag the lines to your real levels, and position size is always calculated from where you drag them.
- Accepted range: 0 to 1000000
- 5.15First Take-Profit distance (ticks)Default: 0
- How far from Entry the Take-Profit line is drawn the FIRST time, in ticks. 0 = automatic, from the reward:risk above. DISPLAY ONLY - you still drag the lines to your real levels.
- Accepted range: 0 to 1000000
6. Advanced
- 6.1Write diagnostics to the Output windowDefault: OFF
- OFF (default). ON = the robot prints what it is doing, for support. It does not change how it trades.
The panel, and what it tells you
The panel tells you what it is doing in words rather than leaving you to guess. A grey button always explains why it cannot be pressed, and the message card under the panel carries anything that needs your attention. The important ones are below.
How to read the R numbers
Two figures on the panel carry a letter, and the letter says which question was asked. F is Financial R and it is about money: the amount divided by the Risk you set for one trade, so "-0.92R F" means you are down 92% of one trade's risk. It divides by the risk you planned, not by the risk your rounded contract count actually takes — which is why the same plan can show 1.67R F on the reward line while the ratio above it reads 1 : 2.0. NinjaTrader has no commission setting for the robot to read, so F is the raw money from price, before what your broker charges. T is Technical R and it is about distance: "Risk to Reward (T) 1 : 2.0" means the target sits twice as far from entry as the stop. T is a ratio, never a multiple — that is why it is written 1 : 2.0 and not 2.00R.
Messages are shown in the robot's own words, in English, so you can match what is on your chart letter for letter. The explanation under each one is translated.
Chart — the message card under the panel
A tail added to the STOP/TARGET over-protection alarm when a second instrument is also over-protected. It never appears on its own.
What to do. Check that instrument as well.
Chart — the message card under the panel
A tail added to an orphan- or resting-order alarm when a SECOND instrument has the same problem. It never appears on its own — look for it at the end of one of those lines.
What to do. Check your other instruments too — the message names only the first.
Chart — the message card under the panel
The same tail when several more instruments are over-protected. It never appears on its own.
What to do. Check every open instrument as well.
Chart — the message card under the panel
The same tail when several more instruments are affected. It never appears on its own — look for it at the end of an orphan- or resting-order alarm.
What to do. Check every open instrument — the message names only the first.
Chart — the message card under the panel
An ATM strategy owns the protection on that instrument. NinjaTrader forbids anything outside the ATM from resizing it, so the robot has stopped trimming that instrument.
What to do. Reduce the position from the ATM itself, or close it.
Chart — the message card under the panel
An older version of this robot is still installed on this machine. If both are on charts, two copies are watching the same account and both may act.
What to do. Remove the old one from every chart, delete its file from Documents\NinjaTrader 8\bin\Custom, and press F5 in the NinjaScript Editor. Keep only the current one.
Panel — the licence row, and the sentence on the chart
The Risk value should come from TradeLog, but the connection is not confirmed.
What to do. Check the API key first — that is the usual cause. If the key is right and your own connection is fine, ours is down; the robot keeps retrying and your broker link is unaffected.
Panel — the licence row, and the sentence on the chart
A refresh of the Risk value from TradeLog is in flight.
What to do. Wait a moment.
Panel — the licence row, and the sentence on the chart
The Risk value is being read from your TradeLog account right now.
What to do. Wait a moment. Sizing arms as soon as it arrives.
Chart — the message card under the panel
NinjaTrader raised an error when the robot asked which account is selected.
What to do. Re-pick the account in Chart Trader. If it keeps happening, send us the Output window.
Chart — the message card under the panel
The robot reads which account to protect from Chart Trader, and Chart Trader is not open.
What to do. Open Chart Trader on this chart and select your account.
Panel — the red alarm banner
The same state, when the close was cancelled or rejected rather than failing outright.
What to do. Close it in NinjaTrader, or place a stop by hand, right now.
Panel — the red alarm banner
The robot cancelled your stop and target in order to close, and then the close itself failed. You are holding a position with nothing behind it.
What to do. Close it in NinjaTrader, or place a stop by hand, right now. Then send us the Output window.
Chart — the message card under the panel
A stop or target order is still working on an instrument where you have no position. If it fills, it opens a new trade.
What to do. Cancel it — CANCEL PENDING on the panel, or in NinjaTrader.
Panel — the red alarm banner
The banner form of the orphan-exit-order alarm.
What to do. Cancel that order — CANCEL PENDING, or in NinjaTrader.
Chart — the message card under the panel
The robot has no account to protect, so it is not trimming anything. The rest of the sentence says exactly why.
What to do. Follow the reason given. In almost every case it is Chart Trader: open it and pick your account.
Chart — the message card under the panel
Chart Trader is open but no account is chosen, so there is nothing to protect.
What to do. Pick your account in the Chart Trader account dropdown.
Chart — the message card under the panel
The reason the robot could not bind to an account, in plain words.
What to do. Open Chart Trader on this chart and select your account. If the chart is still loading, wait a few seconds.
Panel — the red alarm banner
A protection alarm is standing but the specific wording could not be resolved. The message card under the panel carries the detail.
What to do. Read the message card. If it is empty too, send us a screenshot and the Output window.
Panel — the red alarm banner
Your resting stop covers fewer contracts than you hold — the numbers in brackets are stop size against position size. The uncovered part has no floor under its loss.
What to do. Increase the stop order to cover the whole position, or reduce the position to match the stop.
Panel — the red alarm banner
The worst outcome the panel can report. A close over-filled and you are now in a position the OTHER WAY round, with nothing protecting it.
What to do. Flatten it by hand in NinjaTrader, immediately. Do not wait for the robot to fix it — it will not.
Panel — the red alarm banner
The full sentence for the line above: the close reversed you and the new position is naked.
What to do. Flatten manually in NinjaTrader now.
Chart — the message card under the panel
The robot has not finished binding to an account yet.
What to do. Wait a few seconds.
Chart — the message card under the panel
The protective orders cover MORE contracts than you actually hold. If they trigger, they will close your position and open the opposite one.
What to do. Resize or cancel the excess order by hand. This is the one case the robot will not fix for you.
Panel — the red alarm banner
The banner form of the over-protection alarm.
What to do. See that message: resize or cancel the excess order by hand.
Chart — the message card under the panel
An order this robot created never reached the broker. A cancel on it is accepted but never completes, and a CLOSE will wait on it and time out.
What to do. Press Close again — that has cleared it before. If it does not, restart NinjaTrader and send us the Output window.
Panel — the red alarm banner
The banner form of the stuck-order alarm.
What to do. Press Close again; if it does not clear, restart NinjaTrader and send us the Output window.
Chart — the message card under the panel
The same as the line above, with more than one stuck order.
What to do. Press Close again; if that does not clear it, restart NinjaTrader and send us the Output window.
Chart — the message card under the panel
The account that was selected has gone — usually a disconnected connection.
What to do. Reconnect in NinjaTrader, then re-pick the account in Chart Trader.
Chart — the message card under the panel
The chart is not finished opening yet.
What to do. Wait a few seconds.
Chart — the message card under the panel
The robot was added somewhere that is not a chart — a Market Analyzer column or a SuperDOM. There is no Chart Trader there, so it has no account and stays inert.
What to do. Remove it from there and add it to a CHART instead.
Chart — the message card under the panel
The robot tried to trim that instrument and could not, so it has stood down until you are flat again. The end of the sentence names the exact cause.
What to do. Act on the named cause — usually resizing or cancelling an order by hand. Trimming resumes on the next position.
Chart — the message card under the panel
Your TradeLog account has hit a limit you set, and trading is blocked until it resets.
What to do. Open your TradeLog journal to see which limit and when it resets.
Chart — the message card under the panel
The same block, when the server did not say which limit was hit.
What to do. Open your TradeLog journal to see which limit and when it resets.
Chart — the message card under the panel
TradeLog could not be reached to check your limits, so trading is paused rather than allowed past a limit that might already be hit.
What to do. Nothing — it resumes on its own once the check succeeds, and your broker connection is not involved. If it lasts and your own connection is fine, the problem is ours.
Chart — the message card under the panel
An account is selected, but the robot cannot work out which one it is, so it refuses to trim rather than trim the wrong account.
What to do. Re-pick the account in Chart Trader on this chart. If it persists, send us the Output window.
Chart — the message card under the panel
Not a problem. You have the robot on more than one chart of this account, and another chart is the one doing the trimming. Only ever one does, on purpose.
What to do. Nothing. The named chart is protecting the account. Everything else on this chart works normally.
Chart — the message card under the panel
You have an open position with no stop-loss order behind it. The robot cannot measure a risk that does not exist, so it cannot protect you on this one.
What to do. Place a Stop Market order for that position now, or close it.
Chart — the message card under the panel
A working order is sitting on an instrument you are flat on. It can fill at any time.
What to do. Leave it if you meant it. Cancel it if you did not.
Chart — the message card under the panel
Not a warning — this is the panel repeating its Risk Source line on the chart because the row was too narrow to show it whole.
What to do. Nothing. Widen the panel if you would rather read it there.
Chart — the message card under the panel
While sizing up to your full Risk, the contract cap was reached first, so the Stop-Loss was moved further out instead. Your risk in money is unchanged; the stop is not where you drew it.
What to do. Nothing, if that is what you wanted. Raise 2.3 Maximum contracts per order, or turn off 2.4 Size up to the full Risk, to keep the stop exactly where you put it.
Chart — the message card under the panel
There is a stop order on the same side as your position. If it triggers it will ADD to the position instead of closing it.
What to do. Cancel that order. CLOSE POSITION cancels it along with the position; CANCEL PENDING removes it once you are flat.
Chart — the message card under the panel
The only protection on that position is a stop-LIMIT. A stop-limit can trigger and never fill, so it does not put a floor under the loss.
What to do. Replace it with a Stop Market order.
Chart — the message card under the panel
The stop and the target are not tied together, so filling one will not cancel the other. You could be left with a live order after the trade is over.
What to do. When one of them fills, cancel the other by hand.
Panel — the status row
Appended to a cancel: some orders belong to a strategy or ATM, so the robot did not touch them.
What to do. Cancel those where they were placed.
Panel — the status row
Even one contract would risk more than your limit at this stop distance, so the panel refuses to place it.
What to do. Move the Stop-Loss closer to the entry, raise 2.1 Risk per trade, or switch on 2.5 to allow the single contract deliberately.
Panel — the status row
The full sentence behind the line above.
What to do. Tighten the stop or raise the Risk.
Panel — the status row
The full sentence behind "Close in progress".
What to do. Wait a second.
Panel — the status row
The full sentence behind "Risk trim settling".
What to do. Wait a second.
Inside another message, where it names the reason
Why the Guardian stood down: it may shrink a hand-placed order but never cancel it, so it cannot go below one contract.
What to do. Cancel that order by hand if you want the position trimmed further.
Panel — the status row
The full sentence behind "Resting order — no SL/TP will attach". If it fills it will be naked.
What to do. Cancel it in NinjaTrader, or be ready to set its protection by hand.
Inside another message, where it names the reason
Why the Guardian stood down: an order larger than the position is not protection, so it will not act on it.
What to do. Resize or cancel that order by hand.
Panel — the status row
The full sentence behind "Resting order — owned by a strategy".
What to do. Cancel it where you placed it, not from this panel.
Inside another message, where it names the reason
Your TradeLog plan does not currently allow the robot.
What to do. Renew your plan, then press REFRESH.
Panel — the status row
This NinjaTrader account has not been linked to TradeLog, so no Risk can be read for it.
What to do. Link the account in TradeLog, then press REFRESH.
Panel — the status row
The folded message card, red, because at least one of the lines behind it is an ALARM.
What to do. Click it — an alarm is never hidden without saying so.
Panel — the status row
HALF and QUARTER cannot act on a position an ATM owns.
What to do. Use CLOSE POSITION, or scale out from the ATM itself.
Inside another message, where it names the reason
Why the Guardian stood down: an ATM strategy owns the protection and NinjaTrader forbids resizing it from outside.
What to do. Reduce the position from the ATM, or close it.
Panel — the status row
The full sentence behind "Order in progress".
What to do. Wait a second.
Inside another message, where it names the reason
TradeLog answered and rejected the key. Nothing is wrong with your subscription.
What to do. Copy the key again from your TradeLog account and paste it into the robot inputs.
Inside another message, where it names the reason
No TradeLog API key has been entered at all.
What to do. Paste your key into the robot inputs. It is on your TradeLog account page.
Panel — the status row
The Stop-Loss and Take-Profit could not be attached to a fill. The position is open and UNPROTECTED.
What to do. Set a stop by hand right now, or close the position. Then send us the Output window.
Panel — the status row
The cancel was sent for several resting orders.
What to do. Nothing — confirm they disappear from your Orders tab.
Panel — the status row
The cancel was sent for one resting order.
What to do. Nothing — confirm it disappears from your Orders tab.
Inside another message, where it names the reason
The connection to TradeLog was confirmed once and has since aged out — we cannot reach our own server. Nothing is wrong with your subscription or your key, and your BROKER connection is untouched: charts, orders and open positions carry on normally.
What to do. Check your own connection, then press REFRESH. If yours is fine, the problem is ours and the robot keeps retrying. You can still CLOSE an open position from the panel meanwhile.
Inside another message, where it names the reason
The Guardian stood down and the reason was not recorded — this one should not happen.
What to do. Send us the Output window; we want to see this.
Panel — the status row
An error was raised while closing. The text after the colon is NinjaTrader’s own.
What to do. Check the position in NinjaTrader and close it there if it is still open.
Panel — the status row
A close is still settling.
What to do. Wait a second.
Panel — the status row
NinjaTrader refused to create the closing order.
What to do. Close the position in NinjaTrader directly, then send us the Output window.
Inside another message, where it names the reason
The link word: TradeLog is reachable and your account is confirmed.
What to do. Nothing.
Inside another message, where it names the reason
The link word: the first check is in flight.
What to do. Wait a moment.
Panel — the status row
The robot is establishing its connection to TradeLog.
What to do. Wait. If it stays here, check the API key and the connection.
Inside another message, where it names the reason
The full sentence behind "Connecting to TradeLog".
What to do. Wait. If it stays here, check the API key.
Panel — the status row
The instrument is not priced in your account currency. The robot will not guess an exchange rate, so it refuses to size rather than give you a wrong number.
What to do. Trade this instrument from an account in its own currency.
Panel — the status row
The panel is showing a newer version, and this is where the file is. It appears on the badge hover when the server did not send a direct link, and in the Output window once per session.
What to do. Open tradelog.cot-reports.com, go to Connections, and download the NinjaTrader robot. Then in NinjaTrader: Tools then Remove NinjaScript Assembly, remove the TradeLog entry, and import the new zip from Tools then Import.
Panel — the status row
The flatten was accepted but the position is still not flat.
What to do. Use NinjaTrader's own Close button.
Panel — the status row
NinjaTrader refused the flatten.
What to do. Use NinjaTrader's own Close button. Then send us the Output window.
Panel — the status row
The position is ATM-owned, so the robot is using NinjaTrader’s own flatten — which also cancels working orders on this instrument, entries included.
What to do. Nothing, but check your working orders afterwards.
Panel — the status row
On the Open Risk row: your stops now guarantee a profit. The figure beside it is how much.
What to do. Nothing. This is good news.
Inside another message, where it names the reason
Some connections do not report free margin to NinjaTrader. When they do not, the robot says so rather than implying it checked.
What to do. Nothing — your connection still checks margin when the order is submitted.
Inside another message, where it names the reason
The full sentence for the line above.
What to do. Nothing; the broker still checks at submission.
Panel — the status row
The folded message card. The number beside it is how many lines are behind it.
What to do. Click it to open them.
Panel — the status row
The smallest tradable size already costs more than your Risk at this stop distance. The panel tells you exactly how much more.
What to do. Move the Stop-Loss closer to the entry, or raise 2.1 Risk per trade.
Inside another message, where it names the reason
The link word: TradeLog refused this account — a lapsed plan or a bad key.
What to do. Check your plan and your API key.
Panel — the status row
The Entry line has no usable price.
What to do. Drag the Entry line onto a real price level.
Inside another message, where it names the reason
Your account reports no free margin, so the broker may refuse this order.
What to do. Close something, or reduce the size.
Inside another message, where it names the reason
The full sentence for the line above.
What to do. Close something, or reduce the size.
Panel — the status row
There is no bid or ask yet to measure a MARKET entry from.
What to do. Wait for the next price and press again.
Panel — the status row
A label on the exit row: you are flat on this instrument.
What to do. Nothing.
Panel — the status row
The Entry / Stop-Loss / Take-Profit lines are not on the chart, so there is no plan to place.
What to do. Press L for a long plan or K for a short plan, position the lines, then press BUY or SELL.
Inside another message, where it names the reason
The full sentence behind "API key required".
What to do. Paste your key into 1.1 API Key.
Inside another message, where it names the reason
The link word: the robot cannot reach the TradeLog licence server right now. It keeps retrying, and your broker connection is not affected — orders and open positions are untouched.
What to do. Nothing while your licence still has time on it. If it stays amber for days and your own connection is fine, the problem is ours — tell us.
Panel — the status row
You do not hold enough contracts to take a half or a quarter.
What to do. Use CLOSE POSITION.
Panel — the status row
An order is still being placed. The panel arms again when it completes.
What to do. Wait a second.
Panel — the status row
Your pending entry is waiting at the broker. Its stop and target are NOT there yet — the robot attaches them the moment it fills.
What to do. Leave the chart open until it fills.
Panel — the status row
You typed an Override larger than the Risk the Guardian trims to, so it was capped down. A bigger size would have been trimmed the moment it filled.
What to do. Nothing — this is the panel keeping the two consistent. Raise 2.1 if you want a bigger size.
Panel — the status row
The Risk in use is the amount you typed into the Override box on the panel, not your usual per-trade Risk. It applies until you clear the box.
What to do. Nothing, if that is what you wanted. Clear the Override box to go back to your usual Risk.
Panel — the status row
A label on the position row: you have resting orders but no open position.
What to do. Nothing.
Panel — the status row
A label on the exit button — CLOSE POSITION closes the whole position.
What to do. Nothing.
Panel — the status row
Your open position already uses the whole Risk, so adding to it would go over.
What to do. Close part of the position to make room, or leave it as it is.
Panel — the status row
NinjaTrader did not return the position this time.
What to do. Wait for the next update. If it persists, check the connection.
Panel — the status row
The worst state the panel can show: the protective orders were cancelled and the close did not go through, so you hold a position with nothing behind it.
What to do. Act immediately — close it in NinjaTrader, or place a stop by hand.
Panel — the status row
The resting stop covers fewer contracts than you hold. Part of the position is unprotected.
What to do. Increase the stop order to cover the whole position, or reduce the position.
Panel — the status row
The two kinds of R this robot prints. F (Financial) is a multiple of the Risk you set for one trade, so it answers "how much of one trade of risk is this?". T (Technical) is the shape of the plan on the chart, so "1 : 2.0" means the target is twice as far from entry as the stop. The same two letters the TradeLog journal uses, so the robot and the journal read alike.
What to do. Nothing — it is a legend. Hover the "Risk to Reward (T)" caption on the panel to see it again.
Panel — the status row
A Risk refresh from TradeLog is in flight.
What to do. Wait a moment.
Panel — the status row
A pending entry from this panel is still live at the broker, but the robot has stopped tracking it. If it fills it will have no stop and no target.
What to do. Cancel it in NinjaTrader, or be ready to set its protection by hand.
Panel — the status row
There is a working order on this instrument that this robot did not place. It is real exposure, and the robot will not attach protection to it.
What to do. Manage it where it was placed, or cancel it.
Panel — the status row
A strategy or ATM owns the resting order, so the robot will not touch it — cancelling one leg of a bracket can leave a position unprotected.
What to do. Cancel it where you placed it.
Panel — the status row
The full sentence behind the line above.
What to do. Check the API key and the connection, then press REFRESH.
Panel — the status row
The full sentence behind "Syncing Risk".
What to do. Wait a moment.
Panel — the status row
The Guardian is part-way through trimming this instrument.
What to do. Wait a second.
Panel — the status row
The Risk could not be read from TradeLog, so nothing can be sized.
What to do. Check the API key and the connection, then press REFRESH.
Panel — the status row
On the Open Risk row: your stops sit exactly at breakeven, so the trade can no longer lose.
What to do. Nothing.
Panel — the status row
The Risk in use was reduced to the room left on an open position, so a new entry cannot push you over your limit.
What to do. Nothing. Close part of the position if you want more room.
Inside another message, where it names the reason
The link word: no API key has been entered yet.
What to do. Paste your key into 1.1 API Key.
Panel — the status row
A label on the position row, before the number of contracts you hold.
What to do. Nothing.
Panel — the status row
The short form on the status row of the SL-extended note explained above.
What to do. See that note.
Panel — the status row
A short plan needs its stop above the entry, and yours is not.
What to do. Drag the Stop-Loss above the Entry line, or press L for a long plan instead.
Panel — the status row
A long plan needs its stop below the entry, and yours is not.
What to do. Drag the Stop-Loss below the Entry line, or press K for a short plan instead.
Panel — the status row
A partial close would leave more stop than position — the one outcome the robot refuses to create.
What to do. Use CLOSE POSITION, or resize the stop by hand first.
Panel — the status row
You pressed BUY or SELL with no Stop-Loss. Without one there is no defined risk to size against.
What to do. Drag the Stop-Loss line to where you want it, then press again.
Panel — the status row
The full sentence behind "Override capped to Risk".
What to do. Nothing. Raise 2.1 Risk per trade if you want a bigger size.
Inside another message, where it names the reason
TradeLog answered and said this account does not have an active subscription that covers the robot. This one IS about the subscription — the other three below are not.
What to do. Renew or upgrade at tradelog.cot-reports.com. The panel arms itself once that is done.
Panel — the status row
The Risk for this account is still being read from TradeLog.
What to do. Wait. Sizing arms as soon as it arrives.
Panel — the status row
The cancel never reached the broker. The order is still live.
What to do. Cancel it in NinjaTrader.
Panel — the status row
The full sentence behind "No entry price".
What to do. Drag the Entry line onto a real price.
Panel — the status row
The full sentence behind "Order resting — SL/TP on fill".
What to do. Leave the chart open until it fills, so the robot can attach the protection.
Panel — the status row
The plan lines were removed between drawing them and pressing.
What to do. Press L or K to draw them again, position them, then press BUY or SELL.
Panel — the status row
NinjaTrader did not return the instrument when you pressed.
What to do. Press again in a moment.
Panel — the status row
The full sentence behind "Currency mismatch". The robot will not invent an exchange rate.
What to do. Trade this instrument from an account in its own currency.
Panel — the status row
A long plan needs its stop below entry.
What to do. Drag the stop below Entry, or press K for a short plan.
Panel — the status row
A long plan needs its target above entry.
What to do. Drag the Take-Profit above Entry.
Panel — the status row
The full sentence behind "Position already at the full Risk".
What to do. Close part of the position to make room, or leave it.
Inside another message, where it names the reason
Why the Guardian stood down: it could not read the orders, and it will not reduce a position behind protection it never measured.
What to do. Check that NinjaTrader is connected, then press REFRESH.
Panel — the status row
The account’s orders could not be read, so the robot cancelled nothing rather than guess.
What to do. Check the connection and press again.
Panel — the status row
You pressed SELL while a LONG plan is drawn, so the stop is on the wrong side for that order.
What to do. Press K to draw a short plan, then press SELL.
Panel — the status row
You pressed BUY while a SHORT plan is drawn, so the stop is on the wrong side for that order.
What to do. Press L to draw a long plan, then press BUY.
Panel — the status row
The full sentence behind "Volume = 0".
What to do. Move the stop closer to entry, or raise your Risk.
Panel — the status row
The full sentence behind "Position unavailable".
What to do. Wait for the next update.
Panel — the status row
The full sentence behind "Flatten did not complete".
What to do. Use NinjaTrader's own Close button.
Inside another message, where it names the reason
Why the Guardian stood down: trimming would have left part of the position unprotected.
What to do. Add stop coverage, or reduce the position by hand.
Inside another message, where it names the reason
Why the Guardian stood down: NinjaTrader refused the resize attempts.
What to do. Resize or cancel the order by hand.
Panel — the status row
A short plan needs its stop above entry.
What to do. Drag the stop above Entry, or press L for a long plan.
Panel — the status row
A short plan needs its target below entry.
What to do. Drag the Take-Profit below Entry.
Panel — the status row
The full sentence behind "Bracket attach failed". The position is open and unprotected.
What to do. Set a stop by hand now, or close the position. Then send us the Output window.
Inside another message, where it names the reason
The full sentence behind "API key invalid".
What to do. Re-copy the key from Settings then API Keys and paste it again.
Panel — the status row
The full sentence behind "Resting order — nothing will protect it".
What to do. Manage it where it was placed, or cancel it.
Panel — the status row
The full sentence behind "No market price yet".
What to do. Wait for the next price and press again.
Panel — the status row
The full sentence behind "Account not linked to TradeLog".
What to do. Link the account in TradeLog, then press REFRESH.
Panel — the status row
A long plan needs its target above the entry.
What to do. Drag the Take-Profit above the Entry line.
Panel — the status row
A short plan needs its target below the entry.
What to do. Drag the Take-Profit below the Entry line.
Panel — the status row
The full sentence behind "TradeLog disconnected". Your broker connection is not affected.
What to do. Check your own connection. If it is fine, ours is down — the robot keeps retrying either way.
Panel — the status row
TradeLog could not be reached. The robot keeps retrying on its own, and your broker connection is not affected.
What to do. Check your own connection. If it is fine, the problem is on our side.
Inside another message, where it names the reason
The robot cannot reach TradeLog. Nothing is wrong with your subscription or your key, and your BROKER connection is untouched: charts, orders and open positions carry on normally. Sizing is off because the risk figure comes from TradeLog and we will not guess one.
What to do. Nothing. It keeps retrying. You can still CLOSE an open position from the panel while this is showing — closing is never blocked.
Panel — the status row
On the Open Risk row: some of your contracts have no stop behind them, so the loss on this position has no ceiling.
What to do. Place a stop covering the whole position.
Panel — the status row
The plan sizes to zero contracts — usually a stop so far away that nothing fits inside your Risk.
What to do. Move the Stop-Loss closer to the entry, or raise 2.1 Risk per trade.
Panel — the status row
The full sentence behind "Stop-Loss required".
What to do. Drag the Stop-Loss line into place, then press again.
The Guardian
The Guardian is the part that acts without you clicking, so it is worth knowing exactly what it does. It compares what an open position would lose if its stop were hit against your risk per trade. If the loss would be larger, it reduces the position until it is not. It closes part of the trade; it never moves your stop. With setting 3.2 ON it watches every instrument on the account, including trades you opened outside the panel.
Updating the robot
The panel tells you when a newer build exists: the header shows "Update available" with the version. Updating is a remove-then-import, not an overwrite — if the old assembly is still installed, NinjaTrader refuses the import with "duplicate method names".
- 1Download the new zip from your Connections page in TradeLog. Its name carries the version, so you can tell it apart from the one you already have.
- 2In NinjaTrader, close every chart that has the robot on it.
- 3Control Center → Tools → Remove NinjaScript Assembly… → select the TradeLog entry (its name carries the version) → Remove. NinjaTrader recompiles.
- 4Control Center → Tools → Import → NinjaScript Add-On… → pick the new zip. The third-party warning appears again — press OK.
- 5Close NinjaTrader completely and open it again. This is not optional: .NET does not unload an assembly, so until you restart, the old robot is still the one running — the panel keeps showing the old version and the update badge even though the new file is already on disk.
- 6Re-open your chart and add the robot to it. Check that the version in the panel header is the one you just installed.
NinjaTrader cannot switch this robot off
NinjaTrader disables a running strategy on its own Close or Flatten. The TradeLog robot is not one, so it survives those actions and keeps protecting the account.
Frequently asked questions
- Nothing happened after I imported it. The import puts the robot into NinjaTrader; it does not put it on a chart. Right-click your chart, choose Indicators…, find TradeLogSyncV3 and double-click it.
- I click a settings box and my typing does not go in. That is the NinjaTrader Parameters grid, not the robot: click once to select the cell, once more to edit it.
- My old trades did not appear. NinjaScript cannot read executions from before the robot was running. Export them from Control Center, Trade Performance, Executions, and upload the CSV in TradeLog — it merges onto the same trades.
- Can I run it on two accounts? Yes, on as many charts and accounts as you like. Keep setting 3.2 ON and only one chart per account does the trimming.
- The panel says an update is available. It is a notice, not a block. Download the new file from Connections and import it the same way.
- The panel still shows the old version and "Update available" after I updated. You have not restarted NinjaTrader yet. Removing and importing changes the file on disk; the copy already loaded in memory keeps running until NinjaTrader is closed and opened again.
If something goes wrong
One message with everything in it gets a useful answer on the first try. Here is what to send.
- 1The version number from the panel header.
- 2The last 30 lines from the NinjaTrader Output window. Turn setting 6.1 ON, then open Control Center, New, Output; reproduce the problem; right-click inside the window and choose Select All, then Copy.
- 3A screenshot of the whole chart with the panel visible.
- 4What you did, what you expected, and what happened instead.
Version history
Version numbers are the ones the panel shows in its header. If yours is older, download the robot again from your Connections page.
Was this helpful?