Guide / Checked Oct 2026
Plain-English trading alerts to your broker
You can, as long as the message names a ticker, a direction and an action. "long NVDA here" has all three and becomes a buy order; "thinking about SPY?" has none and places nothing. Nyria reads that wording from TradingView, Discord, Telegram, an AI agent or a webhook, sizes the order from your bot, and lets you test every message on paper first.
Official documentation
- Nyria docs, Choose an alert source
- Nyria docs, Trade alerts from a Discord server you run
- Nyria docs, Trade alerts from a Telegram chat you run
- Nyria docs, Send alerts from your own bot
- Nyria docs, Webhook reference
- Nyria docs, Trading behavior, limit order targets and exits
- Nyria docs, Paper trading
- Nyria alert tester
- Nyria FAQ
What does a plain-text alert have to contain?
Three things. A ticker, such as SPY or BTC. A direction, long or short. An action, which opens or closes the position. "SPY long entry" carries all of them in three words, and so does "Close short BTC". Word order, case and abbreviations are yours.
Nyria's alert-sources docs put the rest in one line: word your exits the same way as your entries, so each exit is matched to the position it closes. An exit that names only the ticker closes the most recently opened position in it, along with every entry stacked onto it.
What do these two alerts mean?
BTO SPY 770C 11/20 at 2.10. BTO is buy to open. SPY 770C is the SPY 770 strike call, and 11/20 is its expiration. Nyria reads it as a long entry on that contract. The 2.10 is read as the alert price. The strategy's order type decides what happens to it: a limit order whose target is Alert price uses it, and a market order ignores it.
long NVDA here, stop 120. A long entry on NVDA shares. The stop is read and kept as metadata, and no stop order is placed. Nyria attaches no stop to any position. The trade closes when an exit alert arrives, such as "close NVDA long".
Neither alert sets the size. Each bot sizes its orders from its own budget per entry, so the same message can run on several bots in several sizes. A quantity in the message, such as "BTO 1 SPY", is read past.
How does Nyria read Discord and Telegram messages?
A Discord message is read in three passes: its embeds first, then a quoted tweet if Discord unfurled one, then the message text. The first pass that gives a ticker, a direction and an action is used. Telegram messages are read the same way as Discord text.
The shapes Nyria's docs show for a chat message:
text
SPY long entry Close short BTC AAPL 345C buy to open sold half SPY 780C BTO 1 SPY 12/18 $780 CALL @ 14.50 SPY 780C/781C bull call spread
Case, trailing punctuation, emoji and @everyone are ignored. Text inside an image is not read, so a chart screenshot with "long SPY" written on it places nothing. An edited message is not traded, and deleting a message after it traded changes nothing at the broker. On Telegram, an alert that reaches Nyria more than a minute after it was posted places no new entry, though a close in it still runs.
For an options strategy you choose where the contract comes from. With Provided in alert, Nyria trades the strike and expiry in the message, and a Discord or Telegram entry with no date takes the nearest listed expiration, which can be today's. With From my rules, the strategy picks the contract from the delta and days to expiry you set, and the message only needs the ticker, the direction and the action.
When is JSON the better choice?
When something sends the alert for you. A TradingView alert, a TrendSpider bot or your own script can post JSON to the strategy's webhook URL, and two fields are enough:
json
{ "ticker": "SPY", "action": "buy" }On a strategy that trades both sides, buy covers an open short and otherwise opens a long. To state the side outright, send action as OPEN or CLOSE with direction as LONG or SHORT. An option spread needs JSON, because its legs travel as an array. A script that can only send free text posts the same words with Content-Type: text/plain, and Nyria reads "AAPL long entry" from the body.
An AI agent connects over MCP and sends plain text. It can preview an alert and place nothing, which is the way to try one.
What makes a message unambiguous?
Nyria does not guess. A message that implies a direction without stating it is refused. Nyria's Discord docs give the case: "added more SPY" places nothing, and "added long SPY" trades. A question or a hedge, such as "thinking about SPY?", is not an alert.
One word for each idea keeps it clean. State the direction every time, even when the channel is long-only. Write exits with the same ticker form as the entry. On a shared channel, add an author filter or a keyword such as ALERT so chatter is never read. Put the ticker in the message itself rather than only in an attached image or a link, and give an option its strike and expiry unless the strategy picks the contract.
How do you test it on paper first?
Paste the message into the alert tester on nyria.io. It shows the order Nyria would send, the contract for an option, and the refusal it would give, word for word. Nothing is traded and no account is needed.
Then build the strategy. On its Integration tab, give one example alert per trade type and select Check format. For Discord and Telegram, you assign real messages from the channel to Long entry, Long exit, Short entry and Short exit, and Nyria shows what each would have traded. The strategy turns Active when every side passes.
Deploy a bot on Nyria Paper. Fills are simulated on live market data, and every alert lands on the Logs tab with how it was read and the order it placed or refused. Run it until the fills match what you meant, then deploy a second bot on your live account. Up to 10 paper bots are free. Alert to order, sub-second.
The alert tester trades nothing and needs no account.
Questions
- Do I have to use a template or JSON?
- No. Plain text in your own wording works from every source. JSON is for a script or a TradingView alert that sends the fields for you, and for option spreads.
- Can the alert set the order size or a stop loss?
- No. The budget per entry on each bot sizes every order, and Nyria attaches no stop order. A position closes when an exit alert arrives.
- What happens to a message Nyria cannot read?
- Nothing trades. The strategy's Logs tab shows the message and the reason it was refused, in the same words the alert tester uses.
- Can I trade a Discord server I only subscribe to?
- No. Nyria reads channels in a server where you have the Manage Server permission. If the caller publishes the calls as a Nyria strategy, you can subscribe to that instead.
- Does the same alert sent twice open two positions?
- No. An identical body repeated within 30 seconds, or within 5 minutes with nothing else in between, is dropped as a duplicate.
- What does it cost?
- Paper is free. Live trading from $15 a month.
Guides
What is a webhook in trading?
A URL a program posts to. A TradingView example, what the message needs and why the URL is secret.
TradingView webhook JSON format
TradingView sends the Message box as written. What it adds, and what Nyria needs the message to say.
Auto-trade your Discord alerts
A paid-channel call becomes an order in your own account. Your fill won't match theirs exactly.
Telegram signals to your broker, automatically
Pick a group or channel you run, filter by author or keyword, validate, then go live.
Test your wording on paper
Trade and test free on paper. No card required.