Mon compte
Déjà membre ? S'identifier
Non inscrit ? S'inscrire
 
+ Répondre à la discussion
Affichage des résultats 1 à 7 sur 7
  1. #1
    Membre lvl 5 cartoche est sur la route de la réputation...
    Date d'inscription
    July 2009
    Messages
    9
    Pouvoir de réputation
    5

    EA Fibpivo_v2 EA Fibpivo_v2

    Bonjours à tous !
    Voila, je suis néophyte dans la programmation d'EA et je requiers votre aide si vous le voulez bien ^^
    Je souhaiterais créer un EA à partir de l'indicateur Fibopiv_v2 mais je n'y arrive pas. Je veux juste prendre position lors du dépassement d'un support ou d'une résistance pour le moment.
    L'erreur OrderSend 148 est présente dans le journal de teste, je ne sais pas comment faire pour ramener la variable NumberOfTrader à 0 lorsque le trade est clôturé. Je ne sais même pas si j'ai placé mes ordres d'achat ou de vente correctement dans le programme.

    Pouvez-vous y jeter un coup d'œil ? ,)

    Ps: je vous ais joint l'indicateur.

    Mon code:

    //+------------------------------------------------------------------+
    //| New.mq4 |
    //| Cartoche |
    //| metatrader 5 Trading Platform / MetaQuotes Software Corp. |
    //+------------------------------------------------------------------+
    #property copyright "Cartoche"
    #property link "http://www.metaquotes.net"

    //+------------------------------------------------------------------+
    //| expert initialization function |
    //+------------------------------------------------------------------+
    int init()
    {
    //----
    double NumberOfTrade = 0;
    Print("Initialisation EA");
    //----
    return(0);
    }
    //+------------------------------------------------------------------+
    //| expert deinitialization function |
    //+------------------------------------------------------------------+
    int deinit()
    {
    //----
    Print("Arret EA");
    //----
    return(0);
    }
    //+------------------------------------------------------------------+
    //| expert start function |
    //+------------------------------------------------------------------+
    int start()
    {
    //----

    double rates[1][6],yesterday_close,yesterday_high,yesterday_low,Numb erOfTrade;
    ArrayCopyRates(rates, Symbol(), PERIOD_D1);


    if(DayOfWeek() == 1)
    {
    if(TimeDayOfWeek(iTime(Symbol(),PERIOD_D1,1)) == 5)
    {
    yesterday_close = rates[1][4];
    yesterday_high = rates[1][3];
    yesterday_low = rates[1][2];
    }
    else
    {
    for(int d = 5;d>=0;d--)
    {
    if(TimeDayOfWeek(iTime(Symbol(),PERIOD_D1,d)) == 5)
    {
    yesterday_close = rates[d][4];
    yesterday_high = rates[d][3];
    yesterday_low = rates[d][2];
    }

    }
    }
    }
    else
    {
    yesterday_close = rates[1][4];
    yesterday_high = rates[1][3];
    yesterday_low = rates[1][2];
    }


    //---- Calculate Pivots


    double R = yesterday_high - yesterday_low;//range
    double p = (yesterday_high + yesterday_low + yesterday_close)/3;// Standard Pivot
    double r3 = p + (R * 1.000);
    double r2 = p + (R * 0.618);
    double r1 = p + (R * 0.382);
    double s1 = p - (R * 0.382);
    double s2 = p - (R * 0.618);
    double s3 = p - (R * 1.000);

    //----
    //--- Ordre Achat
    if(NumberOfTrade==0)
    {
    if(Ask>r1)
    {
    OrderSend(Symbol(),OP_BUY,0.1,Ask,5,p,r2,"Achat",1 0,0,Green);
    NumberOfTrade=1;
    }

    //---Ordre Vente
    if(Bid<s1)
    {
    OrderSend(Symbol(),OP_SELL,0.1,Bid,5,p,s2,"Vente", 10,0,Green);
    NumberOfTrade=1;
    }
    }

    //----
    return(0);
    }
    //+------------------------------------------------------------------+
    Fichiers attachés

  2. #2
    Membre lvl 25 pontch est sur la route de la réputation...
    Date d'inscription
    May 2010
    Messages
    46
    Pouvoir de réputation
    4

    Au lieu d'utiliser une variable tu peux utiliser OrdersTotal()==0 ou OrdersTotal()=1.

    Ca te calculera automatiquement le nombre de trade en cours.

  3. #3
    Membre lvl 5 cartoche est sur la route de la réputation...
    Date d'inscription
    July 2009
    Messages
    9
    Pouvoir de réputation
    5

    Merci c'est une super info
    Je ne connaissais pas cette fonction.

    Sinon j'ai pensé que je pouvais lier les variables s1,s2,s3,... à l'EA avec iCustom()
    je vais essayer de faire ça si j'y arrive.

  4. #4
    Membre lvl 25 pontch est sur la route de la réputation...
    Date d'inscription
    May 2010
    Messages
    46
    Pouvoir de réputation
    4

    yup tu es sur le bon chemin. J'utilise jamais de tableaux par contre pour recuperer les valeurs des charts j'utilise iLow, iHigh, etc.

    Que est l'interet d'utiliser le tableau, ca donne de meilleure performances?

  5. #5
    Membre lvl 5 cartoche est sur la route de la réputation...
    Date d'inscription
    July 2009
    Messages
    9
    Pouvoir de réputation
    5

    J'ai peur de ne pas comprendre... Pourquoi parles tu de tableau? Je vais regarder iLow et iHigh, merci de m'aider Pour exporter les variables dans un EA a-t-on besoin de modifier l'undicateur ? ( de declarer quelque chose?)

  6. #6
    Membre lvl 25 pontch est sur la route de la réputation...
    Date d'inscription
    May 2010
    Messages
    46
    Pouvoir de réputation
    4

    je parle du tableau a 2 dimension rates que tu utilises: rates[1][4];

  7. #7
    Membre lvl 5 cartoche est sur la route de la réputation...
    Date d'inscription
    July 2009
    Messages
    9
    Pouvoir de réputation
    5

    Bon, à priori je me suis débrouillé pour que ça fonctionne simplement. Je vous remercie pour vos interventions et je vous tiens au courant

Ajouter aux Favoris | Plan du site | Archives | Forex | Contact