Overblog Suivre ce blog
Editer l'article Administration Créer mon blog
22 décembre 2011 4 22 /12 /décembre /2011 19:21

Bonjour à tous,

 

Voici ,la traduction en language PRT du code de Elder's fait par José Silva ,c'est une

 

 interpretation.

 

Le lien : http://trader-online.tk/MSZ/e-w-Elders_AutoEnvelope.html

 

 

Code Prorealtime.

 

 

//////////////////////SOHOCOOL
///////////////////////ELDER 'S AUTO ENVELOPES PROREALTIME
///////////////////////28  AOUT 2011
{Elder's AutoEnvelope by Jose Silva


{Dr A. Elder's AutoEnvelope interpretation v1.0
Differs from the original in that it avoids
the use of the hindsight-based LastValue()
MetaStock function.
www.elder.com/MetaStock/AutoEnvelope.htm

http://www.metastocktools.com }

{ User inputs }
{pds:=Input("EMA periods",1,252,21);
pdsBak:=Input("lookback periods",1,252,42);
x:=Input("use: Open=1, High=2, Low=3, Close=4, WClose=5",1,5,4);
plot:=Input("[1]AutoEnvelope, [2]Long signals, [3]All signals",1,3,1);
delay:=Input("Entry/Exit signals delay",0,5,0);

{ Price field }
{x:=If(x=1,O,If(x=2,H,If(x=3,L,If(x=5,WC(),C))));
    
    { Envelope bands
    Avg:=Mov(x,pds,E);
    hiAvg:=HHV(H,pdsBak);
    loAvg:=LLV(L,pdsBak);
    shift:=
    Mov(If(hiAvg>Avg,hiAvg-Avg,Avg-loAvg),pds,E);
     UpperBand:=Avg+shift;
     LowerBand:=Avg-shift;}
     
     
     ///variable pds = périodes de la moyenne exponentielle (défaut =22)
     ///variable pdsback = période du canal donchian (défaut = 44) (le double).
     
     
     //price field
     
     x = customclose
     { Envelope bands }
     Avg= ExponentialAverage[pds](x)
     hiAvg=Highest[pdsback](high)
     loAvg=Lowest[pdsback](low)
     ////////////////////////////////////////////////////////////////////////////////////
     if hiavg >=avg then
      
      shift= exponentialaverage[pds](hiavg -avg)
     else
      
      shift=exponentialaverage[pds](avg-loavg)
      
     endif
     
     
     ////////////////////////////////////////////////////////////////////////////
     UpperBand=Avg+shift
     LowerBand=Avg-shift
     
     
     /////////////////////////////////////////////////////////////
     
     
     return avg as "exponentielle",upperband as "bande haute",lowerband as" bande basse"

 

////////////////////////////////////////////fin///end ///code

 

CAC-40-elderenveloppe-copie-1.png
     
     
     

 

Partager cet article

Repost 0
Published by SOHOCOOL - dans ELDER
commenter cet article

commentaires