Syntax
public Momentum(DataSeries ds, int period, string description)
public static Momentum Series(DataSeries ds, int period)
public static double Value(int bar, DataSeries ds, int period)
Parameter Description
ds |
The source DataSeries |
period |
Indicator calculation period |
Description
Momentum is the difference between current price and the price a specified number of bars ago,
period. The momentum indicators shows the speed at which price changes from one period to another. It give a excellent indication of the market participants commitment to the current trend. When the momentum begins to slow or turn, it indicates diminishing commitment and a loss of momentum. This indicator is a leading or coincidental indicator. A momentum value above zero indicates that prices are moving up, and below zero moving down.
The momentum indicator has overbought and oversold zones. These zones are defined by lines that are placed so the Momentum indicator spends about 5% of its time within the zones. The lines should be adjust according to market conditions.
Interpretation
- In ranging markets, go long when the indicator falls below the oversold line then rises back above the oversold line.
- In ranging markets, go short when indicator rises above the overbought line the falls back below the overbought line.
- In ranging markets, go long on bullish divergences, if the indicator's first trough is in the oversold zone.
- In ranging markets, go short on bearish divergences, if the indicator's first peak is in the overbought zone.
- An uptrend can be confirmed using a trend following indicator. Go long when the momentum indicator turns up from below the center line. Exit using the trend following indicator. Divergences of the momentum and price in during the trend can be misleading.
- A downtrend can be confirmed using a trend following indicator. Go short when the indicator turns down from above the center line. Exit using the trend following indicator. Divergences of the momentum and price in during the trend can be misleading.
Calculation
Momentum = Price
today - Price
n periods agoTypically, the closing DataSeries, Close, is used.
Example
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators;
namespace WealthLab.Strategies
{
public class MyStrategy : WealthScript
{
protected override void Execute()
{
// This Strategy plots absolute momentum, and calculates momentum as a percentage of current price.
DataSeries mom30 = Momentum.Series( Close, 30 ); mom30.Description = "Standard Momentum";
DataSeries MomPct = mom30/Close; MomPct *= 100; MomPct.Description = "Percentage Momentum";
ChartPane MomPane = CreatePane( 30, true, true );
ChartPane MomPctPane = CreatePane( 30, true, true );
PlotSeries( MomPane, mom30, Color.Black, WealthLab.LineStyle.Histogram, 3 );
PlotSeries( MomPctPane, MomPct, Color.Black, WealthLab.LineStyle.Histogram, 3 );
}
}
}