[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[EquisMetaStock Group] Re: Hot Zones from December TASC magazine



PureBytes Links

Trading Reference Links

------------------------------------------------------------------------
You cannot reply to this message via email because you have chosen not
to disclose your email address to the group.

To reply:  http://groups.yahoo.com/group/equismetastock/post?act=reply&messageNum=5544
------------------------------------------------------------------------

As Roy suggested a simple copy and paste.

METASTOCK: DEVELOPING HOT ZONES 

This MetaStock formula is based on Massimiliano Scorpio's "Developing 
Hot Zones" in this issue. To add this formula into MetaStock, click 
Tools | Expert Advisor. Then Click New and enter a name for the 
expert. Afterward, click the commentary tab and enter the code shown 
below. When finished, click OK. 

To use the expert, open any chart and right-click any empty space. On 
the popup menu, select Expert Advisor | Attach. Select your expert 
and then click OK. Then right-click again and chose Expert Advisor | 
Commentary. You will probably need to resize the window so you can 
see all the text at once. The result will look similar to Figure 2 on 
the next page. 

 

FIGURE 2: METASTOCK, HOT ZONES. Here's a sample Expert Commentary in 
MetaStock.
The spacing of the numbers is controlled by the WriteVal() functions. 
The spacing on the headings were done by manually adding spaces in 
the text. You may need to edit the commentary a few times to get 
these headings to line up correctly. A line between the table 
headings and the table values can be made by underlining the heading 
row. 

MetaStock Expert Advisor FORMULA 
  

{pat is a variable defined as the pattern being analyzed.
 To analyze any other pattern, copy text of commentary into
 a word processor and search for
 pat:=
Replace the text following the equal sign with a formula defining the 
desired pattern.
Make sure there is a semicolon after the definition.} 
<Name>
<Symbol>
As of <Date>, writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 Cum(pat),0.0) patterns have occurred out of writeval(cum(1),0.0) 
bars.
The open price, divided by zones, for the bars following the pattern 
were: 
  

  Number in Percent in
 Zone Zone  Zone
    1  writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1) ),25.0)  writeval(pat:=
L<ref(l,-1) AND h>ref(h,-1);
 n:=Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1) ); (n/cum(pat))*100,35.2)
    2  writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 Cum(ref(pat,-1) AND o<ref(h+atr(10),-1) AND o>=ref(h,-1) ),25.0)
writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 n:=Cum(ref(pat,-1) AND o<ref(h+atr(10),-1) AND o>=ref(h,-1) );
(n/cum(pat))*100,35.2)
    3  writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 Cum(ref(pat,-1) AND o<ref(h,-1) AND o>=ref(h-((h-l)/2),-1) ),25.0)
writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 n:=Cum(ref(pat,-1) AND o<ref(h,-1) AND o>=ref(h-((h-l)/2),-1) );
(n/cum(pat))*100,35.2)
    4  writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 Cum(ref(pat,-1) AND o<ref(h-((h-l)/2),-1) AND o>=ref(l,-1) ),25.0)
writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 n:=Cum(ref(pat,-1) AND o<ref(h-((h-l)/2),-1) AND o>=ref(l,-1) );
(n/cum(pat))*100,35.2)
    5  writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 Cum(ref(pat,-1) AND o<ref(l,-1) AND o>=ref(l-atr(10),-1) ),25.0)
writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 n:=Cum(ref(pat,-1) AND o<ref(l,-1) AND o>=ref(l-atr(10),-1) );
(n/cum(pat))*100,35.2)
    6  writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 Cum(ref(pat,-1) AND o<ref(l-atr(10),-1) ),25.0)   writeval(pat:=
L<ref(l,-1) AND h>ref(h,-1);
 n:=Cum(ref(pat,-1) AND o<ref(l-atr(10),-1) ); (n/cum(pat))*100,35.2)
 These are broken down in the following table based on where the 
close was:
 Open    Close Zone
 Zone 1  2   3  4 5 6
     1   {1}writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1) and c>=ref(h+atr(10),-1)
)/Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1) )*100),15.2)   {2}writeval
(pat:=
L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1) and c<ref(h+atr(10),-1) AND
c>=ref(h,-1) )/Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1))*100 ),15.2)  
{3}
writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1) and c<ref(h,-1) AND
c>=ref(h-((h-l)/2),-1) )/Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1))*100
),15.2)  {4} writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1) and c<ref(h-((h-l)/2),-1) 
AND
c>=ref(l,-1) )/Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1))*100 ),15.2)  
{5}
writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1) and c<ref(l,-1) AND
c>=ref(l-atr(10),-1) )/Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1))*100
),15.2)  {6} writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1) and c<ref(l-atr(10),-1)
)/Cum(ref(pat,-1) AND o>=ref(h+atr(10),-1))*100 ),15.2)
             2  {1} writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h+atr(10),-1) AND o>=ref(h,-1) and
c>=ref(h+atr(10),-1) )/Cum(ref(pat,-1) AND o<ref(h+atr(10),-1) AND
o>=ref(h,-1))*100 ),15.2)  {2} writeval(pat:= L<ref(l,-1) AND h>ref
(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h+atr(10),-1) AND o>=ref(h,-1) and
c<ref(h+atr(10),-1) AND c>=ref(h,-1) )/Cum(ref(pat,-1) AND
o<ref(h+atr(10),-1) AND o>=ref(h,-1))*100 ),15.2)  {3} writeval(pat:=
L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h+atr(10),-1) AND o>=ref(h,-1) and c<ref
(h,-1)
AND c>=ref(h-((h-l)/2),-1) )/Cum(ref(pat,-1) AND o<ref(h+atr(10),-1) 
AND
o>=ref(h,-1))*100 ),15.2)  {4} writeval(pat:= L<ref(l,-1) AND h>ref
(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h+atr(10),-1) AND o>=ref(h,-1) and
c<ref(h-((h-l)/2),-1) AND c>=ref(l,-1) )/Cum(ref(pat,-1) AND
o<ref(h+atr(10),-1) AND o>=ref(h,-1))*100 ),15.2)  {5} writeval(pat:=
L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h+atr(10),-1) AND o>=ref(h,-1) and c<ref
(l,-1)
AND c>=ref(l-atr(10),-1) )/Cum(ref(pat,-1) AND o<ref(h+atr(10),-1) AND
o>=ref(h,-1))*100 ),15.2)  {6} writeval(pat:= L<ref(l,-1) AND h>ref
(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h+atr(10),-1) AND o>=ref(h,-1) and
c<ref(l-atr(10),-1) )/Cum(ref(pat,-1) AND o<ref(h+atr(10),-1) AND
o>=ref(h,-1))*100 ),15.2)
     3  {1} writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h,-1) AND o>=ref(h-((h-l)/2),-1) and
c>=ref(h+atr(10),-1) )/Cum(ref(pat,-1) AND o<ref(h,-1) AND
o>=ref(h-((h-l)/2),-1))*100 ),15.2)  {2} writeval(pat:= L<ref(l,-1) 
AND
h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h,-1) AND o>=ref(h-((h-l)/2),-1) and
c<ref(h+atr(10),-1) AND c>=ref(h,-1) )/Cum(ref(pat,-1) AND o<ref(h,-
1) AND
o>=ref(h-((h-l)/2),-1))*100 ),15.2)  {3} writeval(pat:= L<ref(l,-1) 
AND
h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h,-1) AND o>=ref(h-((h-l)/2),-1) and
c<ref(h,-1) AND c>=ref(h-((h-l)/2),-1) )/Cum(ref(pat,-1) AND o<ref(h,-
1)
AND o>=ref(h-((h-l)/2),-1))*100 ),15.2)  {4} writeval(pat:= L<ref(l,-
1) AND
h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h,-1) AND o>=ref(h-((h-l)/2),-1) and
c<ref(h-((h-l)/2),-1) AND c>=ref(l,-1) )/Cum(ref(pat,-1) AND o<ref(h,-
1)
AND o>=ref(h-((h-l)/2),-1))*100 ),15.2)  {5} writeval(pat:= L<ref(l,-
1) AND
h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h,-1) AND o>=ref(h-((h-l)/2),-1) and
c<ref(l,-1) AND c>=ref(l-atr(10),-1) )/Cum(ref(pat,-1) AND o<ref(h,-
1) AND
o>=ref(h-((h-l)/2),-1))*100 ),15.2)  {6} writeval(pat:= L<ref(l,-1) 
AND
h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h,-1) AND o>=ref(h-((h-l)/2),-1) and
c<ref(l-atr(10),-1) )/Cum(ref(pat,-1) AND o<ref(h,-1) AND
o>=ref(h-((h-l)/2),-1))*100 ),15.2)
     4  {1} writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h-((h-l)/2),-1) AND o>=ref(l,-1) and
c>=ref(h+atr(10),-1) )/Cum(ref(pat,-1) AND o<ref(h-((h-l)/2),-1) AND
o>=ref(l,-1))*100 ),15.2)  {2} writeval(pat:= L<ref(l,-1) AND h>ref
(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h-((h-l)/2),-1) AND o>=ref(l,-1) and
c<ref(h+atr(10),-1) AND c>=ref(h,-1) )/Cum(ref(pat,-1) AND
o<ref(h-((h-l)/2),-1) AND o>=ref(l,-1))*100 ),15.2)  {3} writeval
(pat:=
L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h-((h-l)/2),-1) AND o>=ref(l,-1) and
c<ref(h,-1) AND c>=ref(h-((h-l)/2),-1) )/Cum(ref(pat,-1) AND
o<ref(h-((h-l)/2),-1) AND o>=ref(l,-1))*100 ),15.2)  {4} writeval
(pat:=
L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h-((h-l)/2),-1) AND o>=ref(l,-1) and
c<ref(h-((h-l)/2),-1) AND c>=ref(l,-1) )/Cum(ref(pat,-1) AND
o<ref(h-((h-l)/2),-1) AND o>=ref(l,-1))*100 ),15.2)  {5} writeval
(pat:=
L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h-((h-l)/2),-1) AND o>=ref(l,-1) and
c<ref(l,-1) AND c>=ref(l-atr(10),-1) )/Cum(ref(pat,-1) AND
o<ref(h-((h-l)/2),-1) AND o>=ref(l,-1))*100 ),15.2)  {6} writeval
(pat:=
L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(h-((h-l)/2),-1) AND o>=ref(l,-1) and
c<ref(l-atr(10),-1) )/Cum(ref(pat,-1) AND o<ref(h-((h-l)/2),-1) AND
o>=ref(l,-1))*100 ),15.2)
     5  {1} writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(l,-1) AND o>=ref(l-atr(10),-1) and
c>=ref(h+atr(10),-1) )/Cum(ref(pat,-1) AND o<ref(l,-1) AND
o>=ref(l-atr(10),-1))*100 ),15.2)  {2} writeval(pat:= L<ref(l,-1) AND
h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(l,-1) AND o>=ref(l-atr(10),-1) and
c<ref(h+atr(10),-1) AND c>=ref(h,-1) )/Cum(ref(pat,-1) AND o<ref(l,-
1) AND
o>=ref(l-atr(10),-1))*100 ),15.2)  {3} writeval(pat:= L<ref(l,-1) AND
h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(l,-1) AND o>=ref(l-atr(10),-1) and c<ref
(h,-1)
AND c>=ref(h-((h-l)/2),-1) )/Cum(ref(pat,-1) AND o<ref(l,-1) AND
o>=ref(l-atr(10),-1))*100 ),15.2)  {4} writeval(pat:= L<ref(l,-1) AND
h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(l,-1) AND o>=ref(l-atr(10),-1) and
c<ref(h-((h-l)/2),-1) AND c>=ref(l,-1) )/Cum(ref(pat,-1) AND o<ref(l,-
1)
AND o>=ref(l-atr(10),-1))*100 ),15.2)  {5} writeval(pat:= L<ref(l,-1) 
AND
h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(l,-1) AND o>=ref(l-atr(10),-1) and c<ref
(l,-1)
AND c>=ref(l-atr(10),-1) )/Cum(ref(pat,-1) AND o<ref(l,-1) AND
o>=ref(l-atr(10),-1))*100 ),15.2)  {6} writeval(pat:= L<ref(l,-1) AND
h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(l,-1) AND o>=ref(l-atr(10),-1) and
c<ref(l-atr(10),-1) )/Cum(ref(pat,-1) AND o<ref(l,-1) AND
o>=ref(l-atr(10),-1))*100 ),15.2)
     6  {1} writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(l-atr(10),-1) and c>=ref(h+atr(10),-1)
)/Cum(ref(pat,-1) AND o<ref(l-atr(10),-1))*100 ),15.2)  {2} writeval
(pat:=
L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(l-atr(10),-1) and c<ref(h+atr(10),-1) AND
c>=ref(h,-1) )/Cum(ref(pat,-1) AND o<ref(l-atr(10),-1))*100 ),15.2)  
{3}
writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(l-atr(10),-1) and c<ref(h,-1) AND
c>=ref(h-((h-l)/2),-1) )/Cum(ref(pat,-1) AND o<ref(l-atr(10),-1))*100
),15.2)  {4} writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(l-atr(10),-1) and c<ref(h-((h-l)/2),-1) 
AND
c>=ref(l,-1) )/Cum(ref(pat,-1) AND o<ref(l-atr(10),-1))*100 ),15.2)  
{5}
writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(l-atr(10),-1) and c<ref(l,-1) AND
c>=ref(l-atr(10),-1) )/Cum(ref(pat,-1) AND o<ref(l-atr(10),-1))*100
),15.2)  {6} writeval(pat:= L<ref(l,-1) AND h>ref(h,-1);
 (Cum(ref(pat,-1) AND o<ref(l-atr(10),-1) and c<ref(l-atr(10),-1)
)/Cum(ref(pat,-1) AND o<ref(l-atr(10),-1))*100 ),15.2)
As a reminder, here are the definitions of the six different zones: 

Zone 1: above the previous bar's high plus the value of the 10-bar 
ATR 
Zone 2: between the previous bar's high and the high plus the value 
of the 10-bar ATR 
Zone 3: between the previous bar's high and the middle of its range 
Zone 4: between the previous bar's low and the middle of its range 
Zone 5: between the previous bar's low and its low minus the value of 
the 10-bar ATR zone 6: below the previous bar's low minus the value 
of the 10-bar ATR 
  

--William Golson 
Equis International 

--- In equismetastock@xxxx, "joe hernandez" <joebhernandez@xxxx> 
wrote:
> I wish it was that easy, the code is wriiten in the magazine, not 
the 
> website, I was wondering if anyone had copied it yet.
> 
> Thanks
> 
> 
> --- In equismetastock@xxxx, "Roy Larsen" <rlarsen@xxxx> wrote:
> > Joe
> > 
> > Copy/paste works pretty well. Use keyboard shortcuts Ctrl+V and 
> Ctrl+C. From
> > there it's not too difficult to edit out extraneous characters 
that 
> may have
> > become imbedded along the way. If you really have a problem 
editing 
> then you
> > can copy directly to a word processor, but there's nothing quite 
as 
> good as
> > MS Indicator builder for pointing out where the syntax mistakes 
are.
> > 
> > 
> > Roy



------------------------ Yahoo! Groups Sponsor ---------------------~-->
ˇFREE Health Insurance Quotes-eHealthInsurance.com
http://us.click.yahoo.com/1.voSB/RnFFAA/46VHAA/BefplB/TM
---------------------------------------------------------------------~->

To unsubscribe from this group, send an email to:
equismetastock-unsubscribe@xxxxxxxxxxxxxxx

 

Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/