DeBry.com - Research - MetaStock - Columnists
MetaStock® Plug-ins and more
PRODUCTS  |  SUPPORT

 

Gap Study - Microsoft

By Jon DeBry,
Last Update: 1:00 PM MT Feb 23, 1999

What are the odds that if Microsoft gaps up in the morning, it will close even higher? How likely is it that it will return to the previous day’s price?

The following study examines gap openings in Microsoft from February 27, 1993 to February 22, 1999. The MetaStock formulas for conducting the tests are included below.

Gaps

Results showed that a 1-3% gap up showed an above-average occurrence of the stock closing even higher - if Microsoft gapped up between 1 and 2%, it closed equal to or above the open 62% of the time. If Microsoft gapped up between 2 and 3%, the percentage improved to 72%. There were 13 gaps of greater than 3%, 8 of which closed even or higher. Compare these results to the percent of the time that the close was greater than or equal to the open on any day, which was 53%.

On the other hand, gaps down didn’t show nearly as much follow through - when Microsoft gapped down 1 to 2%, the close was lower than the open only 43% of the time, and when it gapped down 2 to 3%, the percentage dropped to 33%.

Ranges

If Microsoft gapped up, did it return to the previous close, as conventional wisdom sometimes suggests? As it turns out, a 1-2% gap up returned to the previous close 41% of the time, a 2-3% gap returned 12% of the time, and a 3+% gap returned 13% of the time.

Conversely, a 1-2% gap down will return to the previous close 58% of the time, a 2-3% gap down 29% of the time, and a 3+% gap down 23% of the time.

The following day

How often did the opening price the day after a gap show a follow through? For a 1-2% gap up, 63% of the time, for 2-3%, 60% of the time, for 3+%, 38% of the time.

Conclusion

Microsoft's sweet spot seems to be a 2-3% gap up, which showed a continuation of the trend 72% of the time.  Also, if you bought on any sell-offs, you showed a profit at the end of the day the majority of the time, especially on large down gaps.  Please note that Microsoft has been a very strong stock over the 6 year period, and other stocks may not act the same way, as Microsoft may not act the same way in the future.   Readers are encouraged to do their own research before making any decisions.

Formulas

The MetaStock formulas to calculate these percentages are shown below. The first input is the minimum gap (e.g., 1%), and the second input is the gap increment (e.g., 1%, which would give you a range of 1-2%). To calculate gaps down, change the percentage to a negative.

Formula to determine whether the closing price is equal to or exceeds the opening price on a gap day:

MinGap := Input("Minimum gap to consider (%)",-10000,10000,1);
GapIncrement := Input("Gap Increment (%)",0,100,1);

LookingForGapUp := MinGap >= 0; LookingForGapDown := MinGap < 0;

{ Gap percentage }
Gap := (OPEN - Ref(CLOSE,-1))/Ref(CLOSE,-1)*100;

NumGaps := If(LookingForGapUp, Cum(Gap >= MinGap AND Gap < MinGap + GapIncrement), If(LookingForGapDown, Cum(Gap <= MinGap AND Gap > MinGap - GapIncrement),0));

If(LookingForGapUp, Cum(If(Gap >= MinGap AND Gap < MinGap + GapIncrement, If(CLOSE >= OPEN, +1,0),0)),

If(LookingForGapDown, Cum(If(Gap <= MinGap AND Gap > MinGap - GapIncrement, If(CLOSE <= OPEN, +1, 0),0)), 0))/NumGaps*100;

Formula to determine whether the daily range crosses the previous day’s close on a gap day:

MinGap := Input("Minimum gap to consider (%)",-10000,10000,1);
GapIncrement := Input("Gap Increment (%)",0,100,1);

LookingForGapUp := MinGap >= 0; LookingForGapDown := MinGap < 0;

{ Gap percentage }
Gap := (OPEN - Ref(CLOSE,-1))/Ref(CLOSE,-1)*100;

NumGaps := If(LookingForGapUp, Cum(Gap >= MinGap AND Gap < MinGap + GapIncrement), If(LookingForGapDown, Cum(Gap <= MinGap AND Gap > MinGap - GapIncrement),0));

If(LookingForGapUp, Cum(If(Gap >= MinGap AND Gap < MinGap + GapIncrement, If(LOW <= Ref(CLOSE,-1), +1,0),0)),

If(LookingForGapDown, Cum(If(Gap <= MinGap AND Gap > MinGap - GapIncrement, If(HIGH >= Ref(CLOSE,-1), +1, 0),0)), 0))/NumGaps*100;

Formula to determine whether the following day’s open continues the gap trend:

MinGap := Input("Minimum gap to consider (%)",-10000,10000,1);
GapIncrement := Input("Gap Increment (%)",0,100,1);

LookingForGapUp := MinGap >= 0; LookingForGapDown := MinGap < 0;

GapYesterday := (Ref(OPEN,-1) - Ref(CLOSE,-2))/Ref(CLOSE,-2)*100;

NumGapsthruYesterday := If(LookingForGapUp, Cum(GapYesterday >= MinGap AND GapYesterday < MinGap + GapIncrement), If(LookingForGapDown, Cum(GapYesterday <= MinGap AND GapYesterday > MinGap - GapIncrement),0));

If(LookingForGapUp, Cum(If(GapYesterday >= MinGap AND GapYesterday < MinGap + GapIncrement, If(OPEN > Ref(CLOSE,-1), +1,0),0)),

If(LookingForGapDown, Cum(If(GapYesterday <= MinGap AND GapYesterday > MinGap - GapIncrement, If(OPEN < Ref(CLOSE,-1), +1, 0),0)), 0))/NumGapsthruYesterday*100;


Jon DeBry is a former Equis programmer who now does MetaStock programming and consulting.  If you'd like Jon to write a formula for you, or even do a study similar to the one above, send mail to jdebry@debry.com.

 

Contact Us | Disclosure/Disclaimer


Adaptick, Inc.
Salt Lake City, Utah