AI support and resistance
AI support and resistancelevels, explained.
An AI reads support and resistance from a chart image the way a person does: it looks for price areas where candles repeatedly stopped and turned, clusters of wicks at a similar height, broken ceilings that became floors, and round numbers price actually respected. The result is a zone, not a line.
Mark the levels on my chart
Drop a chart screenshot below. It stays in your browser through account setup, onboarding and Stripe checkout.
Drop your chart screenshot, or click to choose
PNG, JPEG or WebP, up to 5MB
Create your account, personalize Lynx, and choose a plan before the analysis runs.
Upload before signup · Educational only, not financial advice
How a vision model infers a level from an image
It is worth being precise about the mechanism, because the popular description is wrong. The model does not receive a price series. It receives pixels: candle bodies, wicks, an axis with numbers along it, and whatever you drew on top. From those pixels it identifies where price spent time, where it turned, and roughly what number the axis assigns to that height.
That has one consequence worth internalising: every level it names is an inference from geometry plus an axis reading. It is not a lookup. Five kinds of visual evidence do most of the work.
- Reaction points
- The strongest evidence is behaviour: a price area where candles stopped advancing and turned. Two reversals at roughly the same height make a level, and the more recent one carries more weight than the older one.
- Clusters of wicks
- A row of long wicks ending near the same height is a rejection zone. Wicks matter more than bodies here, because they mark where price went and was refused rather than where it settled.
- Broken levels that flipped
- A ceiling that price closed above and then retested from underneath tends to act as a floor. That flip is visible in the image as a break followed by a shallow return, and it is one of the more reliable structures a screenshot can show.
- Round numbers
- Whole figures attract orders, so 100 on a stock or 1.1000 on a pair are worth naming when price has actually reacted near them. A round number with no reaction behind it is arithmetic, not a level.
- Drawn indicators
- If a moving average, a VWAP or a Bollinger band is on the chart and price has repeatedly turned at it, that line becomes dynamic support or resistance and is read as such. If it is not drawn, it is not there.
The underlying concepts are covered in support and resistance explained, supply and demand zones, and premium and discount zones.
Why every level is a zone and an approximation
Two separate things make a named level approximate, and they are worth separating because only one of them is about the AI.
The first is the market. Reversals never happen at one identical price. A cluster of turns spans a range, sometimes a few ticks and sometimes a full percent, and the orders behind them sit across that whole range. Any single number you write down is a summary of a zone. That is true whether a person, a script or a model draws it.
The second is the image. The axis has finite resolution: on a chart spanning 40 points across 600 pixels, one pixel is about seven cents, and a wick tip a few pixels off translates into a few tens of cents of error. Compression, rescaling, log scaling and a partially cropped axis all widen that error. This is why we say the price axis is the single most important thing to keep legible in a screenshot, and why a level should be treated as the middle of an area rather than a tripwire.
How to sanity-check a level before you trust it
Five checks, in the order that kills a bad level fastest. Any single failure is enough to drop it.
- Does price react there on a higher timeframe?
- Take the same instrument one or two timeframes up and screenshot it. A level that only exists on the timeframe you cropped is a local artefact. A level visible on both is worth planning around.
- Is it visible outside the crop?
- Scroll left and capture more history. If price has traded through that area repeatedly without pausing in the wider view, the reactions in your screenshot were coincidence rather than memory.
- How many touches, and how recent?
- One touch is a data point. Two is a level. Five touches with the last one six months ago is a level that has been eaten. Count them and check the dates.
- Does the zone survive on log scale?
- Horizontal price levels behave the same on linear and log scales, but trendlines and channel edges do not. If the level came from a sloped line, redraw it on the other scale before trusting it.
- Would you have drawn it yourself?
- The read is a second opinion, not an authority. If a named level looks wrong to you on your own chart, that disagreement is information, and it is worth resolving before you size anything.
A vision read compared with an indicator script
Most tools sold as automatic support and resistance are scripts: Pine on TradingView, MQL on MetaTrader. They compute pivots over a lookback window, usually by finding a high with N lower highs on each side, and they draw a line at every one they find. The output is exact, repeatable and completely indifferent to whether the level means anything. Change the lookback and you get a different set of lines from the same chart.
A vision read works the other way round. It is less precise about the number and more explicit about the reason: this zone, because price turned here three times and the last rejection left a long wick. That is a claim you can argue with, which is the property that makes it useful as a second opinion. A line that appears because a lookback parameter said so gives you nothing to disagree with.
In practice the two are complementary. Run the script if you want every pivot enumerated, and read the chart if you want to know which of them price actually respects. Neither removes the work of checking.
What it cannot do
- It cannot see levels outside the crop, which is where a large share of missed levels come from. Widen the capture before blaming the read.
- It cannot read an illegible axis. With the price scale cropped or blurred, levels come back as descriptions rather than numbers.
- It cannot see resting orders, liquidity or the order book. It infers from price behaviour alone, which is a lagging record of those things.
- It cannot tell you a level will hold. Levels break constantly, which is why a plan needs an invalidation rather than faith in a line.
- It cannot know about a level created after your screenshot was taken. The read describes the moment you captured.
Turn levels into something actionable with the AI trade plan generator, see the platform capture guide for TradingView screenshots, and read the category overview on AI chart analysis.
Frequently asked questions
- How does AI find support and resistance on a chart?
- From a screenshot, a vision model looks for price areas where candles repeatedly stopped and reversed: clusters of wicks ending at a similar height, ceilings that broke and then held as floors, and round numbers price actually reacted to. It reads behaviour visible in the image rather than computing a formula.
- Are AI support and resistance levels accurate?
- They are as precise as your price axis is legible, and they are approximate by nature because the underlying levels are zones rather than lines. Treat a named level as the centre of an area a few ticks wide, and confirm it on a higher timeframe before planning around it.
- Why are support and resistance zones, not lines?
- Because the reactions that create them never happen at one identical price. A cluster of reversals spans a range, and the orders behind them sit across that range. Drawing a single line hides that width, which is why a plan built on an exact price gets stopped out inside noise.
- How is this different from an automatic support resistance indicator?
- A Pine script or an MQL indicator computes levels from a fixed rule, usually pivot highs and lows over a lookback window, and it will output a level whether or not it means anything. A vision read weighs how price behaved at the area and says so in words, which makes it arguable rather than mechanical. Neither is a substitute for checking the level yourself.
- How do I check a level before I use it?
- Capture the same instrument one timeframe higher and see whether price reacted there too. Then scroll left and check the level is not an artefact of your crop. Count the touches and their dates. If it fails those, it is a mark on a chart, not a level.
- Which timeframes give the cleanest levels?
- Daily and four-hour charts, in general. Higher timeframes contain fewer, better-tested levels because each candle absorbs more activity. On one-minute and five-minute charts most areas are noise, and the read will describe zones rather than tight prices.
· Educational only. Not financial advice.
Stop guessing where the level is.Get it named.
Upload before signup. Finish onboarding and Stripe checkout, then the levels are read from the chart you already sent.
Upload my chartEducational only. Not financial advice. Read the risk disclosure.