# Position sizing and safety limits

How Relay2Trade works out the size of each signal (risk % of equity, fixed cash or fixed lots), and every limit that caps what is open, guards the moment of entry, and decides when and which signals trade.

## How one signal is sized

One signal is one entry with its stop-loss and all its take-profits. A message with two separate trades (two instruments, or two entries) is two signals, each sized on its own.

Every signal goes through the same steps:

1. The stop-loss is settled: the signal's own, a default stop for its kind of instrument, or your "Own stop-loss" (see https://relay2trade.com/help/stops-and-follow-ups.md).
2. The lots are worked out by your "Sizing mode".
3. The lots are capped at "Max lots per signal" and at the broker's largest lot, then rounded down to the broker's lot step. Under the broker's smallest lot, the signal is skipped.
4. The lots are shared across the take-profits (see https://relay2trade.com/help/take-profits-trailing-runners.md).

The signal's story shows the working, for example: "Size: 1.00% of 10000.00 USD equity (Risk % of equity) is 100.00 USD at risk for this signal; with the stop 250 points away, that is 0.40 lots in all."

These settings are in Settings → "Position sizing" and "Safety limits", in the Desk and in the app.

## "Sizing mode"

Three choices. All end at a number of lots; they differ in what stays the same from one signal to the next.

- **"Risk % of equity"**: if the stop-loss is hit, the whole signal loses about this share of your account.
- **"Fixed cash"**: the same, with an amount of money in your account's currency.
- **"Fixed lots"**: the same lots on every signal, whatever the stop distance. The loss depends on how far away the signal puts its stop.

Same account, same 25-pip stop on EURUSD: Risk 1% of 10,000 gives 0.40 lots; Fixed cash 50 gives 0.20 lots; Fixed lots 0.10 gives 0.10 lots.

A new profile starts on "Fixed lots" at 0.01 for "Each take-profit". Choose your sizing mode before a group trades on Auto.

### "Risk % of equity"

The app reads your equity from MetaTrader when the signal arrives: the balance plus the floating profit or loss of open trades. That percent of it is the money the whole signal may lose at its stop. It is divided by what the stop costs on 1 lot, which gives the lots.

- Default 0.5. Up to 100 is accepted, which is the whole account on one stop; 0.25 to 1 is a common range.
- It is for the whole signal, shared across its take-profits: 1% on a signal with four take-profits is 1% in all.
- Signals open at the same time add up: five open signals at 1% can lose 5% together. "Max signals open at once" and "Max daily loss" limit that.
- Example: equity 10,000 USD, 0.5%, EURUSD with a 30-pip stop: 50 / (300 points × 1 USD) = 0.166, rounded down to 0.16 lots. The loss at the stop is 48 USD.
- Example: equity 500 USD, 0.5%, the same stop: 0.008 lots rounds down to 0.00, so the signal is skipped: "The size came to 0.00 lots, below the broker's smallest lot (0.01)."

A market order is sized from the current price. If the price has moved toward the stop since the message, the stop is closer and the lots bigger; "Max lots per signal" is the ceiling.

### "Fixed cash"

The money, in your account's currency, the whole signal may lose at its stop. It works like "Risk % of equity" with a fixed amount: after a win or a loss, the next signal risks the same money.

- Default 25. 50 on a EUR account is 50 euros.
- Example: 50, EURUSD with a 25-pip stop: 50 / 250 = 0.20 lots. With 4 take-profits that is 0.05 on each, 50 at risk in all. The same 50 with a 50-pip stop gives 0.10 lots.
- A small amount with a wide stop can come out under the broker's smallest lot, and the signal is skipped. Raise the amount or switch to "Fixed lots".

### "Fixed lots" and "Fixed lots are for"

The number you type is the size. "Fixed lots are for" decides how it applies to a signal with several take-profits:

- **"Each take-profit"** (the default): every take-profit gets the full lots. 0.10 on a signal with 4 take-profits puts 0.40 lots in the market. The field is named "Lots for each take-profit".
- **"The whole signal"**: the lots are the signal's total, shared across its take-profits. The field is named "Lots for the whole signal".

Example: 0.10 lots, 3 take-profits: "Each take-profit" opens three trades of 0.10 (0.30 in all); "The whole signal" opens 0.03 + 0.03 + 0.04. With fixed lots the risk follows the stop: 0.05 lots on EURUSD lose 12.50 USD at a 25-pip stop and 30 USD at a 60-pip stop.

Contract sizes differ between brokers, mostly on indices and coins, so check the contract before copying a lot size from someone else.

### A signal with no stop to size by

"Risk % of equity" and "Fixed cash" need a stop. A signal left with no stop at all (none in the signal, "Require stop-loss" off, and the default stop for its kind set to "No stop") trades the "Fixed lots" value as its total, and its story says: "No stop-loss to size by (…), so it trades your fixed lots: 0.01." When no stop is possible for any kind of instrument, the app's Settings window locks "Risk % of equity" and "Fixed cash" and says why.

## "Max lots per signal"

The most lots sizing may give. Default 50, wide enough to leave a normal signal alone. It is the safety net for a mistyped signal or a stop a few points away that would size a huge lot.

- A signal over the cap still trades, at the cap, and its story says "Capped at Max lots per signal (…)".
- With "Risk % of equity", "Fixed cash" or fixed lots for the whole signal, it caps the signal's total before it is shared.
- With fixed lots for each take-profit and "Split", it caps each trade, and the page names it "Max lots per trade".
- Example: equity 20,000 USD, 1% = 200 USD, a EURUSD stop only 3 pips away: 6.66 lots. With the cap at 2 it goes in at 2.00, and the real risk is 60 USD.

A cap below what your sizing usually gives shrinks every signal. Look for "Capped at" lines in the signal's story.

## What may be open at once

These limits are under "Safety limits" → "Open at once". They count only what the app placed on this profile, pending orders included. Trades you opened by hand are left out of the counts.

- **"Max open positions"**: the most positions the app may have open at once, from every listener. Each trade of a "Split" signal is a position, and a pending order holds its place until it fills, expires or is cancelled. A signal held as one trade ("One trade", or any signal on a netting account) is one position. Default 100, at least 1. Your plan sets the ceiling: 10 on the 7-day plan, 10 on Basic, 50 on Advanced, 100 on Pro.
  - Example: cap 10 with 7 open. A "Split" signal with 4 take-profits places its 3 nearest; the fourth is listed as not placed. With "Require full signal" on, the whole signal is skipped.
- **"Max open positions per symbol"**: the same count on one symbol, buys and sells together. Default 100. Shown only on hedging accounts: a netting account takes no new signal on a symbol while it has a position there.
  - Example: cap 4, two gold signals of 2 trades each open: a third gold signal is skipped; a EURUSD signal still goes in.
- **"Max signals open at once"**: counts signals, so a "Split" signal with 3 trades is one. Default "No limit". When the cap is full, a signal from an Auto listener waits for your approval (in the Desk under Signals → "Waiting for you", in the app on the Dashboard); "Force placement" trades it past this limit only. A waiting approval expires after 10 minutes.
- **"Max total lots"**: the lots the app has open across all symbols, pending orders included. A signal whose trades together would push it over is skipped as a whole. Default "No limit".
  - Example: cap 2.00, 1.50 open. A signal of 0.60 in all (1.50 + 0.60 = 2.10) is skipped; one of 0.45 goes in.
- **"Max lots per symbol"**: the same test on the signal's symbol only. Default "No limit".
  - Example: cap 1.00, 0.80 open on XAUUSD: a gold signal of 0.30 is skipped, a EURUSD signal of 0.30 goes in.

Lots are added as plain numbers, so 1 lot of EURUSD and 1 lot of BTCUSD count the same. With risk sizing, a close stop gives more lots for the same risk, so that signal is the one most likely to hit a lot cap.

## The account as a whole

These read the profile's MetaTrader account live, your own manual trades included. They are under "Safety limits" → "The account".

- **"Max margin use %"**: a signal whose trades would push the account's margin in use above this share of equity is skipped. It is checked after sizing: (margin already in use + margin the signal needs) / equity × 100. Default 100; it cannot be turned off. 100 lets margin in use reach your whole equity, where brokers start closing positions.
  - Example: equity 10,000, margin in use 2,000, the signal needs 1,500: 35%. Placed under a 50% cap, skipped under 30%.
- **"Lowest equity to trade"**: no new trades while equity, floating losses included, is below this amount. Nothing is closed, and the next signal trades again as soon as equity is back above it. Default "Off". It is a fixed amount, so check it after a deposit or a withdrawal.
  - Example: floor 9,000 on a 10,000 account. Balance 9,400 and open trades at −500: equity 8,900, new signals are skipped. The trades recover to −200: equity 9,200, signals trade again.

## At the moment of entry

Under "Safety limits" → "Placing an order":

- **"Pause between signals (seconds)"**: a signal arriving within this many seconds of the last placed one is skipped. A skipped signal does not restart the clock, and nothing is queued for later. All the trades of one signal count as one entry. Default "Off".
  - Example: 60. Placed at 10:00:00; a signal at 10:00:42 is skipped; one at 10:01:05 is placed.
- **"Max spread (points)"**: a market entry is skipped while the spread (ask minus bid) is wider than this. A limit order waiting at the broker fills at its own price, so it is checked only when it is sent to market. Default "Off".
  - Example: EURUSD 1.10000 / 1.10018 is 18 points: skipped with 15, placed with 20. Gold at 2400.10 / 2400.45 is 35 points, so a cap meant for forex blocks most gold signals; give a gold group its own value.
- **"Max slippage (points)"**: sent with every market order; the broker refuses a fill further than this from the price asked. On market-execution accounts many brokers fill at the price available and ignore it. Default 20 (2 pips on EURUSD, 0.20 on gold). If gold entries are refused with a requote, raise it to 100–300 for that group.

Points are the smallest price step: on 5-digit forex 10 points make a pip, on gold quoted with 2 decimals 100 points are 1.00.

## How far the price may have moved: "Max entry deviation"

A listener setting, under "Entry" when you open the listener. It skips a signal when the price has already moved further than this from the signal's entry, in either direction. A signal with no entry price is never checked, and a price inside an entry range has no deviation.

- **"Deviation unit"**: "Percent of price" (the default, the same on every instrument) or "Pips".
- Default "Off": a signal enters wherever the price is.
- Examples: percent 0.10, "BUY XAUUSD 2400" with the ask at 2408.50 (0.35% away) is skipped; at 2401.50 (0.06%) it enters. Pips 20, "SELL EURUSD 1.1000" with the bid at 1.0970 (30 pips away) is skipped.

The skip reads, for example: "The price 2408.5 is already 0.35% from the signal's entry 2400, more than this listener's Max entry deviation (0.1%)." On a Manual listener the check runs when you click "Trade it". Changing the unit keeps the number as it is, so type the value again after switching.

## Trading days and hours

Under "Trading days and hours". Both run on your broker's server clock, the one MetaTrader's Market Watch shows, often 2 to 3 hours ahead of UTC.

- **"Trading days"**: the days the app may open trades. All seven are on by default: crypto trades at weekends, and forex opens on Sunday evening on most servers. At least one day is required.
- **"Trading hours"**: "All day" by default. Set "Only between" a start and an end; an overnight window such as 22:00 to 06:00 works too. Both end minutes count as inside.

A signal outside the days or hours is skipped and nothing is kept for later. Open trades stay open. Example: you want 09:00–18:00 at UTC+3 and the server runs UTC+2: set 08:00 to 17:00.

## Repeated and late signals

Under "Repeated, late and opposite signals" (opposite signals are explained in https://relay2trade.com/help/take-profits-trailing-runners.md):

- **"Duplicate window (min)"**: a signal matching one placed within this many minutes, from any listener (same symbol and side, the same shape, every level within the tolerance), is held back. On an Auto listener it waits for your approval, marked "duplicate" or "possible duplicate", and expires after 10 minutes; on Manual and Watch listeners it is only marked. A duplicate that is not traded goes back to your plan's daily signal count. Default 5; "Off" turns the check off.
- **"Duplicate tolerance (pips)"**: how close the levels must be. Default 10; "Exact match only" checks exact matches. On gold 10 pips is 1.00.
  - Example: window 5, tolerance 10. At 14:00 "buy XAUUSD 2400 sl 2390 tp 2410 2420" is placed. At 14:03 the group reposts it with entry 2400.50: it waits as "possible duplicate". At 14:07 the same message trades as new.
- **"Max signal age (min)"**: a message that reaches the app more than this many minutes after it was posted is never traded. From 1 to 60; default 5. Messages posted while the app was off, asleep or offline are picked up if still within the limit, and then wait for your approval.

## Which symbols may trade

- **"Allowed symbols"** (Settings → "Symbols"): empty means every symbol. With anything in it, only those symbols trade, from every listener. GOLD, XAUUSD and your broker's XAUUSD.s all match gold.
- **"Symbols"** on a listener narrows that one group further. A symbol must be allowed by both.

## One group with its own size and limits

Under a listener's "Settings of its own", a group can have its own sizing, spread, slippage, days and hours, in either direction: where the profile risks 1%, one trusted group's own "Risk % of equity" 2 turns 0.50 lots into 1.00. Its own caps on what is open ("Max open positions", "Max total lots" and the others under "Open at once") and its own pause count only its trades and stay within the profile's. "Max margin use %", "Lowest equity to trade", the duplicate check and "Max signal age (min)" stay the profile's. See https://relay2trade.com/help/settings-overview.md.

## "Force placement"

A signal your own rules refused can often be placed once with "Force placement", in the app or the Desk. You first see exactly what it would place and what is at stake. It sets aside, for that one signal, a lot, margin or position limit, "Max signals open at once", "Max traded signals per day", "Require stop-loss", "Require full signal" or the listener's entry rules. Margin is never taken past 100%. The trading switch, trading hours, "Lowest equity to trade", "Pause between signals (seconds)", the day's loss and profit limits always hold, so a signal one of them stopped has no "Force placement". Your settings stay as they are.

## If something goes wrong

- **"I set 1% and the signal had 4 take-profits."** You risked 1% in all: risk % and fixed cash size the whole signal and share it.
- **"I set Fixed lots 0.10 and got 0.40 lots."** "Fixed lots are for" is "Each take-profit" and the signal had 4 take-profits. Choose "The whole signal" to trade 0.10 in all.
- **The trade is much smaller than my percent.** The story says "Capped at Max lots per signal (…)". Raise the cap, or check whether the listener has its own lower risk.
- **"The size came to 0.00 lots"**. The account, the percent or the amount is too small for that stop. Raise the risk, or use "Fixed lots".
- **Signals are skipped in hours I allowed.** The hours run on the broker's server clock. Check Market Watch and shift the window.
- **Every gold signal is skipped for the spread.** The cap is in points and was set for forex. Give the gold listener its own "Max spread (points)", or "Off".
- **A signal waits for approval on an Auto listener.** It is a possible duplicate, it was stopped only by "Max signals open at once", or it was posted while the app was offline. Approve it with "Trade it" or "Force placement", or dismiss it.
- **"Max open positions" will not go higher.** Your plan sets its ceiling. See https://relay2trade.com/help/plans-licence-billing.md.

Every skipped signal names the setting that stopped it, with "Go to" that setting: https://relay2trade.com/help/why-a-signal-was-skipped.md.

## Related

- https://relay2trade.com/help/daily-limits.md
- https://relay2trade.com/help/stops-and-follow-ups.md
- https://relay2trade.com/help/take-profits-trailing-runners.md
- https://relay2trade.com/help/settings-overview.md
- https://relay2trade.com/features/sizing-and-safety
- https://relay2trade.com/features/settings
