Using CMI with Turtle Approach

Here is a nice little function that helps determine market choppiness. This function measures the actual distance the market moves against the total distance traveled. If the market starts in the lower left of your chart and moves, without much gyrations, to the upper right then the CMI will reflect a higher value. However if the market moves frantically around the chart and doesn’t achieve a great distance from the initial to the end points then the CMI will reflect a lower number.

Inputs: periodLength(NumericSimple);
Vars: num(0),denom(1);

if(periodLength<>0)then
begin
	denom = Highest(High,periodLength) - Lowest(Low,periodLength);
	num =Close[periodLength - 1]- Close;
		num = AbsValue(num);
	if (denom <> 0) then ChoppyMarketIndex = num/denom * 100;
end;

You can use the CMI function to help determine when you should follow a Turtle style break out. If the market has been trading in a range and you get a break out it might just carry a little more validity. Buying/Selling at really high/low prices may lead to false break outs.