NixoraTrade

Sending messages to Nixora

Where your webhook address is, the two ways to send a message, and the one difference that decides everything else: whether your alert comes from a strategy or an indicator.

Before you write a single alert, there are three things to settle: where your messages go, how you send them, and one difference that decides everything you write afterwards.

This page covers all three. It takes about five minutes and it saves a lot of guessing later.

Where your messages go

Every account has a private webhook address — a URL that other software can post to. You will find yours in Auto Signals, shown once when it is created.

It looks like this:

https://hook.nixoratrade.com/h/a7f3c9e2b4d18f60c5a2e9b7d4f1

The long part at the end is both the destination and the password. There is no separate login step, so anyone holding that address can send orders to your account. Do not paste it into a forum, a support ticket or a screenshot. If one escapes, regenerate it — the old address stops working immediately.

There is more than one kind of address, and which one you use changes how many accounts a message reaches. That is covered in How alerts are routed.

Before any of this places an order

Two switches sit between a correct message and a real order, and both ship ON. That means a freshly attached EA with a valid token will place real orders on a real account as soon as an alert arrives — there is no extra opt-in step. If you want to watch first without trading, turn them off yourself before you attach it.

You will find them in the EA's settings (right-click the EA on the chart → Properties → Inputs), under Live Execution:

What you see What it does
Auto Signals: place real trades Lets alerts sent to your webhook place orders. Ships on. Turn it off and alerts still arrive and are journalled, but nothing goes to the broker.
Allow trading on a real account Required as well on a real-money account. It ships on, so a funded account will trade automated orders straight away; set it to false to hold a real account back while you test.
Manual orders: place real trades The same idea for orders you place by hand from the app. Kept separate on purpose — you can leave automation off while trading manually, or the reverse.

(If you ever look at the EA's code, those three are EnableWebhookExecution, AllowLiveAccount and EnableLiveExecution.)

So the sensible order is: get the message right on a demo account first — attach the EA to a demo, watch the order land in the Journal, and only then move to a funded account. If you would rather a real account not trade while you are still testing, set Allow trading on a real account to false in the EA inputs. If an alert appears to do nothing, check those switches before changing a character of your JSON.

One more thing that catches people: after you update the EA file, the terminal keeps the old version running until you remove and re-attach the EA — or restart MetaTrader.

The two ways to send a message

ROUTE 1 — YOU TYPE IT The alert dialog's Message box fixed text · TradingView fills in any placeholders as it fires ROUTE 2 — YOUR CODE WRITES IT an alert() call in Pine values your script computed — an ATR stop, a risk-based size The same JSON arrives at your webhook address either way

Route 1 — you type the JSON. Create the alert in TradingView, put the message in the Message field and your webhook address in the Webhook URL field. Nothing else is needed. Right when the numbers are fixed.

Route 2 — your script writes it. If your stop comes from ATR or your size from a risk calculation, those numbers only exist while the script runs; you cannot type them into a box. Put an alert() call in your Pine code instead.

One setting matters more than people expect. Use alert.freq_once_per_bar_close, which fires once when the bar closes. The default fires on every tick while your condition is true — that is how one signal becomes twenty orders.

The difference that decides everything else

Here is the fork. What you can write depends on what your alert is attached to.

A STRATEGY ALERT knows it just went from flat to long so it can report the position itself, and we work out what to do → ONE message covers everything AN INDICATOR ALERT knows only that a line was crossed it cannot tell whether you are in a trade, so you must say what to do → one alert per direction SO YOU WRITE "position": "long" "prev_position": "flat" a report, not an instruction SO YOU WRITE "action": "open" "side": "buy" an instruction, in full

A TradingView strategy places its own trades, so when it fires it knows which way it traded and how the position now stands. It can hand us that, and we derive the instruction. One alert then runs the whole thing — entries, exits, reversals, even scaling.

An indicator knows only that its condition became true. It has no idea whether you are long, short or flat. So you name the instruction yourself, which means a separate alert for buying and for selling.

Neither is better. They are different amounts of information, and the whole of the next two pages follows from that.

Your alert comes from Read next
A TradingView strategy Alerts from a TradingView strategy
An indicator, TrendSpider, or your own code Alerts from an indicator or your own code

And when you need to look up a single keyword, everything is in one place in the Keyword reference.