Dynamic Time Oscillator

Dynamic Time Oscillator

1. Introduction to the Dynamic Time Oscillator

The Dynamic Time Oscillator (DTO) is a technical analysis tool designed to provide a richer and more dynamic view of market momentum. It combines the Relative Strength Index (RSI) and the Stochastic RSI, but introduces an additional dimension: a comparison between two different timeframes. This multi-timeframe approach makes DTO an advanced oscillator, ideal for both intraday traders and swing traders aiming to anticipate significant trend changes.

Unlike traditional oscillators that operate only within the current chart timeframe, the Dynamic Time Oscillator also computes a Stochastic RSI on a higher timeframe (e.g., daily). This broader perspective helps filter out false signals and improves the timing of trading decisions.

Additionally, the DTO displays the momentum direction of the higher timeframe using a color-coded histogram, offering immediate visual insight into the underlying strength of the market.

2. How the Indicator Works

The Dynamic Time Oscillator performs a dual-layer momentum analysis using the Stochastic RSI on both the current and a higher timeframe. This setup allows it to detect divergences and confirm movements with greater reliability.

Calculation on the Higher Timeframe

First, the DTO switches to a higher timeframe (default: daily) to compute an RSI over a user-defined period. This RSI is then normalized into a Stochastic RSI, which is smoothed with two moving averages: a fast line (%K) and a slow line (%D). The resulting %K value is displayed as a histogram.

This histogram is dynamically colored depending on the crossover between the two smoothed lines: green when %K is above %D (bullish bias), and red when it is below (bearish bias).

Calculation on the Current Timeframe

At the same time, the indicator performs the same RSI and Stochastic RSI calculations on the current chart’s timeframe, using user-defined parameters and smoothing values. These values are plotted as two separate lines (default: blue for %K, purple for %D) to help identify overbought or oversold conditions in the short term.

Combined Interpretation

The strength of this indicator lies in its comparative approach: the histogram reflects the broader trend on a higher timeframe, while the stochastic lines on the current timeframe help pinpoint precise entry or exit points. When both signals align (e.g., green histogram and bullish %K crossover), the trading setup gains higher confidence.

3. Indicator Settings

The Dynamic Time Oscillator allows customization of various parameters for both timeframes, making it adaptable to different trading styles and instruments.

Available Parameters

Current timeframe:

  • intRSIPeriod: RSI period (default 13). Controls sensitivity to price movements.
  • intStochPeriod: Stochastic RSI period (default 8). Defines the range for RSI normalization.
  • intSmoothK: Smoothing for the fast %K line (default 5).
  • intSmoothD: Smoothing for the slow %D line (default 5).

Higher timeframe:

  • boolMTFUse: Enables or disables multi-timeframe overlay. Set to 0 to hide histogram.
  • intHTFRSIPeriod: RSI period for the higher timeframe (default 13).
  • intHTFStochPeriod: Stochastic RSI period for the higher timeframe (default 8).
  • intHTFSmoothK: Smoothing for higher TF %K line (default 5).
  • intHTFSmoothD: Smoothing for higher TF %D line (default 5).

Practical Recommendations

  • For scalping or intraday trading, consider a 5 or 15-minute chart with an hourly or 4-hour higher timeframe.
  • For swing trading, a 1-hour chart with a daily higher timeframe is a common setup.
  • Horizontal levels at 25 and 75 serve as overbought and oversold thresholds. Crosses of these levels, especially when confirmed by histogram direction, can act as signal triggers.

4. Indicator Code for ProRealTime

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
Related users ' posts
bala Hi Nicolas, I have been extensively researching for lot of answers here. I found that you...
Nicolas Don't apply it on price, use the main "indicator and trading system" button found on the top...
Bogdan35 Hello, Is there one for MT4?
Nicolas
7 years ago
Kosuda76 Thanks for your reply! But I do not really understand what the opposite of them the values ​...
AdriTrade Good job Louis!! How could do this for the Williams indicator? Thank you very much.
imorandin Hi!, Nice code. I'm tryng to port it to another language, but I don't understand this part:...
luxrun Thanks, bolsatrilera, for a very good and solid screener!
luxrun sorry... indicator!
Lily Rios Gracias por el indicador, tengo una pregunta necesito programar un screener de valores que e...
Bebbo Grazie del prezioso contributo Nicolas, scusa la mia inesperienza, sono alle prime armi e s...
Nicolas To avoid recalculation, you should use the one from this post.
Bebbo Ok Grazie Nicolas.
bolsatrilera
7 years ago
jissey Bonjour Bolsatrilera, je trouve le cm rsi interessant, merci de l'avoir mis à disposition ! ...
bolsatrilera bonjour jissey, je n'ai aucune information sur ce que tu dis, je suis désolé.
ALE Hi the color is given by a numerical value derived from the oscillator in use. If you comp...
efahmy Thanks mate
Jo-01-R Hello, it is possible to have this indicator but instead of colors rather have numbers rangi...
Nicolas
7 years ago
enricot Scusa nn riesco.
SoloContado If you smooth the signal using a "summation" function, you get a nice "crossing of 0" graph....
ShaunG Greatly appreciated Nicolas!
Etienne Hi, thanks for proving this code. I would like to contribute by adding a computation speed...
Etienne //Compute Super Smoother coefficients once if barindex = 1 then a1 = exp( -1.414 * 3.14159...
Nicolas Thanks a lot!
ak5hay2 Works like crazy on bitcoin. Use different timeframes. Thanks a lot Doc!!!
richyowen Hi, great code thanks. Very new to this forum. Is there a way to add a 100point target on an...
lisamitch50 Morning all, Just backtested on quite a few instruments, worked well on backtesting, but tel...
Matriciel
7 years ago
Alai-n Thanks...
Bard Thanks for sharing this Verdi55. More instructions from Larry Williams website (and a fea...
Nicolas
7 years ago
Jurik RSX
v10.3
Jurik RSX
3
Indicators
hartgeld Hallo Nicolas, ein sehr guter Indikator, vielen Dank! Leider rechnet er bei mir nicht die Pe...
rigel Hi Nicolas, have you coded the Jurik alone (as Mov. average)?
Nicolas 2 versions available in this indicator: https://www.prorealcode.com/prorealtime-indicators/a...
AG1 Thanks Nicolas Still a problem in line 29 Please take a look. thanks again Alex
Nicolas code is modified in the above post, use that one.
AG1 Still a problem in line 29 Please take a look. thanks again Alex
styrke Hello Nicolas, Nice screener, I appreciate the way you always try to condense at maximum th...
Nicolas There's no particular reason. RSI is widely use with its default period and results seems re...

Top