Idea in brief
This is not a signal but a set of daily limits for any intraday system. On the channel of the prop firm IQ Capital, five traders with different methods (order book scalping, VWAP scalping, a systematic VWAP strategy, trading off gamma positioning, auction theory) independently name similar rules. The trading day ends after two losses in a row. There are few trades per day, from one or two up to four.
Two of them also stop after a win: Robert Rother after the first winning trade, Matthias Fernholz after two winners in a row. Chris Creamer adds time: an hour and a half after the New York open Chris is done. Each trader's rules are written below as variants. They are easy to plug into any card with several trades per day.
Why it might work
There are two explanations. The first is psychological, given by Manuel and Chris. After a couple of losses a trader starts trading not the market but the urge to win it back. According to Manuel, accounts are blown by exactly these sessions, not by the method itself. Chris adds that a rule must be a concrete action, not a wish to "not overtrade".
The second is statistical, based on personal journals. Matthias saw in a personal Excel spreadsheet that a third trade after two winners is usually a loser. Chris noticed that an hour and a half after the open the trades get noticeably worse. Matteo Conti chose the four-trade limit in-sample as the best for passing a challenge.
For a mechanical system the psychological argument does not apply. If trade results within a day are independent, stopping after two losses does not change the expectancy of a single trade. It only cuts the number of trades and smooths the daily result. A benefit appears when losses come in streaks, for example on days without direction. This can be checked on the trade list. Matthias's argument that with 50-60% winners a third win in a row is unlikely holds only if trades are dependent. With independent trades the chance of a third win is the same 50-60%. We have not seen Matthias's data.
Rules
Summary by trader
| Trader | Trade limit | Stop on losses | Stop on wins | Time |
|---|---|---|---|---|
| Matthias Fernholz | 3 | 2 in a row | 2 in a row | 1-1.5 hours a day |
| Robert Rother | usually 1-2, sometimes 3 | 2 in a row | first trade a winner | not stated |
| Matteo Conti | 4, one position | 2 per day | none | entries until 15:30 ET, exit 15:55 ET |
| Manuel | not stated | 2 in a row | none | not stated |
| Chris Creamer | usually 0-2 | 2 in a row | none | first 90 minutes after 09:30 ET |
Common daily counters (Finetiq)
IF a new trading session has started
TradesToday = 0; LossesToday = 0; ConsecLosses = 0; ConsecWins = 0
DayOff = false
ON trade close
TradesToday += 1
IF PnL < 0 THEN LossesToday += 1; ConsecLosses += 1; ConsecWins = 0
IF PnL > 0 THEN ConsecWins += 1; ConsecLosses = 0
// Finetiq: a trade near zero (|PnL| less than round-trip costs) does not change the streaks.
// The authors did not cover this case
IF DayOff THEN CANCEL all pending orders; no new entries
Variant A. Matthias Fernholz (order book scalping)
IF TradesToday >= 3 THEN DayOff = true
IF ConsecLosses >= 2 THEN DayOff = true
IF ConsecWins >= 2 THEN DayOff = true
// author: after "loss, win" a third trade is allowed
// Finetiq: the author did not cover "win, loss", by the counters a third trade is allowed too
// author: trades no more than an hour to an hour and a half a day
Variant B. Robert Rother (VWAP scalping on ES)
IF first trade of the day: PnL > 0 THEN DayOff = true // author: "I turn off the computer"
IF first trade of the day: PnL < 0
pause // Finetiq: duration not stated, starting value 15 minutes
a second trade is allowed
IF second trade: PnL > 0 THEN a third trade is acceptable // author: "I may consider it"
IF ConsecLosses >= 2 THEN DayOff = true
Variant C. Matteo Conti (the drift-vwap-pullback card)
MaxOpenPositions = 1
IF TradesToday >= 4 THEN DayOff = true
IF LossesToday >= 2 THEN DayOff = true
// the author says both "a maximum of two losses a day" and "two losing trades in a row".
// Finetiq: with a limit of 4 trades these are different rules, test both
no new entries after 15:30 ET
EXIT all positions at 15:55 ET
Variant D. Manuel (gamma positioning and volume profile)
IF ConsecLosses >= 2 THEN DayOff = true
// the host phrases it as "two losses per session", Manuel clarifies "two trades in a row at a loss"
RiskPerTrade <= 1% of the account
Variant E. Chris Creamer (auction theory and footprint)
TradeWindow = 09:30-11:00 ET // author: "the first hour and a half of New York"; Finetiq: converted to exact time
IF Time >= 11:00 ET THEN DayOff = true
IF ConsecLosses >= 2 THEN DayOff = true
IF gross mistake (entry before confirmation, chasing price) THEN DayOff = true
// the last rule is discretionary, a mechanical system does not have it
Parameters
| Parameter | Value | Source |
|---|---|---|
| Maximum trades per day | 3 | author (Matthias) |
| Maximum trades per day | 4, one position at a time | author (Matteo) |
| Stop on losses | 2 in a row | author (Matthias, Robert, Manuel, Chris) |
| Stop on losses | 2 per day | author (Matteo), Finetiq interpretation |
| Stop on wins | 2 in a row | author (Matthias) |
| Stop on wins | first trade a winner | author (Robert) |
| Trading window | 90 minutes after 09:30 ET | author (Chris) |
| Last entry and exit | 15:30 and 15:55 ET | author (Matteo) |
| Risk per trade | up to 1% | author (Manuel) |
| Pause after the first loss | 15 minutes | Finetiq |
| Trade near zero | does not change the streaks | Finetiq |
What to test
- Are trades within a day dependent on each other. On your system's trade list, compare the win rate after a loss on the same day, after two losses in a row and after two wins in a row with the overall win rate. If there is no difference, the limits work only as a cut in the number of trades.
- Against random reduction. Remove from the history as many trades as the rule cuts, but at random and on the same days, and repeat 1000 times. If the rule is not better than most random variants, its only benefit is lower exposure.
- In a row or per day. Two losses in a row versus two losses per day and versus three. With a limit of 3-4 trades these rules trigger on different days.
- Stop after a win. Without it, after the first winning trade, after two winners in a row. Look separately at the average daily result and at the maximum drawdown.
- Trade limit neighborhood. From one to six trades per day. Matteo chose four in-sample, so test it on a period outside the fitting.
- Time window. Break down trade results by half-hour after the open. Cutoff after 60, 90, 120 and 180 minutes.
- Prop rules. If the goal is to pass a challenge, model the specific firm's daily loss limit and trailing drawdown with and without the limits. In the simulation shuffle days, not individual trades, so the order within a day is preserved.
Platform notes
TradingView (Pine Script)
strategy.risk.max_intraday_filled_orders(n)counts orders, and an entry plus an exit are two orders. Once the limit is reached the strategy closes the position and does not trade until the end of the session. A session here is the symbol's trading day: for CME futures it starts at 18:00 ET the day before, not at 09:30.- Count the losing streak yourself. When
strategy.closedtradesgrows, take the result of the last trade viastrategy.closedtrades.profit(strategy.closedtrades - 1). Reset the counters on the first bar after 09:30 ET usingtime(timeframe.period, "0930-1600", "America/New_York"). strategy.risk.max_cons_loss_dayscounts losing days in a row, not trades. It does not fit the "two losses in a row" rule.- If the stop and the target are both hit within one candle, the tester chooses the order itself, and the sequence of wins and losses changes. For streak-based rules this matters: you need
use_bar_magnifieror a lower timeframe.
MultiCharts and TradeStation (EasyLanguage)
- A new closed trade shows up as an increase in
TotalTrades, andPositionProfit(1)gives its result. Store the streak counters in variables. EntriesToday(Date)gives the number of entries for the day. A reset onDate <> Date[1]on a round-the-clock futures chart happens at midnight, not at 09:30. For rules based on the regular session, reset the counters on the first bar after the open (on 5-minute barsTime = 935).- Orders in EasyLanguage live for one bar, so a limit is simply a condition before sending orders. Check that the stop and target of an already open position keep being sent.
- Clarify the order of stop and target within a bar with Look-Inside-Bar in TradeStation or Bar Magnifier in MultiCharts, otherwise the streaks in the test will be different.
MetaTrader 5 (MQL5)
- Closed trades for the day:
HistorySelect(start of day, TimeCurrent()), loop overHistoryDealsTotal(), filter byDEAL_ENTRY_OUTand your own magic number. Calculate the result asDEAL_PROFITplusDEAL_COMMISSIONandDEAL_SWAP, otherwise a trade "near zero" will be counted as a winner. - A partial close creates several exit deals for one position. Count trades by
DEAL_POSITION_ID, otherwise the limit will trigger early. - The start of the day in MT5 is midnight on the broker's server. Convert 09:30 ET to server time, taking daylight saving time into account.
- Counters held in the EA's memory reset when the terminal restarts. The tester does not show this, but in live trading the EA will forget the morning's losses after a restart. It is more reliable to recalculate them from history each time.
Where the idea can break
- Four of the five authors trade discretionarily, and their arguments are mostly about discipline. For a mechanical system these reasons do not apply, and a statistical benefit has not been proven.
- The figures from personal journals (Matthias's spreadsheet, Chris's statistics) are not published. The claim about the third trade after two winners contradicts simple probability if trades are independent.
- All interviews were recorded on a prop firm's channel, in a conversation about payouts and challenges. The limits there are tuned to the firms' daily loss limits.
- Matteo's four-trade limit was chosen in-sample.
- If a system makes one or two trades a day, the two-loss rule almost never triggers and does not affect the result. If there are many trades, the limit cuts off most of the sample, and the expectancy estimate becomes noisier.
- The authors do not cover breakeven trades, partial exits and reversals. When the day ends depends on how you count them.