SHOGUNexecution platform
Documentation

Setup, and what to do when an alert does not arrive.

Sections 1 to 8 are the setup, in order, and take about twenty minutes. Sections 9 to 14 are the ones you will actually come back to. If you are mid-session and something is wrong, start at section 9 — nothing arrived.

SECTION 01Before you start

Shogun runs entirely on your own Windows PC. It places real orders on your own broker accounts with your own sizing. Nothing of ours executes anything, and nothing you set up here can reach anyone else's accounts — or theirs yours.

A Windows PC
Shogun is a single .exe of about 16 MB. No installer, no Python, no admin rights. It has to stay running to act on an alert.
Edge or Chrome installed
Both broker connections are browser-driven, so Shogun opens and drives one browser window per firm you connect. Edge ships with Windows, so this is almost always already true.
Your licence key
A long string, sent to you separately from the download. It activates the machine.
A broker account
On Rithmic (R|Trader Pro web — how Bulenox and Apex clear) or TopstepX. Those are the two platforms Shogun drives today; ask us before buying if yours is elsewhere.
Your own TradingView strategy
With an alert you can fire. Shogun does not include strategies or signals — you bring them.
Start on a practice account

This is early software placing real orders. Point it at an evaluation or practice account first — not at an account you cannot afford to have a bad day on.

SECTION 02Install

Unpack the whole folder to a plain local path, for example C:\Shogun\.

Do not run it from OneDrive, Dropbox or Google Drive

Nor from inside the zip, nor from your Downloads folder. Shogun writes its settings and logs next to itself, and a sync client can move, lock or dehydrate the .exe while it is running. You then get this on launch:

Failed to extract _tcl_data\encoding\cp860.enc: failed to open archive file!

That looks like a corrupt download and is not one. The file is fine — it simply could not read itself while the sync client held it. Copy the folder to C:\Shogun\ and run it there.

Windows will warn you. That is expected.

Shogun is not code-signed yet, so Windows treats it as an app from an unknown publisher. You will see one or both of these, and neither means anything is wrong with the file:

WhenWhat you seeWhat to click
Downloading"isn't commonly downloaded" / "may be dangerous"KeepKeep anyway
First run"Windows protected your PC — SmartScreen prevented an unrecognised app from starting"More infoRun anyway

We tell you up front so a red warning does not make you think you have been sent something dodgy. There is no way around it short of a code-signing certificate, so we publish a checksum instead — verify the file rather than trusting us:

Get-FileHash .\Shogun.exe

Check it against the SHA-256 and byte size published with your download, in the START-HERE.txt and quickstart inside your folder. Check the Shogun.exe, after unpacking — not the zip. If either value does not match, stop and tell us.

SECTION 03First run

Double-click Shogun.exe. It opens its own window. On first run it has no settings, so it opens the Setup page. Work top to bottom.

The Accounts and Signals tabs are empty on a fresh install. That is correct — accounts are read from your broker and signals are yours to name.

Nothing for you to do about security here

Shogun only ever listens on 127.0.0.1, your own machine. That is forced by the build and is not editable, so a bad setting cannot expose it by accident. Nobody on your network and nobody on the internet can reach it.

It also refuses any request that arrives from another website, so a page you have open in another tab cannot drive your panel or fire a flatten.

SECTION 04Activate your licence

  1. Open Setup → the Licence tab.
  2. Licence server — already filled in. Leave it alone.
  3. Licence key — paste your key. This is the only thing you type. It is masked as you type, on purpose: a screenshot of this page is the most common way a key escapes. Press Show if you need to check it.
  4. Press Activate this machine.

It confirms your plan and expiry, and the status turns ACTIVE. Then restart Shogun — it tells you to. The running copy keeps its old answer until it does, which is normal and not a failure.

Your key is never sent back to us after activation and is never written into your config file. It is exchanged once for a signed token, and only that token is stored.

The one thing worth knowing about how this works

Your entitlement is stored locally and signed, and Shogun reads that stored copy rather than calling us on the order path. A network blip or an outage on our side cannot lock a paying customer out of their own trading.

And if your licence does lapse, Shogun may refuse to open a new position — but it will never refuse to close one. See section 14.

SECTION 05Connect your broker

Shogun drives two broker platforms today:

PlatformFirms that clear through it
Rithmic — R|Trader Pro webBulenox, Apex
TopstepXTopstep

Tradovate, NinjaTrader and The Futures Desk appear in the app's list but are not wired — Shogun will refuse to add them rather than put a connection on screen that can never connect. If your firm clears somewhere else, ask us before you buy.

Open the console, add your broker connection, and switch it on. Switching it on is what opens the broker's own login window for you to sign into. Both platforms are browser-driven, so each connection runs its own browser window alongside Shogun.

Two ways to sign in, and the second one is optional

By default you type your password into your broker's own login page, in the window Shogun opens. Shogun never sees it.

If you would rather not retype it every session, you can choose to store the login in Shogun and let it sign in for you. That is encrypted with Windows DPAPI, tied to your Windows account and to that one connection, kept outside the program folder, never written to your config file and never logged — and if no encryption backend is available, Shogun refuses to store it at all rather than keep it in the clear.

Then open Accounts: Shogun reads the account list from the broker itself. Tick the ones you want traded and set the size for each.

Accounts are read from your broker, not invented

Shogun will not conjure an account that your broker did not return. It also treats a zero-account read as a logged-out session rather than an empty fleet, and it only removes accounts when the connector confirms the read was complete — so a bad read never quietly drops your accounts.

If your broker stops listing an account, Shogun tells you it is either paged out or blown and offers to forget it, rather than deciding for you.

SECTION 06Create a signal

A signal is how Shogun knows which of your accounts a given strategy trades. Setup → Signals+ Add signal.

  1. Rename it from Signal1 to something you will recognise. Write that name down exactly — it goes in the alert message in the next section, and case and spaces count.
  2. Tick the accounts this strategy should trade, and set the size for each. A signal with no accounts is received and then correctly ignored.
  3. Save.

You do not need to press Generate. Adding a signal already mints what it needs; that button is there to rotate those values later.

SECTION 07Point TradingView at your webhook

TradingView sends alerts from its own servers, and your PC at home has no public address, so something has to bridge the two. We host that for you. When you activated, your Shogun was given its own webhook on our licence server.

There is no tunnel, no Cloudflare account, no router setting and nothing open on your machine. Go to Setup → LicenceYour webhook — hosted for you. There are two boxes to copy, and they are a pair:

Webhook URL
Paste into the TradingView alert's Webhook URL field. It is already a public https:// address.
Alert secret
Paste inside the alert message, as the secret field below.

The alert message

Paste this into TradingView's Message box:

{
  "name": "YOUR SIGNAL NAME",
  "secret": "YOUR ALERT SECRET",
  "trade_type": "{{strategy.order.action}}",
  "quantity": "{{strategy.order.contracts}}",
  "sentiment": "{{strategy.market_position}}",
  "price": "{{close}}",
  "timestamp": "{{timenow}}"
}
All five keys are required — and a missing one is not refused

name, secret, trade_type, quantity and sentiment all have to be there. On the hosted webhook an incomplete body is not rejected — it is accepted and acted on with defaults, which is worse than an error because nothing tells you:

A missing sentiment means no alert is ever read as an exit. Shogun decides "this closes the position" from sentiment: "flat". Without it, every alert looks like a new entry and your exits never close anything.

A missing quantity silently becomes 1 contract.

price and timestamp are genuinely optional.

The alert must be fired from a strategy, not an indicator — the {{strategy.*}} placeholders only render on a strategy alert.

The four things that break it

  1. Do not retype the {{ }} parts. They are TradingView placeholders — copy them character for character. If you type real numbers there, every alert sends the same values.
  2. The name must match a signal you saved. An alert whose name you have not configured is ignored — safely, but quietly.
  3. Use the two boxes from the Licence tab together. The URL and the alert secret are a pair; one without the other is refused.
  4. Do not share your webhook URL or alert secret. Anyone with both can place trades on your accounts.

SECTION 08Fire a test — you are not set up until you see this

Do not skip this

When this path is broken it fails silently: no error, no rejected order, no warning — just nothing, forever. TradingView will happily report the alert as sent. The only way to know it works is to watch one arrive.

In TradingView, use the alert's Test button, or fire it once manually. Then open this address in a browser on the same PC:

http://127.0.0.1:8000/health

Look at the bus block. routed going from 0 to 1 is the pass. It is the only honest witness that the alert crossed TradingView → our relay → your machine. The main screen says the same thing in words, under Fleet Control: "the relay has DELIVERED 1 signal(s) to it — the path from TradingView to this machine is PROVEN working."

Do not use the Trade Log to check this

The Trade Log renders broker fills. An alert that arrives over the hosted webhook and trades nothing — because no broker is connected yet, or the signal has no accounts ticked — writes no row there. An empty Trade Log after a test fire is not a failure, and reading it as one is the most likely way to conclude a working setup is broken.

There is also a read-only diagnostic that checks the right instruments in the right order, and names which ones your build actually has, so a missing reading cannot be misread as a zero:

python tools/did_it_land.py
What /health saysWhat it means
"routed": 1PASS It arrived and was understood.
"stale": true with a last_errorThe relay poll itself is failing — not TradingView. Do not go looking at the alert.
"lapsed": trueBilling, not breakage. See section 14.
"stale": false, "routed": 0NOT ARRIVED The poll is healthy and the relay had nothing to hand over — so the alert never reached it. Work through section 9.

Give it a few seconds. Your Shogun collects alerts from the hosted webhook rather than being called directly, so an entry arriving a second or two after it fires is normal, not a fault. Exits are never dropped for being late.

SECTION 09Nothing arrived

This is the common one, and it is silent. Check these in order — the first two account for most of it.

  1. Is Shogun actually running?

    It collects the alert itself, so nothing arrives while it is closed. This is the single most likely cause after an overnight — see section 10.

  2. Does the "name" in your alert exactly match the signal you saved?

    Case and spaces count. A name Shogun does not recognise is dropped on purpose and quietly, which looks identical to nothing arriving.

  3. Did you paste the Licence tab's webhook URL and its alert secret — both?

    They are a pair. A wrong or missing secret is refused at our server, so nothing ever reaches your machine. And check the URL is the hosted https:// one, not a localhost address.

  4. Is your licence still active?

    Setup → Licence, or "lapsed": true on the health screen. A lapsed subscription stops the relay handing over any signal — including exits. Panic Close still works; see section 14.

  5. Is the alert still live in TradingView?

    TradingView alerts expire, and can be paused. If Shogun has been running and has simply heard nothing for longer than a normal overnight or weekend, this is usually why.

None of this involves a tunnel, a router or a firewall — the webhook is hosted for you, so there is nothing of that kind to check.

SECTION 10Is Shogun running?

A stopped Shogun and a quiet market look identical: no error, no warning, just no trades. So the panel tells you in a sentence, right under Fleet Control.

What it saysWhat it means
"Shogun is RUNNING (up 2h 14m) and last heard from TradingView 12m ago."HEALTHY
"…RUNNING … but has not received any TradingView alert yet."Setup is done but nothing has ever arrived. Go to section 7.
"…last heard from TradingView 1d 6h ago."Longer than a normal overnight or weekend. If the market has been open, check the alert is still active in TradingView.
"Shogun is NOT RESPONDING on this machine"STOPPED Reopen Shogun.exe.
The thing that will actually catch you — and it is not a crash

Measured on our own machine over three days: Shogun did not crash once. What happened both times was the PC being restarted — a Windows Update reboot, and an ordinary shut-down at the end of the night. Each time Shogun was simply closed the next morning.

Shogun does not restart itself, and nothing will tell you it is closed. Your alerts fire in TradingView, arrive at a machine with nothing listening, and vanish silently. Make it a habit: glance at that line before each session.

Nothing about that check is sent to us. It is read by your own panel, on your own machine.

SECTION 11Error messages, and what each one means

These were rehearsed against the software, not guessed.

What you seeWhat it meansWhat to do
"no Shogun licence is activated on this machine"You have not activated yet.Paste your key on the Setup page.
"the stored licence is not valid…"The stored key is corrupt, or was not issued by us.Re-paste your key carefully — it is easy to clip a character.
"that licence key was refused"A typo, or the key was revoked.Check for a typo; if it is right, tell us.
"the licence server address looks wrong"The licence server URL on Setup is pointing at the wrong place.Fix that URL. It ships pre-filled, so this usually means it was edited.
"could not reach the licence server"Your internet, or ours.Check your connection and retry. Your stored entitlement still stands — you are not locked out.
"your Shogun subscription has expired"Billing lapsed.Tell us. You can still close positions.
"this licence is activated on a different machine"You have used all your machine slots.Ask us to free one.
REJECT bad secretThe secret in your alert body does not match.Re-copy the alert secret from Setup → Licence.
REJECT unknown pathWrong webhook URL.Re-copy the webhook URL from Setup → Licence.
missing fields: [...]Your alert body is missing a required field.Compare it against the message in section 7.
Signal arrives, no orderOften correct — account off, market shut, or the strategy said "flat".Check the account is enabled and the market is open.

SECTION 12If you are in a trade and worried

Use Panic Close — FLATTEN ALL. It sends a flatten to every account Shogun manages, and it does not need your licence to be valid — it never asks our server anything, it talks straight to your broker.

Panic Close closes. It does not stop.

Flattening deliberately does not change anything else, so the next alert that arrives will open a new position. If you want Shogun to stand down as well, pause it — that is a separate control, and it is the one people assume the red button includes.

Pause lasts until you resume it or until Shogun restarts. To keep a strategy off across a restart, switch that connection off in Setup — that choice is saved.

Read the per-account result, not the headline

Shogun reports each account separately and only calls a flatten done when the broker confirms it. If a connection is switched off there is no path to that broker at all — Shogun says so, and names the accounts, rather than reporting a success it cannot see. Treat any account it could not confirm as still open and close it in the firm's own platform.

Then tell us three things:

  • What you expected, and what happened.
  • The time, and whether it was a TradingView alert.
  • The Trade Log line, if there is one.
Never send us these

Your licence key, your webhook secret, or your broker password. We never need any of them, and we will never ask.

SECTION 13Day to day

  • Leave Shogun running. It only sees alerts while it is open, and it does not restart itself if your PC sleeps or reboots.
  • Glance at the liveness line before each session — section 10.
  • Check the Trade Log at the end of a session. It shows what filled and at what price — it is a record of broker fills, not of alerts arriving.

The price your strategy expected and the price you actually got are shown separately, and they will differ. That gap is the real cost of the trade, and seeing it honestly is a large part of why Shogun exists.

SECTION 14What Shogun will never do

A licence problem can never stop you closing a position

The licence check can only ever refuse an order that positively opens risk. A full exit, a partial scale-out, and any alert Shogun cannot classify are all allowed — the tie is broken in your favour on purpose. If the licence system itself errors, the order goes through. Panic Close sits outside the check entirely.

This is pinned by tests that drive the real router with an expired licence, including the case where it expires while a position is open — which is the shape a real customer meets when a card fails on a Tuesday afternoon.

But if your subscription lapses, the feed stops — and that includes exits

What a lapse actually stops is delivery: while a subscription is lapsed our server hands your Shogun no new signals, and that is every signal, exits included. So an automated exit will not arrive.

You are not stuck — Panic Close works on an expired licence, and so does your broker's own platform. But close it yourself or renew; do not wait for the strategy's exit alert, because it will not come.

A lapse is not instant, either. Your entitlement is signed and cached, and it stands until it expires on its own — up to 14 days — so a failed payment does not cut you off mid-session.

  • It never adds size. Shogun re-checks each position it opened against the size it intended, and trims a genuine excess. It only ever reduces — never past flat, and it will not top a position up to a target, because opening risk is a decision, not a repair.
  • It never touches a position it did not open. A trade you placed by hand has no record with Shogun, so it is reported and left alone.
  • It never acts on an unreadable account. A position it cannot read is skipped, not guessed at.
  • A full exit is never refused by anything. One case can refuse a partial scale-out: when your broker positively reports no position to reduce, because that order would open a new trade in the opposite direction rather than trim one. You keep the full position, and your strategy's own exit still closes it.
  • Nothing of ours places an order. We hold a message on the way through; every decision, every guard and Panic Close stay on your PC.

Still stuck? Tell us what you expected and what happened — "that seemed odd" is a useful report. Bugs are the point at this stage.