home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1993 #2
/
Image.iso
/
finance
/
tas515dm.zip
/
EXAMPLES.ZIP
/
DIVUPS.TAS
< prev
next >
Wrap
Text File
|
1991-09-24
|
5KB
|
167 lines
{
DIVUPS.TAS PROC PROFIT TEST SCRIPT EXAMPLE
This script was written by Frank Wolynski in April 1991.
It 'encodes' various indicator relationships into a very
nicely formatted, extremely condense presentation.
To run this script, you must set your SYMBOL TABLE SIZE to
15000 or so in the TAS CONFIGURATION SCREEN.
}
{#SCAN_DATE '910401'} {Remove brackets & set date for back test}
#MAX_QUOTES 150 {Increase this # to amount going back}
#OUTPUT_FILE 'DIVUPS.LST' {Set file name to date for ease }
ob_ar : ARRAY;
ad_ar : ARRAY;
PR100 : ARRAY;
PR26 : ARRAY;
PR12 : ARRAY;
Troc : ARRAY;
if quote_count > 102 then
begin
PR12 := ROC(C,12,'%');
PR26 := ROC(C,26,'%');
YPR26 := p[-1];
Troc := ADD(PR12,PR26);
PR100 := MOV(ROC(C,12,'%'),100,'s');
m1troc := mov(Troc,10,'s');
m5troc := mov(Troc,50,'S');
d_clo := c - c[-1];
S_A := STOCH(5,3);
YS_A := p[-1];
SL_A := STOCH(20,5);
YSL_A := p[-1];
avg_vol := cum(V)/quote_count;
ob_ar := obv(); {obv calcs}
mob_ar := mov(ob_ar,50,'s'); {MA of obv}
ad_ar := ad(); {Accum/Dist Calcs}
mad_ar := mov(ad_ar,50,'s');
ma5 := mov(c,50,'s');
ma2 := mov(c,20,'s');
ma1 := mov(c,10,'s');
ma0 := c[0];
sto := INT(SL_A);
if first_ticker then
begin
writeln('---------------------------------------------------------------------------')
writeln('All Indicators are True P = PRoc Reversal')
writeln('Script File = DIVUPS.TAS V = Vol > Avg Vol')
writeln(' O = Obv > 50 MA')
writeln(' A = Acc/Dist > 50 MA')
writeln(' * = 100MA of 12 PRoc > 0')
writeln(' + = 10maTroc > 50maTroc')
writeln('---------------------------------------------------------------------------')
writeln('Security\t\t\tTClose\tChange Sto 12R 26R 100T 50T MAPos Flags')
writeln('---------------------------------------------------------------------------')
end
toda := 0;
if (PR26 > YPR26) then
toda := toda + 1;
if (v > avg_vol) then
toda := toda + 1;
if (ob_ar > mob_ar) then
toda := toda + 1;
if (ad_ar > mad_ar) then
toda := toda + 1;
if (pr100 > 0) then
toda := toda + 1;
if (m1troc > m5troc) then
toda := toda + 1;
IF (toda = 6) then
begin
write(' ',fullname,c,d_clo,INT(sto),' ',INT(PR12[0]),INT(PR26[0]),INT(PR100[0]),INT(m5troc),'\t');
value := 1;
if (ma5 < ma2 and ma2 < ma1 and ma1 < ma0) then
begin
write('5210 ')
value := 0;
end
if (ma5 < ma1 and ma1 < ma2 and ma2 < ma0) then
begin
write('5120 ')
value := 0;
end
if (ma5 < ma2 and ma2 < ma0 and ma0 < ma1) then
begin
write('5201 ')
value := 0;
end
if (ma5 < ma0 and ma0 < ma2 and ma2 < ma1) then
begin
write('5021 ')
value := 0;
end
if (ma5 < ma0 and ma0 < ma1 and ma1 < ma2) then
begin
write('5012 ')
value := 0;
end
if (ma5 < ma1 and ma1 < ma0 and ma0 < ma2) then
begin
write('5102 ')
value := 0;
end
if (ma0 < ma5 and ma5 < ma1 and ma1 < ma2) then
begin
write('0512 ')
value := 0;
end
if (ma0 < ma1 and ma1 < ma5 and ma5 < ma2) then
begin
write('0152 ')
value := 0;
end
if (ma2 < ma5 and ma5 < ma1 and ma1 < ma0) then
begin
write('2510 ')
value := 0;
end
if (ma2 < ma5 and ma5 < ma0 and ma0 < ma1) then
begin
write('2501 ')
value := 0;
end
if (ma2 < ma1 and ma1 < ma5 and ma5 < ma0) then
begin
write('2150 ')
value := 0;
end
if (ma2 < ma1 and ma1 < ma0 and ma0 < ma5) then
begin
write('2105 ')
value := 0;
end
if (ma1 < ma2 and ma2 < ma0 and ma0 < ma5) then
begin
write('1205 ')
value := 0;
end
if (ma1 < ma0 and ma0 < ma2 and ma2 < ma5) then
begin
write('1025 ')
value := 0;
end
if (ma0 < ma1 and ma1 < ma2 and ma2 < ma5) then
begin
write('0125 ')
value := 0;
end
if value = 1 then
write('.... ');
write('PVOA*+');
writeln(' ')
end
END;