

Gap Study  Microsoft by Jon DeBry 


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 13% gap up showed an aboveaverage occurrence of the stock closing even higher 
if Microsoft gapped up between 1 and 2%, it closed equal to or abovethe open 62% of the time.
If Microsoft gapped up between 2 and 3%, the percentage improved to72%.
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 wasgreater 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 itgapped down 2 to 3%, the percentage dropped to 33%.
Ranges
If Microsoft gapped up, did it return to the previous close, asconventionalwisdom sometimes suggests?
As it turns out, a 12% gap up returned to the previous close 41% ofthe time, a 23% gap returned 12% of the time,
and a 3+% gap returned 13% of the time.
Conversely, a 12% gap down will return to the previous close 58% ofthe time, a 23% 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 12% gap up, 63% of the time,for 23%, 60% of the time, for 3+%, 38% of the time.
Conclusion
Microsoft's sweet spot seems to be a 23% gap up, which showed a continuationof the trend 72% of the time.
Also, if you bought on any selloffs, you showed a profit at the endof the day the majority of the time,
especially on large down gaps. Please note that Microsoft hasbeen a very strong stock over the 6 year period,and other stocks may not act the same way, as Microsoft may not actthe 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 inputis the gap increment(e.g., 1%, which would give you a range of 12%). 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:


Gap Study  Minimum
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'sclose on a gap day: 

Gap Study  Increment
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 continuesthegap trend: 

Gap Study  Down
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 likeJon to write a formula for you, or even do a study similar to the oneabove,
send mail to jdebry@debry.com. 

Source / From: 
TOP 
http://www.debry.com 

