Trading the Nasdaq 100 closing imbalance
Ten minutes before the US stock market closes, the exchanges announce which stocks have more buy orders than sell orders waiting for the closing auction. The Nasdaq 100 index reacts to that announcement within seconds, and we found that a large reaction tends to keep moving the same way until the auction starts. A simple automated strategy that follows it returned +$2,044.55 on a 1.00 lot position over six and a half years of backtesting, with a closed-trade drawdown of −$124.50.
That result comes with limits you should know before anything else. The profit per trade is small, the test contains 245 trades, the same rule lost money in 2017–2019 when the market was quieter, and every figure is from a backtest, not a live account. Treat this as a well-tested idea to verify on your own broker, not a finished money machine.
Key figures
Final version of the strategy, with the day filter described in section 7. MetaTrader 5 Strategy Tester, $10,000 starting balance, 1.00 lot, commission included.
01Introduction: a pattern hiding in one candle
Most price charts are drawn as candles. Each candle covers a fixed slice of time, here one minute, and shows where the price started, where it finished, and the highest and lowest points in between. A tall candle means the price moved a lot in that minute; a short one means it barely moved.
While watching the US100, a contract that tracks the Nasdaq 100 index of the hundred largest companies listed on the Nasdaq exchange (Apple, Microsoft, Nvidia, Amazon and others), one of our team noticed that the candle stamped 22:50 on their MetaTrader 5 chart was often much larger than the candles around it. Nothing on the economic calendar explained it, and it happened on ordinary days.
That raised two questions this report answers. What is happening at that minute? And can a trader, or a trading robot, use it?
02What happens at 22:50: the closing imbalance
The closing auction
At 16:00 New York time the US stock market closes. The official closing price of every stock is not simply the last trade of the day. It is set by a closing auction: one large, single match of all the buy and sell orders that asked to trade exactly at the close.
A great deal of money uses that auction. Index funds, pension funds and exchange-traded funds are measured against the closing price, so they send orders marked market-on-close to be sure they trade at it. On busy days these orders are worth many billions of dollars.
The imbalance announcement
At 15:50 New York time, the Nasdaq and New York Stock Exchange start publishing the imbalance for each stock: whether more shares are waiting to be bought or sold in the auction, and how many. If Apple shows two million more shares to buy than to sell, someone has to supply those shares, and the price usually has to rise to attract sellers.
Professional traders read those figures the moment they appear and trade ahead of the auction. Because the Nasdaq 100 is built from exactly these stocks, the whole index moves with them.
Why the chart says 22:50
MetaTrader shows prices in the broker's server time, not your local time. The broker used for this study runs its clock seven hours ahead of New York all year round, so 15:50 in New York appears on the chart as 22:50. The market close at 16:00 appears as 23:00.
Average size of each one-minute US100 candle from 22:30 to 23:10 server time, 2020–2026, compared with the average for 22:00–22:49 (1.0×). Hover a bar for its value.
Show the numbers
| Server time | New York time | Size vs normal | What happens |
|---|---|---|---|
| 22:45 | 15:45 | 1.15× | |
| 22:46 | 15:46 | 1.05× | |
| 22:47 | 15:47 | 1.01× | |
| 22:48 | 15:48 | 1.00× | |
| 22:49 | 15:49 | 1.02× | |
| 22:50 | 15:50 | 1.99× | Imbalance published |
| 22:51 | 15:51 | 1.23× | |
| 22:52 | 15:52 | 1.12× | |
| 22:53 | 15:53 | 1.11× | |
| 22:54 | 15:54 | 1.54× | |
| 22:55 | 15:55 | 1.49× | Imbalance update |
| 22:56 | 15:56 | 1.06× | |
| 22:57 | 15:57 | 1.00× | |
| 22:58 | 15:58 | 0.94× | |
| 22:59 | 15:59 | 1.68× | Last minute before auction |
| 23:00 | 16:00 | 1.57× | Market close |
| 23:01 | 16:01 | 1.19× | |
| 23:02 | 16:02 | 0.94× | |
| 23:03 | 16:03 | 0.80× | |
| 23:04 | 16:04 | 0.76× | |
| 23:05 | 16:05 | 0.95× |
The chart lines up with the closing timetable. The 22:50 candle averages 2.0× the normal size of the preceding fifty minutes. Smaller bumps follow at 22:55, when the imbalance figures are refreshed, at 22:59, the last minute before the auction, and at 23:00, the close itself. By 23:10 activity has dropped below its earlier level.
03Data and method
A pattern that looks obvious on a chart can vanish once it is measured properly, so the study was built to catch false discoveries.
- Price history. 3.1 million one-minute US100 candles from a MetaTrader 5 demo server, July 2013 to September 2026. The late-evening minutes are complete from late 2017, so analysis starts there.
- Real costs. Every simulated trade pays the actual spread recorded for that minute, about 0.9 index points ($0.90 per lot). The final MetaTrader tests also charge the broker's commission of $0.60 per lot per trade.
- Separate testing periods. Ideas were chosen using one stretch of years and then checked on later years they had never seen. For the filter search in section 6 we used 2020–2022 to choose, 2023–2024 to confirm, and kept 2025–2026 untouched until the end.
- A luck test. When you try many ideas, some will look good by chance. We reran the entire search on shuffled data with no real pattern in it, twenty times, to measure how good a result pure luck can produce.
- Independent confirmation. The final rules were coded as an Expert Advisor (an automated trading program for MetaTrader) and run in the MetaTrader 5 Strategy Tester, 2 January 2020 to 11 September 2026, $10,000 balance, 1.00 lot, 99% history quality.
Figures in the research tables of sections 6 and 7 come from our own simulation, before commission. Headline results, charts and the yearly table come from the MetaTrader Strategy Tester, after commission. The two agree closely; the tester's net figures run roughly 10–13% lower because of commission and fill differences.
04The base strategy: how it trades
The first finding was about what does not work. Simply buying or selling at 22:51 in the direction of the 22:50 candle made no reliable money, and betting against a big 22:50 candle lost money in every period we tested. The pattern only appears when the 22:50 candle is unusually large for that day: a strong, one-sided reaction to the announcement.
To judge "unusually large" fairly across calm and busy years, the strategy compares the candle to that same evening's normal movement rather than to a fixed number of points.
- Measure normal movement. Take the average size of the one-minute candles from 22:00 to 22:49.
- Measure the 22:50 candle's body, the distance between where it opened and where it closed.
- Check the size. If the body is at least 1.5 times the normal movement, there is a trade. If not, the strategy does nothing that day.
- Enter at 22:51. Buy if the candle closed higher than it opened; sell if it closed lower.
- Exit at 22:59, one minute before the auction, whatever the result.
Position structure and risk controls
The strategy holds at most one position, never adds to a losing trade, and uses a fixed position size. There is no take-profit target: every trade simply closes at 22:59. An emergency stop-loss sits at eight times the evening's normal movement to cover a freak event; it was not triggered once in the test. Trades never stay open overnight, so there are no overnight financing charges (swap).
05Base strategy results
MetaTrader 5 Strategy Tester, 2 January 2020 to 11 September 2026, $10,000 balance, 1.00 lot, commission included.
Closed-trade profit, 1.00 lot, after commission. Hover to read any date.
The base strategy made money in six of seven calendar years; 2023 lost $60.28. The curve climbs steadily through 2020–2022, flattens through 2023, rises sharply in 2024, then goes through its deepest slide in the second half of 2025 before recovering.
Two features made it hard to recommend as it stood. First, a winning rate of 55% on small trades means long losing stretches are normal: the account fell $400.80 from a peak before recovering. Second, profit was concentrated. The best 10 of 483 trades produced 44.7% of the total profit, so a handful of missed days would change the picture.
06Searching for improvements
We tested three kinds of change: a better entry price, a different exit time, and extra conditions for deciding which days to trade. Most ideas did not help, and the reasons are worth knowing because they apply to many strategies.
Entry: waiting for a better price does not pay
A common instinct is to place a limit order: instead of buying straight away at 22:51, wait for the price to dip back by part of the 22:50 candle and buy cheaper. We tested dips of 10% to 75% of the candle's body, cancelling the order if it had not filled by 22:57.
Scroll the table sideways to see all columns.
| Entry method | Trades filled | Net profit | Win rate |
|---|---|---|---|
| Market order at 22:51 | 482 | +$2,322 | 55.4% |
| Limit, 10% dip | 425 | +$1,819 | 56.2% |
| Limit, 25% dip | 354 | +$1,151 | 54.2% |
| Limit, 50% dip | 277 | +$917 | 56.7% |
| Limit, 75% dip | 201 | +$656 | 61.2% |
Every limit order made less money than entering immediately, and the deeper the dip, the worse the result. The reason is uncomfortable but important: the trades that never dip back are the strongest moves, the ones where the imbalance keeps pushing without pause. A limit order misses exactly those and fills on the weaker trades that do pull back.
Exit: the edge ends at the auction
We also tested holding for longer, including overnight to the next morning, with the exit decided by time alone and no stop-loss or profit target.
| Exit time (server) | Trades | Net profit | Win rate |
|---|---|---|---|
| 22:55 | 482 | +$602 | 54.1% |
| 22:59 | 482 | +$2,322 | 55.4% |
| 23:00 (market close) | 482 | +$2,126 | 56.6% |
| 23:15 | 482 | +$526 | 49.6% |
| 23:30 | 482 | +$1,222 | 50.0% |
| 23:50 | 482 | +$1,309 | 50.6% |
| 01:00 next day | 481 | −$3,304 | 44.1% |
| 02:00 next day | 481 | −$4,355 | 44.1% |
22:59 is the best exit. The push from the imbalance is spent once the auction runs, and after the close the index gives part of the move back. Holding overnight turns a profitable strategy into a losing one: the evening move partly reverses, and a position held past midnight pays the broker's overnight financing charge, about $6.59 per lot per night on a buy position.
Conditions: about 100 ideas, and what the luck test showed
Finally we tested whether the shape of the 22:50 candle, or the market around it, could pick better days. We calculated about 100 measurements for every trading day: the size of the candle's body, its full range, its upper and lower wicks (the thin lines above and below the body) and their ratios, where it closed within its range, trading volume, spread, the price moves over the previous 5, 10, 30 and 50 minutes and the whole day, the day's high and low, the previous days' moves, and calendar effects such as month-end and options-expiry days. Each was tested alone and in pairs.
Two results stand out. A popular chart-reading idea, that a candle with a longer lower wick than upper wick shows buying pressure and should be bought, did worse than simply following the candle's body. And none of the candle-shape filters, including "avoid candles with long wicks", beat the luck test: on shuffled data with no pattern at all, the best of the same search reached a score of 4.30 by chance, and the best real shape filters scored below that. They looked good only in the way the luckiest of many coin-flippers looks skilled.
One family of conditions did clear the luck test, reaching 4.83, and it held up in the later years it had not been chosen on. Every member of it involved the same thing: the direction of the day.
07The improvement: trade with the day, not against it
The added rule is short. The strategy only takes the trade if the 22:50 candle points the same way as the day's move since the US stock market opened.
- Find the day's opening price: the open of the 16:30 server-time candle, which is 09:30 in New York, when US stocks start trading.
- Compare it with the 22:50 close. If the index is higher than at the open, the day is up; if lower, the day is down.
- Trade only when they agree. A large upward 22:50 candle on an up day is bought. A large downward candle on a down day is sold. A candle against the day is skipped.
How much difference it makes
The base strategy's trades split into two almost equal groups, and the whole of its profit came from one of them.
| 22:50 candle | Trades | Net profit | Average trade | Win rate | Profit factor |
|---|---|---|---|---|---|
| Agrees with the day | 245 | +$2,192 | +$8.95 | 62.0% | 2.59 |
| Against the day | 237 | +$131 | +$0.55 | 48.5% | 1.06 |
Trades that agreed with the day made about 94% of the profit on half the trades. Trades against the day made almost nothing: an average of 55 cents per trade before commission, which commission removes entirely. Cutting them removes half the risk and very little of the reward.
Why it works
Closing flows follow the day
Some of the largest orders in the closing auction are forced to go the same way as the day's move. Leveraged exchange-traded funds, which promise two or three times the index's daily return, must buy more shares at the close on up days and sell on down days to reset their exposure. Fund managers who wait until the end of the day to act on a trend add to the same side.
A big candle against the day is less clear
When the 22:50 reaction points against the day, the imbalance is fighting those end-of-day flows. Some of these moves continue and some reverse, and they cancel each other out. That is what the table shows: a profit factor of 1.06, which is close to break-even.
Is it a real effect or a lucky setting?
A filter that only works at one exact number is usually luck. This one works across the board. Adding the day rule improved results at every candle-size setting we tried, and requiring a larger day move (20, 40, 60 or 80 basis points, a basis point being one hundredth of one percent) improved quality further while taking fewer trades.
Scroll the table sideways to see all columns.
| Candle size setting | Profit factor without | Profit factor with | Drawdown without | Drawdown with | Trades with |
|---|---|---|---|---|---|
| 0.50× normal | 1.25 | 1.73 | −$638 | −$285 | 607 |
| 1.00× normal | 1.40 | 2.08 | −$448 | −$147 | 408 |
| 1.50× normal (used) | 1.67 | 2.59 | −$388 | −$123 | 245 |
| 2.00× normal | 1.67 | 2.89 | −$337 | −$123 | 126 |
We kept the simplest version, "the day must agree", with no minimum size for the day's move. It is the one setting that required no tuning, so it is the least likely to have been fitted to the past.
08Results with the day filter
The updated Expert Advisor was run again in the MetaTrader 5 Strategy Tester with identical settings.
Scroll the table sideways to see all columns.
| Measure | Base strategy | With day filter |
|---|---|---|
| Net profit | +$2,019.82 | +$2,044.55 |
| Trades | 483 | 245 |
| Profit factor | 1.54 | 2.34 |
| Win rate | 55.3% | 62.0% |
| Win rate, buy trades | 56.9% | 64.1% |
| Win rate, sell trades | 53.6% | 59.6% |
| Average trade | +$4.18 | +$8.35 |
| Closed-trade drawdown | −$400.80 | −$124.50 |
| Largest losing trade | −$113.45 | −$113.45 |
| Share of profit from best 10 trades | 44.7% | 36.5% |
Cumulative closed-trade profit, 1.00 lot, after commission. Hover to compare both versions on any date.
The filtered version finished slightly ahead while taking half as many trades. Its average trade doubled, its profit factor rose from 1.54 to 2.34, and its worst peak-to-trough fall in closed profit shrank by more than two thirds. Because risk fell and profit did not, the strategy earns the same amount for much less pain, which also means a trader could use a larger position for the same level of risk.
| Year | Base trades | Base net | Filtered trades | Filtered net | Filtered win rate |
|---|---|---|---|---|---|
| 2020 | 80 | +$213.02 | 47 | +$326.36 | 66.0% |
| 2021 | 67 | +$385.78 | 36 | +$227.85 | 63.9% |
| 2022 | 68 | +$262.27 | 30 | +$392.37 | 73.3% |
| 2023 | 47 | −$60.28 | 23 | −$0.76 | 47.8% |
| 2024 | 69 | +$621.15 | 34 | +$545.18 | 67.7% |
| 2025 | 95 | +$359.26 | 49 | +$427.11 | 57.1% |
| 2026 (to Sept) | 57 | +$238.62 | 26 | +$126.44 | 50.0% |
| Total | 483 | +$2,019.82 | 245 | +$2,044.55 | 62.0% |
Six of seven years were profitable and 2023 was flat at −$0.76 on 23 trades. The most recent period is the weakest: 2026 to September made +$126.44 with a 50.0% win rate on 26 trades. That is too few trades to say whether the pattern is fading or simply having a quiet year, and it is the main thing to watch.
09Conclusion and possible uses
The 22:50 candle on US100 is not random noise. It lines up with the moment the US exchanges publish their closing-auction imbalances, and a large, one-sided reaction tends to continue for the next eight minutes. The effect is strongest when it agrees with the day's direction. A strategy built on those two facts was profitable over 2020–2026 in testing, with a small drawdown relative to its profit.
It is also a small edge. At 1.00 lot on a $10,000 account it made about 3% a year. It lost money in 2017–2019, when the index moved less and trading costs ate the move. It trades about three times a month, so a single year is a small sample.
Where it could fit
- As one part of a wider portfolio. It is in the market for about eight minutes, three times a month, at a time of day most strategies are not active, so its results are unlikely to move in step with other systems.
- As a filter for other strategies. If you run a strategy that opens positions late in the US session, knowing that 15:50 New York brings a burst of directional movement can help you avoid entering just before it.
- As awareness for manual traders. Wide stop-losses placed close to the price are more likely to be hit in the last ten minutes of the US session than at 14:00.
- As a research starting point. The same auction affects the S&P 500 (US500) and the Dow Jones (US30). We have not tested those, and they should not be assumed to behave the same way.
10Before you use it: test on your own broker
Backtest figures belong to the data and broker they were produced on. Before risking money, check every one of these points.
- Find your broker's clock. The strategy must act on the candle that starts at 15:50 New York time. On brokers seven hours ahead of New York, common for brokers quoting "GMT+2 in winter, GMT+3 in summer", that is 22:50. On other brokers it is different. A reliable check: open a one-minute US100 chart and find the large candle when US stocks open at 09:30 New York; the signal candle is 6 hours and 20 minutes later. Change the time inputs to match.
- Check the contract size. On the broker used here, 1.00 lot moves $1 per index point. On some brokers it is $10 or $20. Adjust the lot size so that one index point is worth what you expect.
- Backtest on your broker's data in the MetaTrader 5 Strategy Tester, using "1 minute OHLC" or "Every tick based on real ticks", with your broker's real spread and commission.
- Run it on a demo account for at least 4 to 8 weeks. Compare the price you were filled at 22:51 with the price the backtest assumed. The last minutes of the US session are fast, and slippage of even one or two points would take a large share of an average trade worth about eight points.
- Start with the smallest position size your broker allows when you move to a live account, and increase only after live results match the demo.
- Watch for half-day sessions. On a few days a year, such as the day after Thanksgiving, US stocks close at 13:00 New York and there is no 15:50 auction. Consider switching the strategy off on those days.
11Download the Expert Advisor, free
We are releasing the exact Expert Advisor used for these tests at no cost, including its full source code, so you can read every rule, run your own backtests and adapt it.
Installing it
- In MetaTrader 5, open File, then Open Data Folder.
- Go to
MQL5, thenExperts, and copy the unzippedClosing Imbalance EAfolder into it. - Back in MetaTrader, right-click Expert Advisors in the Navigator panel and choose Refresh.
- Open a US100 chart (any timeframe works; the EA reads the one-minute candles itself), drag the EA onto it, tick Allow Algo Trading, and make sure the Algo Trading button in the toolbar is switched on.
Settings
Scroll the table sideways to see all columns.
| Input | Tested value | What it does |
|---|---|---|
| InpSignalBar | 22:50 | Server time of the 15:50 New York candle |
| InpAtrFrom | 22:00 | Start of the window used to measure normal movement |
| InpBodyAtrMult | 1.50 | Minimum body size, in multiples of normal movement |
| InpUseDayFilter | true | Only trade when the candle agrees with the day's move |
| InpDayFrom | 16:30 | Server time of the 09:30 New York stock market open |
| InpMinDayMoveBp | 0 | Minimum size of the day's move, in basis points |
| InpExitTime | 22:59 | Time every position is closed |
| InpEmergencySL_ATR | 8.0 | Emergency stop-loss distance, in multiples of normal movement |
| InpLots | 1.00 | Position size; check your broker's contract size first |
| InpMaxSpreadPoints | 300 | Skip the trade if the spread is wider than this, in points |
All three time inputs are in your broker's server time. If your broker's clock is not seven hours ahead of New York, change them before doing anything else (see section 10).
Risk notes
- Small sample. 245 trades over six and a half years, about 37 a year. A single year holds too few trades to judge the strategy on its own, and 2026 to date is the weakest year with a 50.0% win rate on 26 trades.
- It did not work before 2020. The same rules lost money in 2017–2019, when the index moved less and spread and commission took a larger share of each move. A return to quieter markets could do the same.
- Profit is concentrated. The best 10 trades produced 36.5% of the filtered version's profit.
- Fills. The backtest fills at the opening price of the 22:51 candle. In live trading, slippage in the fast final minutes of the session could remove much of an average profit of $8.35 per trade.
- Drawdown is closed-trade drawdown (−$124.50). It ignores how far a trade moved against the account while open. The Strategy Tester's own equity-based measure, which does include open-trade movement, was $184.72 for the filtered version and $437.60 for the base version.
- Broker dependence. Server clock, contract size, spread and commission all differ between brokers and change the results.
Important — please read
Backtest results. Results are recorded from the MetaTrader 5 Strategy Tester using price history from a demo server, where fills, slippage and spreads can differ materially from a live account. Nothing here is a claim of live trading performance.
Past performance does not indicate future results. The figures describe trades that have already happened over 2 January 2020 to 11 September 2026. They are not a forecast. Strategies with few trades are statistically unreliable no matter how strong the numbers look.
Drawdown shown is closed-trade drawdown. It measures the peak-to-trough of realised profit and does not capture how far positions floated against the account while still open.
Forex and CFD trading carries a high level of risk and can result in the loss of more than your initial deposit. This report is information, not investment advice.