About the RSI Calculator
Calculate the Relative Strength Index (RSI) for any market from your own prices. Paste closing prices, one per line, or load a CSV export from TradingView, MetaTrader, Yahoo Finance or your broker, and see the RSI for every bar with a chart and the overbought and oversold levels.
The page uses J. Welles Wilder's original method, the same smoothing TradingView's RSI uses, so the numbers line up with your charts when you give it the same prices, the same period and enough history.
How it works
For each bar the change from the previous close is a gain or a loss. The first average gain and average loss are simple averages over the first 14 changes. After that each average is smoothed: the previous average times 13, plus the new gain or loss, divided by 14. This is Wilder's smoothing, and it's why RSI needs a long history to settle.
RS is the average gain divided by the average loss, and RSI = 100 − 100 ÷ (1 + RS). An RSI near 100 means almost all recent moves were up; near 0, almost all were down. If nothing moved at all there is no RSI value, and the page says so instead of showing a number.
Readings above 70 are commonly called overbought and below 30 oversold. Strong trends can stay beyond those levels for a long time, so many traders use them together with the trend rather than on their own.
Assumptions and limits
- Prices must be in date order, oldest first; files listed newest first are reordered automatically when they have dates.
- The first RSI appears on the bar after the first 14 changes (the 15th close for RSI(14)).
- Because of the smoothing, RSI from a short history can differ slightly from a platform that has years of data; use at least 100 bars for a close match.
Worked examples
StockCharts' worked example
With the 33 closes from the StockCharts RSI lesson, the first RSI(14) is 70.53 and the last is 37.77, matching all 19 published values.
An RSI of 100
If every close in the period is higher than the one before, there are no losses and the RSI is 100.
A shorter period
RSI(7) reacts faster and reaches the 70 and 30 levels more often than RSI(14); RSI(21) is slower and smoother.
How to use the RSI Calculator
- Add closing prices. Paste them, or load a TradingView or MetaTrader CSV.
- Set the period and levels. 14, with 70 and 30, is the standard.
- Read the RSI. The last value, a chart and every bar to download.
Frequently asked questions
How is RSI calculated?
Average the gains and losses over the period, smoothing each new bar with Wilder's method, divide the average gain by the average loss to get RS, then RSI = 100 − 100 ÷ (1 + RS). The page shows the result for every bar.
Why doesn't my RSI match TradingView exactly?
RSI depends on every earlier bar because of the smoothing. Use the same closing prices and period, and give the page enough history, ideally 100 bars or more, so the starting average has faded out; then the values agree to the second decimal.
What does an RSI above 70 mean?
It means recent gains have been much larger than recent losses, which is commonly read as overbought. It is not a sell signal by itself: in a strong uptrend RSI can stay above 70 for weeks while the price keeps rising.
Can I use RSI on any timeframe?
Yes. Paste daily, hourly or one-minute closes; the calculation doesn't care about the timeframe. Each bar is one step, so RSI(14) on hourly data covers the last 14 hours of changes.
Where do I get prices to paste?
Export bars from MetaTrader's History Center, TradingView's chart data, Yahoo Finance's historical data page or your broker as CSV, then load the file here. A list of closing prices copied from a spreadsheet works too.
This tool runs entirely in your browser. What you enter or upload stays on your device and is never sent to our servers.