Smooth Price Oscillator (SPO)

Smooth Price Oscillator (SPO)

1. Introduction

The Smooth Price Oscillator (SPO) is a technical indicator designed to smooth and normalize price variations within a defined range. Unlike traditional oscillators, the SPO applies advanced smoothing and standard deviation techniques to provide clearer signals, less prone to market noise.

The primary goal of the SPO is to help traders identify reversal points and confirm trends with greater precision. This makes it an ideal tool for those seeking a balance between sensitivity and reliability in their chart analysis.

2. Fundamentals of the SPO

The SPO combines two smoothed price lines: one long and one short. These lines are derived from mathematical techniques based on exponential smoothing to eliminate market noise. The difference between these lines generates the central oscillator.

One of the most notable features of the SPO is the normalization of the oscillator using its standard deviation, along with the inclusion of deviation bands. This simplifies visual interpretation by providing dynamic upper and lower bounds.

In summary, the SPO is based on:

  • Smoothing price data.
  • Normalization using standard deviation.
  • Creating dynamic bands to frame the oscillator.

3. Calculating the SPO

The calculation of the Smooth Price Oscillator is done in several steps:

  1. Smoothed long line: Calculated using a longer smoothing period to represent long-term market trends.
  2. Smoothed short line: Uses a shorter period to capture more immediate movements.
  3. Oscillator: Obtained as the difference between the short and long lines.
  4. Normalization: The oscillator value is divided by its maximum observed standard deviation over a defined period.
  5. Upper and lower bands: Calculated using the mean and standard deviation of the normalized oscillator, creating a visual framework to assess extremes.

4. Interpretation and Usage

The SPO provides several ways to interpret data and make trading decisions:

  • Identifying reversal points:
    • Crosses of the oscillator with the upper or lower threshold (positive or negative).
    • Signals generated when the oscillator changes direction within the bands.
  • Confirming trends:
    • Normalized oscillator staying at extreme values (positive or negative) for a prolonged period.
    • Alignment with other indicators like moving averages or RSI.

The oscillator colors provide intuitive visual guidance:

  • Blue shades for positive values.
  • Orange shades for negative values.

5. Configuring the SPO in ProRealTime

The SPO allows adjustment of several parameters to suit different trading styles and markets:

  • Smoothing length (lenSmooth): Controls the smoothing period for the long and short lines.
  • Threshold (threshold): Defines the key overbought or oversold levels for generating signals.
  • Standard deviation length (lenStd): Determines the period used to calculate the oscillator’s standard deviation.

Configuration Tips:

  • For intraday trading strategies, use lower values for lenSmooth to capture quick movements.
  • For long-term strategies, increase lenSmooth to avoid false signals.
  • Adjust the threshold to match the volatility of the asset being analyzed.

6. Conclusion

The Smooth Price Oscillator is a versatile tool that balances sensitivity and reliability in technical analysis. Its ability to filter market noise and provide clear signals makes it ideal for both novice and experienced traders.

Advantages:

  • Noise reduction through advanced smoothing.
  • Easy visualization with colors and dynamic bands.
  • Applicable to multiple time horizons and trading styles.

Limitations:

  • May react with delays in highly volatile markets.
  • Requires appropriate parameter adjustment based on market context.

The SPO is particularly useful in trending markets or assets with predictable movements, offering clear and visually appealing signals for more efficient decision-making.

7. ProBuilder Code

Share this

Risk disclosure:

No information on this site is investment advice or a solicitation to buy or sell any financial instrument. Past performance is not indicative of future results. Trading may expose you to risk of loss greater than your deposits and is only suitable for experienced investors who have sufficient financial means to bear such risk.

ProRealTime ITF files and other attachments : How to import ITF files into ProRealTime platform?

PRC is also on YouTube, subscribe to our channel for exclusive content and tutorials

avatar
Register or

Likes

avatar avatar avatar avatar
Related users ' posts
Vonasi
6 years ago
Balmora74 Thanks for this code. i will try to adapt it in the EUR/USD Pac Man Strategy who is based on...
Vonasi I still have two versions of the PacMan strategy on forward test although there have been va...
Balmora74 I use your version on a real account and the strategy is profitable and i did not have any p...
Jack86gv Ciao Nicolas, e possibile fare uno screener con questo codice ovvero vorrei sapere quando il...
Nicolas https://www.prorealcode.com/topic/screener-regressione-canale/
wharfdog Hi Nicolas, Fantastic work, I'm really grateful for this. I was wondering if it would be ...
Nicolas File and code are updated.
Zasinas2000 Hi allo I am not sure I am doing it correctly, but this adds to proreal as an indicator. ...
Trimicha Hi, when I copy the code, i get an error message that LinRegPeriod is not defined. Doe...
jpm380 Merci pour ce super indicateur. Comment puis-je mettre une alerte dès changement dès croisem...
Nicolas Definition of CustomClose: https://www.prorealcode.com/documentation/customclose/ [2] means...
Bard Just wondered Nicolas, say you had set DEFPARAM CumulateOrders = True, is there anyway for t...
Bard Sorry pls ignore last image, try this - it actually has the Dev Stop indicator! https://www...
Gianluca Hello Nicolas, my prt become stuck when i load the indicator, is there any problem with it?
m-zeter Has anyone found a solution for Sofitech? Would it be possible to draw two lines? An upper l...
m-zeter Hm, i dont know exactly why, but I think, that the indicator needs lots of power. I need als...
anametsinwha Is it possible to change it to highs and lows rather than open and close?
Nicolas Better to download the file from the page and import it into your platform in order to not c...
marcov66 Hi Nicolas, thanks for sharing the VWAP Date Indicator. It is really powerful. Nevertheless,...
Nicolas Are you sure you are using the same exact date, hours, minutes, seconds for anchor?
Lydia1948 Hi I really like this indicator - is it easy to change the colour of the blue dots to say g...
Nicolas Lines 23 and 24 are the Red and Blue value between 0 to 255, you can change the color of the...
Maz
8 years ago
Francesco78 very nice, thanks!
Wilko Interesting! Thanks for sharing!
BjornH Extremely nice, thanks!
CavalierDeCesDames Bonjour Nicolas, Thanks for your use full job. I tried this indicator on a shorter timefram...
Nicolas You are welcome. I'm glad you like it.
Bolbo It does not appear over the price indicator on V11. Thanks in advance.
s00071609 Hi, could you please suggest, what this codes gives, lowest[b](rsi[a]) -- just trying to us...
Nicolas lowest[b](rsi[a]) returns the lowest values of the RSI of "a" periods, over the last "b" per...
s00071609 Hi, what would be the code to get the price for last bullish DTOSC cross over. I am looking ...
lglmrc Can't make it work, says: "Define p variable"
Ezio Hi Xel and thanks, do you know if there is a way in PRC of reading/counting intraday ticks?...
inadis ive just discovered this, i must say very nice thanks.

Top