The signal story
How to read what happened to a signal, in the app's window and in the Desk: the signal list and its filters, every status, the story with what was read, how it was sized and why it was traded or skipped, the trades per take-profit, the buttons on a signal, the activity lines, and how to report a message that was read wrong.
Where to find your signals
Every message the app read as a signal keeps a record, traded or not.
In the app's window:
- The Dashboard's "Signals" card shows the latest signals. Each shows its status, ▲ for a buy or ▼ for a sell, the symbol, a "Test" tag for dry-run records, ⚠ when part of the signal was not placed, the result once closed, and "only watched" for a listener on Watch.
- "Browse all signals" opens the full list, with filters for the listener ("Any listener"), the outcome and the symbol. The outcome filter has "Any outcome", "Traded", "Skipped", "Held", "Not a signal", "Could not read", "Too old" and "Tests (dry runs)". "Every message" also lists the messages that were set aside before being read.
- "Listener performance" on the Dashboard: click a group's row to show only its signals and activity. The range selector switches everything between "All time", "Today", "Yesterday", "Last 7 days", "Last 30 days", "Last 90 days" and "Custom…".
In the Desk on relay2trade.com, open Signals. Signals waiting for your approval are at the top under "Waiting for you". Above the list are a symbol search, the dates, the listener ("Every listener"), the "Every message" switch and the chips "All signals", "Traded", "Running", "Won", "Lost", "Skipped", "Held", "Not a signal", "Could not read", "Too old" and "Tests (dry runs)". "Show more" loads older signals. The Overview's "Latest" and the notices in the bell also open signals.
The app shows one profile at a time ("Trading as"); the Desk can show every profile together.
Choosing the days in the Desk
The dates field above the Desk's Signals reads "Any day" until you choose days; then it shows them, or a single date for one day. Press it to open "Which days":
- The quick choices: "Any day", "Today", "Yesterday", "Last 7 days", "Last 30 days" and "This month".
- The calendar under them: "Tap the first day, then the last." After the first tap it says "Now tap the last day (the same day again for that day alone)." The arrows beside the month's name go to "The month before" and "The month after". Days still to come cannot be picked.
- The "×" on the field goes back to "Any day".
With only a first or only a last day set, the field reads "From …" or "Until …". The Activity tab under Signals has the same field.
Statuses
A signal's status is one word:
| Status | Meaning |
|---|---|
| placed | The trades were sent to MetaTrader. |
| going | At least one of its trades is still open. |
| won / lost / break-even | All its trades are closed; the net result is above, below or at zero. |
| partial | Some trades were placed, and placing others failed. |
| unfilled | Every trade was a limit or stop order that never filled. |
| skipped | A rule stopped it. The reason names the rule. |
| failed | The app tried to place it and the broker or MetaTrader refused. |
| watched | The listener is on Watch: recorded, nothing placed. |
| awaiting approval | It waits for "Trade it" or "Dismiss", for up to 10 minutes. |
| rejected | You dismissed it. |
| expired | Nobody answered within 10 minutes. |
| held | Watched, awaiting approval, rejected or expired, or refused by your plan's daily signal limit. |
| stale | It reached the app later than "Max signal age (min)" allows. |
| not a signal | The message was read and is not a call to trade (a report, chat, analysis). |
| parse failed | It looked like a signal, but its side or instrument could not be told. The filter calls it "Could not read". |
| would trade | A dry-run test record not replayed yet. |
| left on the previous account | It stayed open on the MetaTrader account the profile used before, and the app no longer manages it. |
In the Desk "Running" is the filter for going signals. Other tags you may see: "Test" for dry-run records, "Reported" for a signal you reported as read wrong, and "Runner" for a trade with no take-profit.
What the story shows in the app
Click any signal to open its story. "Dashboard" goes back. From the top:
- The header: the status, the symbol, the listener (with the topic, for a group with topics), the time and the signal "ID". Put the "ID" in your support ticket when you ask about a signal.
- Notes when they apply: a duplicate warning with a link to the original, or "From a dry run: nothing was placed, and it counts nowhere."
- "Posted" and "Arrived": when the message was posted in the group and when it reached the app, with the delay.
- The tallies: "3 placed", "3 won", "0 lost", "0 going", "0 unfilled" and "net" with the result.
- The original message, with "Read wrong?" under it.
- The levels that were read: the entry or entry zone, the stop-loss (as a price, pips or percent), TP1 to TPn and the runner.
- "Ran under:" the settings in force at that moment: the sizing ("0.1 lots/take-profit", "0.1 lots/signal", "1% risk"), how several take-profits are traded, the trailing stop, "all-or-nothing" when "Require full signal" is on, and the caps.
- "What the AI read, as data", folded; a click opens exactly what was read.
- The reasons. On a skipped signal the first reason is the rule that decided. On a placed signal the reasons explain the size, for example "Size: 1.00% of 12109.17 USD equity (Risk % of equity) is 121.09 USD at risk for this signal; with the stop 765 points away, that is 0.15 lots in all." A reason that names a setting has a "Go to “…”" button under it.
- "Legs placed": one line per trade, with ticket, role (TP1, TP2…, runner), type, lots, entry or fill (for a waiting order, the level it waits at), stop-loss, take-profit and "Result": "open", "waiting for its price", "take profit @ 4319.45 · +62.44", "stop loss @ … · −…", or why it never filled.
- "Legs not placed": each take-profit that was left out, with its reason, for example "not placed: Max open positions is 10" or "lots too small to split further (broker minimum 0.01)".
- "What happened": the timeline, newest line first, to the millisecond, naming each trade ("tp2 · position … @ 4319.45 · 62.44 · take profit").
What the story shows in the Desk
The Desk shows the same story in its own layout:
- "The message" with "Posted at" and "reached your app 2 s later", and how long the reading took ("read in 640 ms").
- "Levels", and "Orders": each trade with its state, "closed", "open", "waiting at the broker" or "not placed". A runner reads "no take-profit: trailing or the group closes it".
- "What its positions still open make now", with "See on Positions".
- "What happened", the timeline.
- "Why it was not placed" on a refused signal, and "What you can do" with its buttons.
- "The app doubts how it read this message: check the levels below." when a reading looks suspect.
- "The plan's daily signal limit was reached, so this message was not read." on a message your daily limit stopped.
Trades per take-profit
How a signal with several take-profits shows its trades depends on "Multiple take-profits" (see Take-profits, trailing stop and runners):
- "Split: a separate trade for each take-profit" (the default): one trade per take-profit, each with the signal's stop and its own target at the broker. "Legs placed" lists them as TP1, TP2, TP3, and the tallies count each one.
- "One trade: a share closes at each take-profit": one position with the full size. The story says, for example, "One trade of 0.10 lots, with a share closing at each of the 2 take-profits before the last."
- "Nearest take-profit only" and "Furthest take-profit only": one trade with the whole size on that target.
- A netting account holds one position per symbol: "netting account: one position, the earlier targets rest as 3 partial exits".
- A runner is a trade with no take-profit, marked "Runner".
As take-profits are reached, the timeline shows "stop moved" lines from your "Trailing stop" rule, and the closes with their reason: "take profit", "stop loss", "margin stop-out", "closed by hand", "closed by app", "expired before it filled", "removed before it filled", "runner closed before the weekend", "runner closed at its time limit" or "cancelled: the other side of the straddle filled".
The buttons on a signal
"Trade it" and "Dismiss", on a signal waiting for your approval. "Trade it" runs every check again at the current price and places it, or says "Not placed" with the reasons. "Dismiss" drops it. See Listeners and modes.
"Retry this signal" in the app, "Try again" in the Desk. After you change the setting that stopped a signal, this judges it again with your settings as they are now, on the same record. It is also useful once something passing has cleared, such as the spread. A retry that trades turns the refusal into the trade ("Placed: 3 orders."); otherwise the record shows "Refused again" with the new reason. It works:
- only for a signal your trading rules refused;
- only while the signal is younger than "Max signal age (min)": after that, "Posted 12 min ago and Max signal age is 5 min: its price has most likely moved on, so it can no longer be retried."
A signal that was only watched, traded, refused by the broker, a dry-run test, or never a tradable signal cannot be retried.
"Force placement…" in the app, "Force placement" in the Desk. It leaves your settings as they are and sets aside the rule of yours that refused the signal, for that one signal, after showing exactly what it would place.
- Open the refused signal and click "Force placement…".
- If it can be placed two ways, pick one: "Now, at market" (enters at the market price with the take-profits still ahead, leaving out the ones the price already passed) or "As a limit at" the signal's entry (the whole signal waits there with every take-profit, never enters at market, and is cancelled if the price has not come back within the listener's "Cancel a limit or stop order not filled after").
- Read the window "Force placement of this signal?": "Your rules refused it", "What the app will place" (each order with its lots, stop-loss and take-profit), "If every stop-loss is hit: 11.00 USD, 2.67% of your equity" and the margin in use afterwards.
- Click "Place 0.01 lots" (in the Desk "Force-place 0.01 lots") with the size it shows, or "Cancel".
The app works the size out again when you click. If it has grown since, nothing is placed and you see the new size. A forced placement can risk more than your settings allow: a size below the broker's smallest lot goes at that smallest lot. A signal refused by "Require stop-loss" goes in with no stop-loss at all, and the app tells you at once to put one on in MetaTrader. Every other rule still applies, and the story notes "Force placement asked from the window".
It is offered when one of your own rules refused the signal: a size below the broker's smallest lot, "Max total lots", "Max lots per symbol", "Max margin use %", "Max traded signals per day", "Max open positions", "Max open positions per symbol", "Max signals open at once", a listener's own versions of these, "Require stop-loss", "Require full signal", or where the price stands against the listener's entry rules (past "Max entry deviation", past some or all of its take-profits, or already better than the entry of a listener set to skip then). Any other refusal has no "Force placement", among them "Max daily loss" and "Daily profit target" (they hold until the broker's next day), "Lowest equity to trade", the trading switch, trading days and hours, "Pause between signals (seconds)", "Max spread (points)", "Allowed symbols" and a listener's "Symbols", margin the account cannot carry, and refusals by the broker or caused by the message itself. It follows the same age limit as a retry.
"Go to “…”": a signal stopped by one of your settings has a button naming it, for example "Go to “Max daily loss”" ("The setting that stopped this signal."). It opens that setting. A listener's own limit, or a listener setting such as "Max entry deviation", opens on that listener. It is there whether or not "Force placement" is, so a hard limit still says where it is set. A refusal with no setting of yours behind it (the broker, the message, the account's margin) has no "Go to “…”" button. Your settings are not changed.
"Tell the app what your broker calls US30": on a signal skipped because your broker uses another name for the instrument. Pick the right symbol from your broker's own list; from then on those signals trade. You do it once.
"Read wrong?": on any signal that still has its message text. See below.
"Read it anyway" (Desk): on a message the filter set aside unread. It counts as one reading of your day, and what is found waits for your approval.
"Open the original signal": on a duplicate, to compare it with the signal it repeats.
Activity
Activity is the running log of a profile: verdicts, trades placed and filled, partial exits, stops moved as targets fill, runner stops, follow-ups and closes with their reason, and notes about your daily signals. Click a line to open its signal.
- In the app it is on the Dashboard. Choose "Activity" or "Everything (debug)", 15, 30 or 50 lines a page, and "newest first ↓" or "oldest first ↑". Selecting groups under "Listener performance" narrows it to them. Lines are kept 180 days on your computer, and older pages are fetched from relay2trade.com while "Sync activity" is on.
- In the Desk it is the Activity tab under Signals, with "Activity", "Warnings and errors", "Errors only" and "Everything (debug)", and "Open the signal's story" on a line.
Messages set aside before reading and messages read as "not a signal" are not in Activity; they are under Signals → "Every message" for a week. Dry-run results are in the listener's "Dry runs" window and under "Tests (dry runs)".
Reporting a wrong reading
"Read wrong?" is about how a message was read. When a message was read right and then skipped, the reason in its story is what to act on.
In the app:
- Click the signal, then "Read wrong?". The button is filled in when the app itself doubts the reading, and a "Read wrong?" chip shows on such signals on the Dashboard.
- Choose "A trade, but the details are wrong", "Not a trade at all" or "A trade that was ignored".
- Fill in what applies: "Symbol", "Side", "Entry", "Stop loss", "Take profits (comma separated)" and "What happened, or what should have happened? (optional)".
- Click "Send". The app answers "Thank you, your report was sent for review."
In the Desk, "Read wrong?" opens "What did the message really say?" with "Wrong values", "Not a signal" and "A signal it missed", the fields "Symbol", "Direction", "Take-profits" and "Details", then "Send".
A report sends the message text and your reading to relay2trade.com, where a person reviews it. Each report opens a conversation where we answer: the signal then shows "Reported", and "Open the conversation" replaces "Read wrong?". Reports are listed under "Signal reports" in the app's "Help & support" and in the Desk's Support, each with where it stands: "In review", "Confirmed" (the app read it wrong), "Read correctly" or "Closed". When we confirm the app read it wrong, you also get the signal back: one more signal for today.
"Read wrong?" needs an active plan, and it is not on dry-run records. It needs the message text: with "Sync original messages" off, a story shown after a reinstall or in the Desk has no text to report.
If something goes wrong
- The story has no message text. "Sync original messages" is off (Settings → "Application" → "Remote control & sync"), and the story was opened somewhere other than the computer that read the message, or after a reinstall. Only the levels read are kept then.
- The Desk shows no new signals. "Remote control" or "Sync activity" is off in the app, or the app is offline. The Desk says "Sync off" or "Your app is offline".
- "Force placement" is missing on a refused signal. The rule that refused it is one Force placement never sets aside, or the signal is older than "Max signal age (min)". Its reason says what stopped it, and "Go to “…”" opens that setting.
- "Retry" says the signal is too old. Its price has most likely moved on. If you still want the trade, place it by hand at today's price.
- Force placement risked more than my 1%. A size below the broker's smallest lot goes at that lot. The window showed the money at risk before you clicked.
- My trades disappeared after switching profiles. The app's Dashboard shows the profile chosen in "Trading as". Switch back; the other profile kept trading.
- A signal I need help with. Open a ticket from Support with the group, the symbol and the time it was posted; in the app, also copy the "ID" from its story (see Troubleshooting).