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

Re: [amibroker] PREV of MS in AmiBroker



PureBytes Links

Trading Reference Links



I'm try It
but maybe I'm made and error
Because the give to me nothing
 

my last 3 line in MetaStock

In AB

Bon:=

If(C>HautP AND C>BasP,5, If(C<BasP,0,PREV)) ;

Bon

Bon =

result = 0;

for( i = 1; i < BarCount; i++ )

{

prev = result[ i - 1];

result[ i ] = IIf( C[ i ] > HautP[ i ]

AND C[ i ] > BasP[ i ], 5,

IIf( C[ i ] < BasP[ i ], 0, prev ) );

} ;

Plot(Bon,"",colorBlue,styleThick);

 
 
 
Thank
 
Merci
 
YLTech ( Yves L. )
 
Le présent message et les documents qui y sont joints sont réservés exclusivement au destinataire indiqué. Il est strictement interdit d'en utiliser ou d'en divulguer le contenu. Si vous recevez le présent message par erreur, veuillez le détruire S.V.P. et nous en aviser immédiatement afin que nous puissions corriger nos dossiers. Merci.
 
This message and the attached documents may contain privileged or confidential information that are intended to the addressee only. Any unauthorized disclosure is strictly prohibited. If you happen to receive this message by error, please delete it and notify us immediately so that we may correct our internal records. Thank you.
 
yltech@xxxxxxxxxxxx
----- Original Message -----
Sent: Saturday, October 24, 2009 3:53 AM
Subject: Re: [amibroker] PREV of MS in AmiBroker

 

Hello,
 
This MS code:
 
result = (C>HautP AND C>BasP,5, If(C<BasP,0,PREV))
 
 
can be translated to:
 
result = 0;
 
for( i = 1; i < BarCount; i++ )
{
  prev = result[ i - 1];
  result[ i ] = IIF( C[ i ] > HautP[ i ] AND C[ i ] > BasP[ i ], 5, IIF( C[ i ] < BasP[ i ], 0, prev ) );
}
 
Although loop version is longer, it will execute 100 faster than in Metastock, because
MS PREV is extremely inefficient.

Best regards,
Tomasz Janeczko
amibroker.com
----- Original Message -----
From: Yves
Sent: Saturday, October 24, 2009 6:45 AM
Subject: [amibroker] PREV of MS in AmiBroker

I?m try to translate this formula(Metastock) in Amibroker(AB)

(C>HautP AND C>BasP,5, If(C<BasP,0,PREV))

A guy from AB said to use the loop.

I?m use a formula on site Internet of AB(Percentage Trail Stop)

Why when I?m use my Formula, I?m obtain :

Error 6. Condition in IF, WHILE, FOR statements has to be Numeric or Boolean type. You can not use array here, please use [] (array subscript operator) to access array elements

And when I?m use the formula Percentage Trail Stop,

I don?t obtain ERROR 6 ?????????????

WHY ???????

Thank

YLTech

Percentage Trail Stop

My Formula

StopLevel =Param("Percentage Trail Stop",0.05, 0.01, 0.6, 0.01 );

LK=50;

FF=10;

A1= IIf( L> Ref(HHV( Close,LK),-5), 1, 0);

A2= Sum( A1, LK ) ;

A3= IIf(C>0, FF, 0);

Buy = Cross(A2,A3);

Sell = 0;

trailARRAY = Null;

trailstop = 0;

for( i = 1; i < BarCount; i++ )

{

if( trailstop == 0 AND Buy[ i ] )

{

trailstop = High[ i ] * (1-stoplevel);

}

else Buy[ i ] = 0; // remove excess buy signals

if( trailstop > 0 )

{

trailstop = Max( High[ i ] * (1-stoplevel), trailstop );

trailARRAY[ i ] = trailstop;

}

if( trailstop > 0 AND Low[ i ] < trailstop )

{

Sell[ i ] = 1;

SellPrice[ i ] = trailstop;

trailstop=0;

}

}

PlotShapes(Buy*shapeUpArrow,colorBlue,0,Low);

PlotShapes(Sell*shapeDownArrow,colorRed,0,High);

Plot( Close,"Price",colorBlack,styleBar);

Plot( trailARRAY,"trailing stop level", colorRed );

_SECTION_BEGIN("Cr.HautP.");

TimeFrameSet( inDaily ); // switch now to Daily

HautP= Ref(H,-1) ;

BasP= Ref(L,-1) ;

TimeFrameRestore(); // restore time frame to original

StopLevel = BasP ;

Buy = Cross(C,HautP) ;

Sell = 0 ;

trailARRAY = Null;

trailstop = 0;

for( i = 1; i < BarCount; i++ )

{

if( trailstop == 0 AND Buy[ i ] )

{

trailstop = HautP ;

}

else Buy[ i ] = 0; // remove excess buy signals

if( trailstop > 0 )

{

trailstop = Max( HautP, trailstop );

trailARRAY[ i ] = trailstop;

}

if( trailstop > 0 AND Low[ i ] < trailstop )

{

Sell[ i ] = 1;

SellPrice[ i ] = trailstop;

trailstop=0;

}

}

PlotShapes(Buy*shapeUpArrow,colorBlue,0,Low);

PlotShapes(Sell*shapeDownArrow,colorRed,0,High);

Plot( Close,"Price",colorBlack,styleBar);

Plot( trailARRAY,"trailing stop level", colorRed );

_SECTION_END();

 
 
 
 
Merci
 
YLTech ( Yves L. )
 
Le présent message et les documents qui y sont joints sont réservés exclusivement au destinataire indiqué. Il est strictement interdit d'en utiliser ou d'en divulguer le contenu. Si vous recevez le présent message par erreur, veuillez le détruire S.V.P. et nous en aviser immédiatement afin que nous puissions corriger nos dossiers. Merci.
 
This message and the attached documents may contain privileged or confidential information that are intended to the addressee only. Any unauthorized disclosure is strictly prohibited. If you happen to receive this message by error, please delete it and notify us immediately so that we may correct our internal records. Thank you.
 
yltech@xxxxxxxxxxca



__._,_.___


**** IMPORTANT PLEASE READ ****
This group is for the discussion between users only.
This is *NOT* technical support channel.

TO GET TECHNICAL SUPPORT send an e-mail directly to
SUPPORT {at} amibroker.com

TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
http://www.amibroker.com/feedback/
(submissions sent via other channels won't be considered)

For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/





Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___