OPEN-SOURCE SCRIPT
True Strength Index (TSI)%

📌 Script Name: TSI Percentuale
This script is a custom True Strength Index (TSI) indicator that expresses momentum strength as a percentage from 0% to 100%, instead of the traditional TSI scale.
✅ What the Script Does
Calculates the standard TSI:
Uses double exponential smoothing of price changes and their absolute values.
Formula:
TSI_raw
=
100
×
DoubleSmoothed(ΔPrice)
DoubleSmoothed(|ΔPrice|)
TSI_raw=100×
DoubleSmoothed(|ΔPrice|)
DoubleSmoothed(ΔPrice)
Normalizes TSI to a percentile scale:
Over a user-defined lookback period, the script finds the lowest and highest TSI values.
It then rescales the current TSI to a value between 0% (minimum) and 100% (maximum).
50% represents neutral momentum (i.e., "flat").
Plots the result:
tsi_percent is plotted as a blue line.
Horizontal dashed/dotted lines are drawn at:
0% → strong downward momentum
50% → neutral
100% → strong upward momentum
⚙️ Inputs
Long Length: Long EMA smoothing period (default: 25)
Short Length: Short EMA smoothing period (default: 13)
Signal Length: (not used in this version, can be removed or extended)
Lookback Period: Number of bars to calculate min/max normalization (default: 100)
🧠 Why Use This Indicator
The classic TSI ranges around [-100, +100] and can be hard to interpret.
This version makes TSI visually intuitive by converting it to percentile form, allowing easier comparison of momentum strength across time and instruments.
It’s particularly useful for defining zones like:
Above 70% = strong bullish
Below 30% = strong bearish
This script is a custom True Strength Index (TSI) indicator that expresses momentum strength as a percentage from 0% to 100%, instead of the traditional TSI scale.
✅ What the Script Does
Calculates the standard TSI:
Uses double exponential smoothing of price changes and their absolute values.
Formula:
TSI_raw
=
100
×
DoubleSmoothed(ΔPrice)
DoubleSmoothed(|ΔPrice|)
TSI_raw=100×
DoubleSmoothed(|ΔPrice|)
DoubleSmoothed(ΔPrice)
Normalizes TSI to a percentile scale:
Over a user-defined lookback period, the script finds the lowest and highest TSI values.
It then rescales the current TSI to a value between 0% (minimum) and 100% (maximum).
50% represents neutral momentum (i.e., "flat").
Plots the result:
tsi_percent is plotted as a blue line.
Horizontal dashed/dotted lines are drawn at:
0% → strong downward momentum
50% → neutral
100% → strong upward momentum
⚙️ Inputs
Long Length: Long EMA smoothing period (default: 25)
Short Length: Short EMA smoothing period (default: 13)
Signal Length: (not used in this version, can be removed or extended)
Lookback Period: Number of bars to calculate min/max normalization (default: 100)
🧠 Why Use This Indicator
The classic TSI ranges around [-100, +100] and can be hard to interpret.
This version makes TSI visually intuitive by converting it to percentile form, allowing easier comparison of momentum strength across time and instruments.
It’s particularly useful for defining zones like:
Above 70% = strong bullish
Below 30% = strong bearish
오픈 소스 스크립트
트레이딩뷰의 진정한 정신에 따라, 이 스크립트의 작성자는 이를 오픈소스로 공개하여 트레이더들이 기능을 검토하고 검증할 수 있도록 했습니다. 작성자에게 찬사를 보냅니다! 이 코드는 무료로 사용할 수 있지만, 코드를 재게시하는 경우 하우스 룰이 적용된다는 점을 기억하세요.
면책사항
해당 정보와 게시물은 금융, 투자, 트레이딩 또는 기타 유형의 조언이나 권장 사항으로 간주되지 않으며, 트레이딩뷰에서 제공하거나 보증하는 것이 아닙니다. 자세한 내용은 이용 약관을 참조하세요.
오픈 소스 스크립트
트레이딩뷰의 진정한 정신에 따라, 이 스크립트의 작성자는 이를 오픈소스로 공개하여 트레이더들이 기능을 검토하고 검증할 수 있도록 했습니다. 작성자에게 찬사를 보냅니다! 이 코드는 무료로 사용할 수 있지만, 코드를 재게시하는 경우 하우스 룰이 적용된다는 점을 기억하세요.
면책사항
해당 정보와 게시물은 금융, 투자, 트레이딩 또는 기타 유형의 조언이나 권장 사항으로 간주되지 않으며, 트레이딩뷰에서 제공하거나 보증하는 것이 아닙니다. 자세한 내용은 이용 약관을 참조하세요.