Affichage des résultats 1 à 8 sur 8
  1. #1
    Membre Performance
    Date d'inscription
    June 2007
    Messages
    171
    Pouvoir de réputation
    10

    Metatrader: programmer le sar atdmf Metatrader: programmer le sar atdmf

    Hello takitano

    le fait que tu sois informatitien de formation et utilisateur de la plateforme metatrader, arriverais tu a programmer le sar atdmf ?


    voici la prog sous prorealtime



    if barindex < 1 then

    facteur = 0.02
    tmpSAR = low
    extreme = high
    tendance = 1

    else
    if tendance[ 1 ] = 1 then
    extreme = max( extreme[ 1 ], high )

    if tmpSAR[1] > low then
    tendance = -1
    facteur = 0.02
    tmpSAR = extreme
    extreme = low
    else
    if extreme > extreme[1] and facteur <0.2 then
    facteur = min( 0.2, facteur + 0.02 )
    endif
    tmpSAR = tmpSAR[1]+facteur*(extreme-tmpSAR[1])
    tmp = min(low,low[1])
    tmpSAR = min(tmpSAR,tmp)
    endif
    else
    extreme = min( extreme[ 1 ], low )

    if tmpSAR[1] <high then
    tendance = 1
    facteur = 0.02
    tmpSAR = extreme
    extreme = high
    else
    if extreme < extreme[1] and facteur <0.2 then
    facteur = min( 0.2, facteur + 0.02 )
    endif
    tmpSAR = tmpSAR[1]+facteur*(extreme-tmpSAR[1])
    tmp = max(high,high[1])
    tmpSAR = max(tmpSAR,tmp)
    endif
    endif

    endif

    return tmpSAR[1]
    Dernière modification par gvgh ; 19/01/2008 à 17h57.

  2. #2
    Membre lvl 50
    Date d'inscription
    January 2008
    Messages
    74
    Pouvoir de réputation
    9

    //+------------------------------------------------------------------+
    //| The Simple Moving Average.mq4 |
    //| Takitano |
    //| Forex Trading Software: Forex Trading Platform MetaTrader 4 |
    //+------------------------------------------------------------------+
    #property copyright "Takitano"
    #property link "http://www.metaquotes.net"

    #property indicator_chart_window
    #property indicator_buffers 3
    #property indicator_color1 Red
    #property indicator_color2 Blue
    #property indicator_color3 Yellow
    //---- input parameters

    double Buffer_extreme[];
    double Buffer_SAR[];
    int Buffer_tendance[];

    extern double facteur = 0.02;

    //+------------------------------------------------------------------+
    //| expert initialization function |
    //+------------------------------------------------------------------+
    int init()
    {
    SetIndexStyle(1,DRAW_LINE);
    SetIndexBuffer(1,Buffer_SAR);
    SetIndexDrawBegin(1,0);

    SetIndexStyle(2,DRAW_LINE);
    SetIndexBuffer(2,Buffer_extreme);
    SetIndexDrawBegin(2,0);




    //----
    return(0);
    }
    //+------------------------------------------------------------------+
    //| expert deinitialization function |
    //+------------------------------------------------------------------+
    int deinit()
    {
    //----

    //----
    return(0);
    }
    //+------------------------------------------------------------------+
    //| expert start function |
    //+------------------------------------------------------------------+
    int start()
    {

    int limit;
    int counted_bars=IndicatorCounted();
    //---- last counted bar will be recounted
    if(counted_bars>0) counted_bars--;
    limit=Bars-counted_bars;


    for(int i=0; i<limit; i++)
    {
    if(i==0)
    {
    facteur = 0.02;
    Buffer_SAR[0] = Low[0];
    Buffer_extreme[0] = High[0];
    Buffer_tendance[0] = 1;
    }

    {
    if(Buffer_tendance[i+1]==1)
    {
    Buffer_extreme[i] = MathMax(Buffer_extreme[i+1],High[i]);
    if(Buffer_SAR[i+1]>Low[i])
    {
    Buffer_tendance[i]=-1;
    facteur = 0.02;
    Buffer_SAR[i] = Buffer_extreme[i];
    Buffer_extreme[i] = Low[i];
    }
    else
    {
    if(Buffer_extreme[i] > Buffer_extreme[i+1] && facteur<0.2)
    {
    facteur = MathMin( 0.2, facteur + 0.02 );
    }//endif
    Buffer_SAR[i] = Buffer_SAR[i+1]+facteur*(Buffer_extreme[i]-Buffer_SAR[i+1]);
    Buffer_SAR[i] = MathMin(Buffer_SAR[i],MathMin(Low[i],Low[i+1]));
    }//endif
    }
    else
    {
    Buffer_extreme[i] = MathMin( Buffer_extreme[i+ 1 ], Low[i] );
    if (Buffer_SAR[i+1] <High[i])
    {
    Buffer_tendance[i] = 1;
    facteur = 0.02;
    Buffer_SAR[i] = Buffer_extreme[i];
    Buffer_extreme[i] = High[i] ;
    }
    else
    {
    if (Buffer_extreme[i] < Buffer_extreme[i+1] && facteur <0.2)
    {
    facteur = MathMin( 0.2, facteur + 0.02 );
    }//endif
    Buffer_SAR[i] = Buffer_SAR[i+1]+facteur*(Buffer_extreme[i]-Buffer_SAR[i+1]);
    Buffer_SAR[i] = MathMax(Buffer_SAR[i],MathMax(High[i],High[i+1]));
    }
    }
    }
    }
    //----
    return(0);
    }
    //+------------------------------------------------------------------+
    Dernière modification par takitano ; 22/01/2008 à 21h38.

  3. #3
    Membre Performance
    Date d'inscription
    June 2007
    Messages
    171
    Pouvoir de réputation
    10

    je vais essayer de le rentrer dans la plateforme, en tous les cas merci de d'etre deja penché sur la prog

  4. #4
    Membre lvl 50
    Date d'inscription
    January 2008
    Messages
    74
    Pouvoir de réputation
    9

    Bonsoir,

    J'ai un peu la flemme de debuger et de me pencher sur cet indicateur ... Cependant, il y a deux courbe, mais je ne sais pas si ca à cette tête là ...

    Takitano ...

  5. #5
    Membre Performance
    Date d'inscription
    June 2007
    Messages
    171
    Pouvoir de réputation
    10

    j'essayerai d'expliquer un peu ce weekend le fonctionnement de ce sar ca t' aidera tres certaiement a une meilleure comprehension de son fonctionnement donc de sa programmation...je mettrai aussi quelques exemples graphiques

    A+ et merci encore de t'y etre penché

  6. #6
    Membre Performance
    Date d'inscription
    June 2007
    Messages
    171
    Pouvoir de réputation
    10

    pas eu le temps de revenir ces temps ci pour decrire le fonctionnement du sar, j'essaye ca le weekend prochain

  7. #7
    Membre Performance
    Date d'inscription
    June 2007
    Messages
    171
    Pouvoir de réputation
    10

    bonjour takitano je viens de regarder un peu le fonctionnement du sar sous PRT pour expliquer comment il fonctionne pour t'aider dans la prog.

    alors pour l'initialisation le 1er point sar est = au low (de la 1ere barre de l'historique), barindex<1 c'est en fait le 1er barchart puis le sar est caculé avec les formules apres :

    if barindex < 1 then

    facteur = 0.02
    tmpSAR = low
    extreme = high
    tendance = 1

    else


    donc celles ci:

    else
    if tendance[ 1 ] = 1 then
    extreme = max( extreme[ 1 ], high )

    if tmpSAR[1] > low then
    tendance = -1
    facteur = 0.02
    tmpSAR = extreme
    extreme = low
    else
    if extreme > extreme[1] and facteur <0.2 then
    facteur = min( 0.2, facteur + 0.02 )
    endif
    tmpSAR = tmpSAR[1]+facteur*(extreme-tmpSAR[1])
    tmp = min(low,low[1])
    tmpSAR = min(tmpSAR,tmp)
    endif
    else
    extreme = min( extreme[ 1 ], low )

    if tmpSAR[1] <high then
    tendance = 1
    facteur = 0.02
    tmpSAR = extreme
    extreme = high
    else
    if extreme < extreme[1] and facteur <0.2 then
    facteur = min( 0.2, facteur + 0.02 )
    endif
    tmpSAR = tmpSAR[1]+facteur*(extreme-tmpSAR[1])
    tmp = max(high,high[1])
    tmpSAR = max(tmpSAR,tmp)
    endif
    endif

    endif


    et enfin on retourne la valeur precedente du sar:

    return tmpSAR[1]



    voila voila
    j'espere que ca t'aidera


    bon bien tiens moi au courant

  8. #8
    Membre Performance
    Date d'inscription
    June 2007
    Messages
    171
    Pouvoir de réputation
    10

    ya til un programateur dans la salle ya til un programateur dans la salle

    je remonte vite fait la file, nombreux programmateurs MT4 sur le site mais personne n'a repondu a ce post, une partie de la reponse a ete fournie par takitano sur cette presente file et je l'en remercie par contre on est pas arrivé au bout du pb cad finalisation de cet indicateur, une derniere explication de ma part sur cette file...

    indicateur "jedih_03_02"

    ...pour en expliquer le fonctionnement et donc le raisonnement pour la programmation sur MT4

Discussions similaires

  1. Metatrader 4
    Par greg1700 dans le forum Utilisation des Plateformes de Trading
    Réponses: 26
    Dernier message: 13/02/2011, 08h45
  2. Formation Institut de la Bourse ATDMF 24/11/2007
    Par Edellion dans le forum Annonces Trading, Finance, Forex...
    Réponses: 3
    Dernier message: 08/01/2011, 11h09
  3. METATRADER : Temps réel.
    Par takitano dans le forum Utilisation des Plateformes de Trading
    Réponses: 3
    Dernier message: 22/03/2009, 09h36
  4. [MetaTrader] Fonctionnement des lots
    Par JoKoS dans le forum Utilisation des Plateformes de Trading
    Réponses: 13
    Dernier message: 03/11/2008, 15h44
  5. Points Pivots Metatrader
    Par dinemma dans le forum Utilisation des Plateformes de Trading
    Réponses: 8
    Dernier message: 22/05/2008, 19h48

Plan du site |