Wealth-Lab Wiki

API ChartStyles Community Components Community Indicators IndexDefinitions Knowledge Base Misc Optimizers Pending Deletion PosSizers Providers Standard Indicators TASC Traders Tips TASCIndicators Tutorial Videos Visualizers
RSS

Navigation


Quick Search
»
Advanced Search »


Rainbow Oscillator

RSS

Syntax

public RainbowOsc(DataSeries ds, int period, int levels, string description): base(ds, description)
public static RainbowOsc Series (DataSeries ds, int period, int levels )

Parameter Description

dsDataSeries used to build Rainbow Oscillator
periodLookback period
levelsNumber of levels

Description

Rainbow Oscillator by Mel Widner, Ph.D., was introduced in July 1997 issue of Stocks and Commodities magazine. It is a trend changing indicator.

The Rainbow Oscillator is based on a recursively smoothed (usually ten times) simple moving average (usually two-period). The oscillator derives a market consensus from this repetitive smoothing.

Interpretation

When the oscillator goes beyond 80 or below 20, the market becomes more and more unstable, so there's a higher chance of a sudden reversal. When the oscillator becomes more and more flat, the market tends to remain more stable.

Example

The following example illustrates plotting Rainbow Oscillator together with companion Rainbow Charts lines:

using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators;
using TASCIndicators;

namespace WealthLab.Strategies { public class MyStrategy : WealthScript { Random r = new Random(); private Color RandomColor() { Color randomColor = Color.FromArgb(r.Next(255), r.Next(255), r.Next(255)); return randomColor; } protected override void Execute() { DataSeries Price = Close; int Length = 2, Level = 10; List<DataSeries> lst = new List<DataSeries>(); lst.Add( SMA.Series(Price, Length) );

// Rainbow Charts for( int i = 1; i < Level; i++ ) { DataSeries ds = SMA.Series( lst[lst.Count - 1], Length ); ds.Description = string.Format( "Rainbow({0})", i ); lst.Add( ds ); PlotSeries( PricePane, ds, RandomColor(), LineStyle.Solid, 1 ); } // Rainbow Oscillator DataSeries RO = RainbowOsc.Series( Price, Length, Level ); ChartPane roPane = CreatePane( 30,true,true ); PlotSeries( roPane, RO, Color.Blue, LineStyle.Histogram, 3 ); } } }

Important Disclaimer: The information provided by Wealth-Lab is strictly for informational purposes and is not to be construed as advice or solicitation to buy or sell any security.  The owner of Wealth-Lab.com assumes no liability resulting from the use of the material contained herein for investment purposes. By using this web site, you agree to the terms of this disclaimer and our Terms of Use.

Used under license from FMR Corp. Copyright 2008 FMR Corp. All rights reserved.


ScrewTurn Wiki. Some of the icons created by FamFamFam.