OPEN-SOURCE SCRIPT

Multi Oscillator

Updated
An oscillator toolbox. Highly configurable.

Three oscillators can be selected to show the momentum of:
  • price
  • flow -> the change in price
  • volume
  • money -> (volume * flow)


See the comments at the beginning of the script for a complete description.

--------------------------------
As my interest in oscillators increased, I was baffled by the vast jungle of available options. Over time, I did my best to distill the essence of what each indicator offered: RSI, Stoch RSI, CMF, OBV, MFI, MACD, VPT, Accum/Dist Index, Ehler's roofing...

Standing on the shoulders of giants, this indicator is a humble re-synthesis of all these indicators. The "value add" is in the organization, which facilitates the cohesive processing of different oscillators in one plot.

In this script, an oscillator is composed in stages:
  • Construct signal -> Remove noise -> Compose Oscillation -> Normalize -> Smooth -> Shape

where each stage is configurable.

There is a lot of flexibility, but once defined, each source (price, flow, volume, money) is constructed in the same way. This facilitates a degree of cohesion that is hard for my brain to render otherwise.


While I find the default settings valuable in my trading, there are so many ways to experiment. Find out what works for you! Share comments of new configurations... as we all learn!




Release Notes
Moved "sum mag" from "Oscillator: Type" to "Shape: Type". "sum mag" is a form of integration, not differentiation (oscillation).

My light bulb finally turned on... misunderstanding fixed.
Release Notes
No functional change... just cleaning up comments.
Release Notes
Default behavior is the same as the previous version.

Added a Differentiate processing stage before the Oscillate stage. Disabled by default. This provides the ability to convert velocity (momentum) signals to acceleration signals. Smoothing is usually needed afterwards.

Rename the "Smooth Filter" stage to “Integrate”. This compliments the Oscillation stage by optional Differentiate and Integrate stages:
  • Construct signal -> Remove Noise -> Differentiate -> Oscillate -> Integrate -> Normalize -> Shape


Rename sub option “close” (in “Wick: Flow Method”) to “price source” and change code to use “Price: Source” instead of close. When used, oscillation lines between flow, volume, money are more consistent. NOTE: If this option is used with Oscillation source “price”, the support/resistance columns disappear. They’re there, but too small render.

--------------------------
My apologies for a bumpy initial release... The addition of a Differentiate stage is the missing piece that finally came into focus. It provides exciting flexibility in generating leading oscillation indicators.

Centered Oscillatorsehler

Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in publication is governed by House rules. You can favorite it to use it on a chart.

Want to use this script on a chart?

Disclaimer