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

[amibroker] Re: Candle Identification



PureBytes Links

Trading Reference Links


the reason this code is working is because it is not using the last 
half of the code like the one from AB webpage. do you see the 
defference here.
look at the bottom of the next code.

PatternNameList = ""; <<<<<<<<<<<<<<<<problem starts here
for(Cp=0; Cp<=44; Cp++)
	{
	VarSet("Pattern"+NumToStr(Cp,1.0),CandlePattern(cP));
	PatternNameList = PatternNameList +PatternName+","; 
	}

BI = BarIndex();
SelectedBar = SelectedValue(BI) -BI[0];
//Selectedbar = Status("lastvisiblebar")-1;
PStr="";
for(Cp=0; Cp<=44; Cp++)
	{
	Temp = VarGet("Pattern"+NumToStr(Cp,1.0));
	if(temp[SelectedBar]) Pstr=Pstr+"#"+NumToStr(Cp,1.0)+" -
"+StrExtract(PatternNameList,Cp)+"\n";
	}

Title = "\nCandle Demostration \n"+ Pstr;
_SECTION_END();
/////////////////////////////////////////////
/////////////////////////////////////////////
/////////////////////////////////////////////

O1 = Ref(O,-1);O2 = Ref(O,-2);
H1 = Ref(H,-1);H2 = Ref(H,-2);
L1 = Ref(L,-1);L2 = Ref(L,-2);
C1 = Ref(C,-1);C2 = Ref(C,-2);

function CandlePattern(P)
	{
	global PatternName;
	if(P == 0) { PatternName = "NearDoji"; Pv = (abs(O-C)<= ((H-L)
*0.1)); }
	else if(P == 1) { PatternName = "BlackCandle"; Pv = (O>C); }
	else if(P == 2) { PatternName = "LongBlackCandle"; Pv = (O>C 
AND (O-C)/(.001+H-L)>.6); }
	else if(P == 3) { PatternName = "SmallBlackCandle"; Pv = 
((O>C) AND ((H-L)>(3*(O-C)))); }
	else if(P == 4) { PatternName = "WhiteCandle"; Pv = (C>O); }
	else if(P == 5) { PatternName = "LongWhiteCandle"; Pv = 
((C>O) AND ((C-O)/(.001+H-L)>.6)); }
	else if(P == 6) { PatternName = "SmallWhiteCandle"; Pv = 
((C>O) AND ((H-L)>(3*(C-O)))); }
	else if(P == 7) { PatternName = "BlackMaubozu"; Pv = (O>C AND 
H==O AND C==L); }
	else if(P == 8) { PatternName = "WhiteMaubozu"; Pv = (C>O AND 
H==C AND O==L); }
	else if(P == 9) { PatternName = "BlackClosingMarubozu"; Pv = 
(O>C AND C==L); }
	else if(P == 10) { PatternName = "WhiteClosingMarubozu"; Pv = 
(C>O AND C==H); }
	else if(P == 11) { PatternName = "BlackOpeningMarubozu"; Pv = 
(O>C AND O==H); }
	else if(P == 12) { PatternName = "WhiteOpeningMarubozu"; Pv = 
(C>O AND O==L); }
	else if(P == 13) { PatternName = "HangingMan"; Pv = (((H-L)>4*
(O-C)) AND ((C-L)/(.001+H-L)>= 0.75) AND ((O-L)/(.001+H-L)>= 0.75)); }
	else if(P == 14) { PatternName = "Hammer"; Pv = (((H-L)>3*(O-
C)) AND ((C-L)/(.001+H-L)>0.6) AND ((O-L)/(.001+H-L)>0.6)); }
	else if(P == 15) { PatternName = "InvertedHammer"; Pv = (((H-
L)>3*(O-C)) AND ((H-C)/(.001+H-L)>0.6) AND ((H-O)/(.001+H-L)>0.6)); }
	else if(P == 16) { PatternName = "ShootingStar"; Pv = (((H-L)
>4*(O-C)) AND ((H-C)/(.001+H-L)>= 0.75) AND ((H-O)/(.001+H-L)>= 
0.75)); }
	else if(P == 17) { PatternName = "BlackSpinningTop"; Pv = 
((O>C) AND ((H-L)>(3*(O-C))) AND (((H-O)/(.001+H-L))<.4) AND (((C-L)/
(.001+H-L))<.4)); }
	else if(P == 18) { PatternName = "WhiteSpinningTop"; Pv = 
((C>O) AND ((H-L)>(3*(C-O))) AND (((H-C)/(.001+H-L))<.4) AND (((O-L)/
(.001+H-L))<.4)); }
	else if(P == 19) { PatternName = "BearishAbandonedBaby"; Pv = 
((C1 == O1) AND (C2>O2) AND (O>C) AND (L1>H2) AND (L1>H)); }
	else if(P == 20) { PatternName = "BearishEveningDojiStar"; Pv 
= ((C2>O2) AND ((C2-O2)/(.001+H2-L2)>.6) AND (C2<O1) AND (C1>O1) AND 
((H1-L1)>(3*(C1-O1))) AND (O>C) AND (O<O1)); }
	else if(P == 21) { PatternName = "DarkCloudCover"; Pv = 
(C1>O1 AND ((C1+O1)/2)>C AND O>C AND O>C1 AND C>O1 AND (O-C)/(.001+(H-
L)>0.6)); }
	else if(P == 22) { PatternName = "BearishEngulfing"; Pv = 
((C1>O1) AND (O>C) AND (O>= C1) AND (O1>= C) AND ((O-C)>(C1-O1))); }
	else if(P == 23) { PatternName = "ThreeOutsideDownPattern"; 
Pv = ((C2>O2) AND (O1>C1) AND (O1>= C2) AND (O2>= C1) AND ((O1-C1)>
(C2-O2)) AND (O>C) AND (C<C1)); }
	else if(P == 24) { PatternName = "BullishAbandonedBaby"; Pv = 
((C1 == O1) AND (O2>C2) AND (C>O) AND (L2>H1) AND (L>H1)); }
	else if(P == 25) { PatternName = "BullishMorningDojiStar"; Pv 
= ((O2>C2) AND ((O2-C2)/(.001+H2-L2)>.6) AND (C2>O1) AND (O1>C1) AND 
((H1-L1)>(3*(C1-O1))) AND (C>O) AND (O>O1)); }
	else if(P == 26) { PatternName = "BullishEngulfing"; Pv = 
((O1>C1) AND (C>O) AND (C>= O1) AND (C1>= O) AND ((C-O)>(O1-C1))); }
	else if(P == 27) { PatternName = "ThreeOutsideUpPattern"; Pv 
= ((O2>C2) AND (C1>O1) AND (C1>= O2) AND (C2>= O1) AND ((C1-O1)>(O2-
C2)) AND (C>O) AND (C>C1)); }
	else if(P == 28) { PatternName = "BullishHarami"; Pv = 
((O1>C1) AND (C>O) AND (C<= O1) AND (C1<= O) AND ((C-O)<(O1-C1))); }
	else if(P == 29) { PatternName = "ThreeInsideUpPattern"; Pv = 
((O2>C2) AND (C1>O1) AND (C1<= O2) AND (C2<= O1) AND ((C1-O1)<(O2-
C2)) AND (C>O) AND (C>C1) AND (O>O1)); }
	else if(P == 30) { PatternName = "PiercingLine"; Pv = 
((C1<O1) AND (((O1+C1)/2)<C) AND (O<C) AND (O<C1) AND (C<O1) AND ((C-
O)/(.001+(H-L))>0.6)); }
	else if(P == 31) { PatternName = "BearishHarami"; Pv = 
((C1>O1) AND (O>C) AND (O<= C1) AND (O1<= C) AND ((O-C)<(C1-O1))); }
	else if(P == 32) { PatternName = "ThreeInsideDownPattern"; Pv 
= ((C2>O2) AND (O1>C1) AND (O1<= C2) AND (O2<= C1) AND ((O1-C1)<(C2-
O2)) AND (O>C) AND (C<C1) AND (O<O1)); }
	else if(P == 33) { PatternName = "ThreeWhiteSoldiers"; Pv = 
(C>O*1.01) AND (C1>O1*1.01) AND (C2>O2*1.01) AND (C>C1) AND (C1>C2) 
AND (O<C1) AND (O>O1) AND (O1<C2) AND (O1>O2) AND (((H-C)/(H-L))<.2) 
AND (((H1-C1)/(H1-L1))<.2) AND (((H2-C2)/(H2-L2))<.2); }
	else if(P == 34) { PatternName = "DarkCloudCover"; Pv = 
(C1>O1*1.01) AND (O>C) AND (O>H1) AND (C>O1) AND (((C1+O1)/2)>C) AND 
(C>O1) AND (MA(C,13)-Ref(MA(C,13),-4)>0); }
	else if(P == 35) { PatternName = "ThreeBlackCrows"; Pv = 
(O>C*1.01) AND (O1>C1*1.01) AND (O2>C2*1.01) AND (C<C1) AND (C1<C2) 
AND (O>C1) AND (O<O1) AND (O1>C2) AND (O1<O2) AND (((C-L)/(H-L))<.2) 
AND (((C1-L1)/(H1-L1))<.2) AND (((C2-L2)/(H2-L2))<.2); }
	else if(P == 36) { PatternName = "doji"; Pv = (O == C); }
	else if(P == 37) { PatternName = "GapUp"; Pv = GapUp(); }
	else if(P == 38) { PatternName = "GapDown"; Pv = GapDown(); }
	else if(P == 39) { PatternName = "BigGapUp"; Pv = L>1.01*H1; }
	else if(P == 40) { PatternName = "BigGapDown"; Pv = 
H<0.99*L1; }
	else if(P == 41) { PatternName = "HugeGapUp"; Pv = 
L>1.02*H1; }
	else if(P == 42) { PatternName = "HugeGapDown"; Pv = 
H<0.98*L1; }
	else if(P == 43) { PatternName = "DoubleGapUp"; Pv = GapUp() 
AND Ref(GapUp(),-1); }
	else if(P == 44) { PatternName = "DoubleGapDown"; Pv = GapDown
() AND Ref(GapDown(),-1); }
	return Pv;
	}


P= Param("CandlePattern#",20,0,44,1);

CandlePatternTrue = CandlePattern(P);
NextBar = Ref(CandlePatternTrue,-1);
Profit = IIf(NextBar,(C-O)/O*100,0);
SecondBar = BarIndex()==2;
SimpleProfit = LastValue(Cum(Profit));
CompoundedProfit = (LastValue(AMA2(1,(SecondBar==1),(SecondBar==0)*(1 
+ Profit/100)))-1)*100;
Upday = IIf(NextBar, (C-O)>0,0);
downDay = IIf(NextBar, (C-O)<0,0);
PatternColor = IIf(CandlePatternTrue,2,1);
NumUpDays = LastValue(Cum(UpDay));
NumDownDays = LastValue(Cum(downDay));
NumPatterns = LastValue(Cum(CandlePatternTrue ));
LowestInDisplay = Lowest(ValueWhen(Status("barVisible"),L));
HighestInDisplay = Highest(ValueWhen(Status("Barvisible"),H));

Plot(C,"Close",colorBlack,64);
Plot(IIf(CandlePatternTrue,1,Null)*0.995*L,"",6,2|4);
PlotShapes(UpDay*shapeUpArrow,colorBrightGreen,0,L); 
PlotShapes(downDay*shapeDownArrow,colorRed,0,H);

Title = "\nCANDLE PATTERN ANALYSIS\n\n"+
"Open:              "+NumToStr(O,1.2)+"\n"+
"High:              "+NumToStr(H,1.2)+"\n"+
"Low:               "+NumToStr(L,1.2)+"\n"+
"Close:             "+NumToStr(C,1.2)+"\n\n"+

"Candle Pattern:    "+PatternName+"\n"+
"Candle Pattern#    "+NumToStr(P,1.0)+"\n"+
"#Patterns found:   "+NumToStr(NumPatterns ,1.0)+"\n"+
"#Updays:           "+NumToStr(NumUpDays,1.0,False)+
	" ["+NumToStr(Nz(NumUpDays/NumPatterns*100),1.0,False)+"%]\n"+
"#DownDays:         "+NumToStr(NumDownDays,1.0,False)+
	" ["+NumToStr(Nz(NumDownDays/numpatterns*100),1.0,False)+"%]
\n\n"+
"Profit at cursor:  "+NumToStr(Profit,1.4)+"%\n"+
"Ave.Profit/Pattern:"+NumToStr(Nz(SimpleProfit/NumPatterns),1.4)+"%
\n"+
"Tot.Simple profit: "+NumToStr(SimpleProfit,1.4)+"%\n"+
"Tot.Comp. profit:  "+NumToStr(CompoundedProfit,1.4)+"%\n";


--- In amibroker@xxxxxxxxxxxxxxx, "goldwing01_1999" 
<goldwing01_1999@xxxx> wrote:
> 
> ok, Candle Identification is working now.
> 
> for some reason when I copied it straight from AB web page it will 
> not work.
> 
> so I did a google search and found it, copied it and it worked
> 
> 
> --- In amibroker@xxxxxxxxxxxxxxx, "goldwing01_1999" 
> <goldwing01_1999@xxxx> wrote:
> > 
> > Herman,
> >  as I play with this more and more i am starting to think it is 
> > my .DLL
> > I have the #include working, but still getting syntax error.
> > 
> > can you please point me to the .DLL that you use, it is worth a 
try.
> > 
> > 
> > 
> > 
> > --- In amibroker@xxxxxxxxxxxxxxx, "Herman van den Bergen" 
> > <psytek@xxxx> wrote:
> > > If you use includes to include the functions into your code you 
> > have to copy
> > > the function file to include file into your default Include 
> folder. 
> > Look up
> > > "Include" in the help... if you know how it works it will be 
easy 
> > for you to
> > > set the path properly. Using include statments are very handy.
> > > 
> > > best regards,
> > > herman
> > >   -----Original Message-----
> > >   From: goldwing01_1999 [mailto:goldwing01_1999@x...]
> > >   Sent: Wednesday, March 02, 2005 8:49 PM
> > >   To: amibroker@xxxxxxxxxxxxxxx
> > >   Subject: [amibroker] Re: Candle Identification
> > > 
> > > 
> > > 
> > >   so, graham if its working for you, also, than that means my 
> > computer
> > >   is missing something like what have no clue, maybe a DLL or 
> wrong
> > >   version
> > >   VER: 4.69.8
> > >   plug-in is/candlestick fuction plug-in afl 0.0.64
> > > 
> > > 
> > > 
> > >   --- In amibroker@xxxxxxxxxxxxxxx, Graham <kavemanperth@xxxx> 
> > wrote:
> > >   > Unfortunately it works fine for me, but cannot see in 
#include
> > >   > statements as you had been discussing
> > >   >
> > >   > What version of AB are you using?
> > >   >
> > >   >
> > >   > On Thu, 03 Mar 2005 00:51:31 -0000, goldwing01_1999
> > >   > <goldwing01_1999@xxxx> wrote:
> > >   > >
> > >   > >
> > >   > > _SECTION_BEGIN("Candle Identification");
> > >   > > Plot(C,"",1,64);
> > >   > > O1 = Ref(O,-1);O2 = Ref(O,-2);
> > >   > > H1 = Ref(H,-1);H2 = Ref(H,-2);
> > >   > > L1 = Ref(L,-1);L2 = Ref(L,-2);
> > >   > > C1 = Ref(C,-1);C2 = Ref(C,-2);
> > >   > > function CandlePattern(P)
> > >   > >   {
> > >   > >   global PatternName;
> > >   > >   if(P == 0) { PatternName = "NearDoji"; Pv = (abs(O-C)<= 
> ((H-
> > L)
> > >   > > *0.1)); }
> > >   > >   else if(P == 1) { PatternName = "BlackCandle"; Pv = 
> (O>C); }
> > >   > >   else if(P == 2) { PatternName = "LongBlackCandle"; Pv = 
> > (O>C AND
> > >   > > (O-C)/(.001+H-L)>.6); }
> > >   > >   else if(P == 3) { PatternName = "SmallBlackCandle"; Pv 
= 
> > ((O>C)
> > >   AND
> > >   > > ((H-L)>(3*(O-C)))); }
> > >   > >   else if(P == 4) { PatternName = "WhiteCandle"; Pv = 
> (C>O); }
> > >   > >   else if(P == 5) { PatternName = "LongWhiteCandle"; Pv = 
> > ((C>O)
> > >   AND
> > >   > > ((C-O)/(.001+H-L)>.6)); }
> > >   > >   else if(P == 6) { PatternName = "SmallWhiteCandle"; Pv 
= 
> > ((C>O)
> > >   AND
> > >   > > ((H-L)>(3*(C-O)))); }
> > >   > >   else if(P == 7) { PatternName = "BlackMaubozu"; Pv = 
(O>C 
> > AND
> > >   H==O
> > >   > > AND
> > >   > > C==L); }
> > >   > >   else if(P == 8) { PatternName = "WhiteMaubozu"; Pv = 
(C>O 
> > AND
> > >   H==C
> > >   > > AND
> > >   > > O==L); }
> > >   > >   else if(P == 9) { PatternName = "BlackClosingMarubozu"; 
> Pv =
> > >   (O>C
> > >   > > AND
> > >   > > C==L); }
> > >   > >   else if(P == 10) { PatternName 
= "WhiteClosingMarubozu"; 
> Pv 
> > =
> > >   (C>O
> > >   > > AND
> > >   > > C==H); }
> > >   > >   else if(P == 11) { PatternName 
= "BlackOpeningMarubozu"; 
> Pv 
> > =
> > >   (O>C
> > >   > > AND
> > >   > > O==H); }
> > >   > >   else if(P == 12) { PatternName 
= "WhiteOpeningMarubozu"; 
> Pv 
> > =
> > >   (C>O
> > >   > > AND
> > >   > > O==L); }
> > >   > >   else if(P == 13) { PatternName = "HangingMan"; Pv = 
(((H-
> L)
> > >4*
> > >   (O-
> > >   > > C)) AND
> > >   > > ((C-L)/(.001+H-L)>= 0.75) AND ((O-L)/(.001+H-L)>= 
0.75)); }
> > >   > >   else if(P == 14) { PatternName = "Hammer"; Pv = (((H-L)
>3*
> > (O-C))
> > >   > > AND
> > >   > > ((C-L)/(.001+H-L)>0.6) AND ((O-L)/(.001+H-L)>0.6)); }
> > >   > >   else if(P == 15) { PatternName = "InvertedHammer"; Pv = 
> > (((H-L)
> > >   >3*
> > >   > > (O-C))
> > >   > > AND ((H-C)/(.001+H-L)>0.6) AND ((H-O)/(.001+H-L)>0.6)); }
> > >   > >   else if(P == 16) { PatternName = "ShootingStar"; Pv = 
> (((H-
> > L)>4*
> > >   (O-
> > >   > > C))
> > >   > > AND ((H-C)/(.001+H-L)>= 0.75) AND ((H-O)/(.001+H-L)>= 
> > 0.75)); }
> > >   > >   else if(P == 17) { PatternName = "BlackSpinningTop"; Pv 
= 
> > ((O>C)
> > >   > > AND
> > >   > > ((H-L)>(3*(O-C))) AND (((H-O)/(.001+H-L))<.4) AND
> > >   > > (((C-L)/(.001+H-L))<.4)); }
> > >   > >   else if(P == 18) { PatternName = "WhiteSpinningTop"; Pv 
= 
> > ((C>O)
> > >   > > AND
> > >   > > ((H-L)>(3*(C-O))) AND (((H-C)/(.001+H-L))<.4) AND
> > >   > > (((O-L)/(.001+H-L))<.4)); }
> > >   > >   else if(P == 19) { PatternName 
= "BearishAbandonedBaby"; 
> Pv 
> > =
> > >   ((C1
> > >   > > == O1)
> > >   > > AND (C2>O2) AND (O>C) AND (L1>H2) AND (L1>H)); }
> > >   > >   else if(P == 20) { PatternName 
> = "BearishEveningDojiStar"; 
> > Pv =
> > >   > > ((C2>O2)
> > >   > > AND ((C2-O2)/(.001+H2-L2)>.6) AND (C2<O1) AND (C1>O1) AND
> > >   > > ((H1-L1)>(3*(C1-O1))) AND (O>C) AND (O<O1)); }
> > >   > >   else if(P == 21) { PatternName = "DarkCloudCover"; Pv = 
> > (C1>O1
> > >   AND
> > >   > > ((C1+O1)/2)>C AND O>C AND O>C1 AND C>O1 AND (O-C)/(.001+
(H-
> L)
> > >   >0.6)); }
> > >   > >   else if(P == 22) { PatternName = "BearishEngulfing"; Pv 
=
> > >   ((C1>O1)
> > >   > > AND
> > >   > > (O>C) AND (O>= C1) AND (O1>= C) AND ((O-C)>(C1-O1))); }
> > >   > >   else if(P == 23) { PatternName 
> = "ThreeOutsideDownPattern"; 
> > Pv =
> > >   > > ((C2>O2)
> > >   > > AND (O1>C1) AND (O1>= C2) AND (O2>= C1) AND ((O1-C1)>(C2-
> O2)) 
> > AND
> > >   > > (O>C) AND
> > >   > > (C<C1)); }
> > >   > >   else if(P == 24) { PatternName 
= "BullishAbandonedBaby"; 
> Pv 
> > =
> > >   ((C1
> > >   > > == O1)
> > >   > > AND (O2>C2) AND (C>O) AND (L2>H1) AND (L>H1)); }
> > >   > >   else if(P == 25) { PatternName 
> = "BullishMorningDojiStar"; 
> > Pv =
> > >   > > ((O2>C2)
> > >   > > AND ((O2-C2)/(.001+H2-L2)>.6) AND (C2>O1) AND (O1>C1) AND
> > >   > > ((H1-L1)>(3*(C1-O1))) AND (C>O) AND (O>O1)); }
> > >   > >   else if(P == 26) { PatternName = "BullishEngulfing"; Pv 
=
> > >   ((O1>C1)
> > >   > > AND
> > >   > > (C>O) AND (C>= O1) AND (C1>= O) AND ((C-O)>(O1-C1))); }
> > >   > >   else if(P == 27) { PatternName 
= "ThreeOutsideUpPattern"; 
> > Pv =
> > >   > > ((O2>C2)
> > >   > > AND (C1>O1) AND (C1>= O2) AND (C2>= O1) AND ((C1-O1)>(O2-
> C2)) 
> > AND
> > >   > > (C>O) AND
> > >   > > (C>C1)); }
> > >   > >   else if(P == 28) { PatternName = "BullishHarami"; Pv = 
> > ((O1>C1)
> > >   > > AND (C>O)
> > >   > > AND (C<= O1) AND (C1<= O) AND ((C-O)<(O1-C1))); }
> > >   > >   else if(P == 29) { PatternName 
= "ThreeInsideUpPattern"; 
> Pv 
> > =
> > >   > > ((O2>C2)
> > >   > > AND (C1>O1) AND (C1<= O2) AND (C2<= O1) AND ((C1-O1)<(O2-
> C2)) 
> > AND
> > >   > > (C>O) AND
> > >   > > (C>C1) AND (O>O1)); }
> > >   > >   else if(P == 30) { PatternName = "PiercingLine"; Pv = 
> > ((C1<O1)
> > >   AND
> > >   > > (((O1+C1)/2)<C) AND (O<C) AND (O<C1) AND (C<O1) AND
> > >   > > ((C-O)/(.001+(H-L))>0.6)); }
> > >   > >   else if(P == 31) { PatternName = "BearishHarami"; Pv = 
> > ((C1>O1)
> > >   > > AND (O>C)
> > >   > > AND (O<= C1) AND (O1<= C) AND ((O-C)<(C1-O1))); }
> > >   > >   else if(P == 32) { PatternName 
> = "ThreeInsideDownPattern"; 
> > Pv =
> > >   > > ((C2>O2)
> > >   > > AND (O1>C1) AND (O1<= C2) AND (O2<= C1) AND ((O1-C1)<(C2-
> O2)) 
> > AND
> > >   > > (O>C) AND
> > >   > > (C<C1) AND (O<O1)); }
> > >   > >   else if(P == 33) { PatternName = "ThreeWhiteSoldiers"; 
Pv 
> =
> > >   > > (C>O*1.01)
> > >   > > AND (C1>O1*1.01) AND (C2>O2*1.01) AND (C>C1) AND (C1>C2) 
AND
> > >   (O<C1)
> > >   > > AND
> > >   > > (O>O1) AND (O1<C2) AND (O1>O2) AND (((H-C)/(H-L))<.2) AND
> > >   > > (((H1-C1)/(H1-L1))<.2) AND (((H2-C2)/(H2-L2))<.2); }
> > >   > >   else if(P == 34) { PatternName = "DarkCloudCover"; Pv =
> > >   > > (C1>O1*1.01) AND
> > >   > > (O>C) AND (O>H1) AND (C>O1) AND (((C1+O1)/2)>C) AND 
(C>O1) 
> AND
> > >   > > (MA(C,13)-Ref(MA(C,13),-4)>0); }
> > >   > >   else if(P == 35) { PatternName = "ThreeBlackCrows"; Pv =
> > >   > > (O>C*1.01) AND
> > >   > > (O1>C1*1.01) AND (O2>C2*1.01) AND (C<C1) AND (C1<C2) AND 
> > (O>C1)
> > >   AND
> > >   > > (O<O1)
> > >   > > AND (O1>C2) AND (O1<O2) AND (((C-L)/(H-L))<.2) AND (((C1-
> L1)/
> > (H1-
> > >   L1))
> > >   > > <.2)
> > >   > > AND (((C2-L2)/(H2-L2))<.2); }
> > >   > >   else if(P == 36) { PatternName = "doji"; Pv = (O == 
C); }
> > >   > >   else if(P == 37) { PatternName = "GapUp"; Pv = GapUp
(); }
> > >   > >   else if(P == 38) { PatternName = "GapDown"; Pv = GapDown
> > (); }
> > >   > >   else if(P == 39) { PatternName = "BigGapUp"; Pv = 
> > L>1.01*H1; }
> > >   > >   else if(P == 40) { PatternName = "BigGapDown"; Pv = 
> > H<0.99*L1; }
> > >   > >   else if(P == 41) { PatternName = "HugeGapUp"; Pv = 
> > L>1.02*H1; }
> > >   > >   else if(P == 42) { PatternName = "HugeGapDown"; Pv =
> > >   H<0.98*L1; }
> > >   > >   else if(P == 43) { PatternName = "DoubleGapUp"; Pv = 
GapUp
> > () AND
> > >   > > Ref(GapUp(),-1); }
> > >   > >   else if(P == 44) { PatternName = "DoubleGapDown"; Pv = 
> > GapDown()
> > >   > > AND
> > >   > > Ref(GapDown(),-1); }
> > >   > >   return Pv;
> > >   > >   }
> > >   > >
> > >   > > PatternNameList = "";
> > >   > > for(Cp=0; Cp<=44; Cp++) <<<<<<<errors
> > >   > >        {
> > >   > >        VarSet("Pattern"+NumToStr(Cp,1.0),CandlePattern
(Cp));
> > >   > >        PatternNameList = PatternNameList +PatternName+",";
> > >   > >        }
> > >   > >
> > >   > > BI = BarIndex();
> > >   > > SelectedBar = SelectedValue(BI) -BI[0];
> > >   > > //Selectedbar = Status("lastvisiblebar")-1;
> > >   > > PStr="";
> > >   > > for(Cp=0; Cp<=44; Cp++)
> > >   > >        {
> > >   > >        Temp = VarGet("Pattern"+NumToStr(Cp,1.0));
> > >   > >        if(temp[SelectedBar]) Pstr=Pstr+"#"+NumToStr
(Cp,1.0)
> > +" -
> > >   > > "+StrExtract(PatternNameList,Cp)+"\n";
> > >   > >        }
> > >   > >
> > >   > > Title = "\nCandle Demostration \n"+ Pstr;
> > >   > > _SECTION_END();
> > >   > >
> > >   > >
> > >   > > --- In amibroker@xxxxxxxxxxxxxxx, Graham 
<kavemanperth@xxxx>
> > >   wrote:
> > >   > > > can you post the lines around where the error is 
> occuring, 
> > i am
> > >   not
> > >   > > > familiar with the code you are discusssing
> > >   > > >
> > >   > > >
> > >   > > > On Thu, 03 Mar 2005 00:35:15 -0000, goldwing01_1999
> > >   > > > <goldwing01_1999@xxxx> wrote:
> > >   > > > >
> > >   > > > >
> > >   > > > > I would think my #include folder is working fine 
> because I
> > >   have
> > >   > > other
> > >   > > > > codes there with #include and they work fine
> > >   > > > >
> > >   > > > > --- In amibroker@xxxxxxxxxxxxxxx, Graham 
> > <kavemanperth@xxxx>
> > >   > > wrote:
> > >   > > > > > Have you tried changing the location of the files 
> that 
> > are
> > >   in
> > >   > > the
> > >   > > > > > #include, or change the include directory shown
> > >   > > > > >
> > >   > > > > > If it just has
> > >   > > > > > #include <xyz.afl>
> > >   > > > > > then the files should be in the default include 
> > directory as
> > >   > > defined
> > >   > > > > > in your AB preferences
> > >   > > > > >
> > >   > > > > >
> > >   > > > > > On Wed, 2 Mar 2005 16:28:32 -0800 (PST), l 
washington
> > >   > > > > > <goldwing01_1999@xxxx> wrote:
> > >   > > > > > > If you have MSN i will let you into my computer 
for 
> > you
> > >   can
> > >   > > see
> > >   > > > > your self
> > >   > > > > > > the problem.
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > > Herman van den Bergen <psytek@xxxx> wrote:
> > >   > > > > > > There have been reports from others who 
encountered
> > >   problems,
> > >   > > > > however it
> > >   > > > > > > runs fine on my computer...there is no "trick" to 
> it, 
> > it
> > >   > > should
> > >   > > > > work right
> > >   > > > > > > of the bat. make sure you data is OK and that you 
> > have no
> > >   > > wrapped
> > >   > > > > lines. You
> > >   > > > > > > do not provide any information as to what error 
> > mesage you
> > >   > > get...
> > >   > > > > > >
> > >   > > > > > > best regards,
> > >   > > > > > > herman.
> > >   > > > > > > -----Original Message-----
> > >   > > > > > > From: goldwing01_1999 
[mailto:goldwing01_1999@x...]
> > >   > > > > > > Sent: Wednesday, March 02, 2005 7:06 PM
> > >   > > > > > > To: amibroker@xxxxxxxxxxxxxxx
> > >   > > > > > > Subject: [amibroker] Candle Identification
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > > has anyone been able to make this code work? 
Candle
> > >   > > > > identification
> > >   > > > > > > Function
> > >   > > > > > >
> > >   > > > > > > if so please explain the trick to it.
> > >   > > > > > >
> > >   > > > > > > I am getting nothing but errors.
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > > Check AmiBroker web page at:
> > >   > > > > > > http://www.amibroker.com/
> > >   > > > > > >
> > >   > > > > > > Check group FAQ at:
> > >   > > > > > >
> > >   http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > > Check AmiBroker web page at:
> > >   > > > > > > http://www.amibroker.com/
> > >   > > > > > >
> > >   > > > > > > Check group FAQ at:
> > >   > > > > > >
> > >   http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > > __________________________________________________
> > >   > > > > > > Do You Yahoo!?
> > >   > > > > > > Tired of spam? Yahoo! Mail has the best spam 
> > protection
> > >   around
> > >   > > > > > > http://mail.yahoo.com
> > >   > > > > > >
> > >   > > > > > > Check AmiBroker web page at:
> > >   > > > > > > http://www.amibroker.com/
> > >   > > > > > >
> > >   > > > > > > Check group FAQ at:
> > >   > > > > > >
> > >   http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > > > Yahoo! Groups Sponsor
> > >   > > > > > > ADVERTISEMENT
> > >   > > > > > >
> > >   > > > > > > ________________________________
> > >   > > > > > > Yahoo! Groups Links
> > >   > > > > > > To visit your group on the web, go to:
> > >   > > > > > > http://groups.yahoo.com/group/amibroker/
> > >   > > > > > >
> > >   > > > > > > To unsubscribe from this group, send an email to:
> > >   > > > > > > amibroker-unsubscribe@xxxxxxxxxxxxxxx
> > >   > > > > > >
> > >   > > > > > > Your use of Yahoo! Groups is subject to the 
Yahoo! 
> > Terms
> > >   of
> > >   > > > > Service.
> > >   > > > > > > ________________________________
> > >   > > > > > > Yahoo! Groups Links
> > >   > > > > > > To visit your group on the web, go to:
> > >   > > > > > > http://groups.yahoo.com/group/amibroker/
> > >   > > > > > >
> > >   > > > > > > To unsubscribe from this group, send an email to:
> > >   > > > > > > amibroker-unsubscribe@xxxxxxxxxxxxxxx
> > >   > > > > > >
> > >   > > > > > > Your use of Yahoo! Groups is subject to the 
Yahoo! 
> > Terms
> > >   of
> > >   > > > > Service.
> > >   > > > > > >
> > >   > > > > > >
> > >   > > > > >
> > >   > > > > >
> > >   > > > > > --
> > >   > > > > > Cheers
> > >   > > > > > Graham
> > >   > > > > > http://e-wire.net.au/~eb_kavan/
> > >   > > > >
> > >   > > > >
> > >   > > > > Check AmiBroker web page at:
> > >   > > > > http://www.amibroker.com/
> > >   > > > >
> > >   > > > > Check group FAQ at:
> > >   > > 
http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> > >   > > > > Yahoo! Groups Links
> > >   > > > >
> > >   > > > >
> > >   > > > >
> > >   > > > >
> > >   > > > >
> > >   > > >
> > >   > > >
> > >   > > > --
> > >   > > > Cheers
> > >   > > > Graham
> > >   > > > http://e-wire.net.au/~eb_kavan/
> > >   > >
> > >   > >
> > >   > > Check AmiBroker web page at:
> > >   > > http://www.amibroker.com/
> > >   > >
> > >   > > Check group FAQ at:
> > >   http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> > >   > > Yahoo! Groups Links
> > >   > >
> > >   > >
> > >   > >
> > >   > >
> > >   > >
> > >   >
> > >   >
> > >   > --
> > >   > Cheers
> > >   > Graham
> > >   > http://e-wire.net.au/~eb_kavan/
> > > 
> > > 
> > > 
> > > 
> > > 
> > >   Check AmiBroker web page at:
> > >   http://www.amibroker.com/
> > > 
> > >   Check group FAQ at:
> > > http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> > > 
> > > 
> > >         Yahoo! Groups Sponsor
> > >               ADVERTISEMENT
> > > 
> > > 
> > > 
> > > 
> > > 
> > > ----------------------------------------------------------------
--
> --
> > --------
> > > --
> > >   Yahoo! Groups Links
> > > 
> > >     a.. To visit your group on the web, go to:
> > >     http://groups.yahoo.com/group/amibroker/
> > > 
> > >     b.. To unsubscribe from this group, send an email to:
> > >     amibroker-unsubscribe@xxxxxxxxxxxxxxx
> > > 
> > >     c.. Your use of Yahoo! Groups is subject to the Yahoo! 
Terms 
> of 
> > Service.





------------------------ Yahoo! Groups Sponsor --------------------~--> 
What would our lives be like without music, dance, and theater?
Donate or volunteer in the arts today at Network for Good!
http://us.click.yahoo.com/Tcy2bD/SOnJAA/cosFAA/GHeqlB/TM
--------------------------------------------------------------------~-> 

Check AmiBroker web page at:
http://www.amibroker.com/

Check group FAQ at: http://groups.yahoo.com/group/amibroker/files/groupfaq.html 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/amibroker/

<*> To unsubscribe from this group, send an email to:
    amibroker-unsubscribe@xxxxxxxxxxxxxxx

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