Mon compte
Déjà membre ? S'identifier
Non inscrit ? S'inscrire
 
+ Répondre à la discussion
Affichage des résultats 1 à 6 sur 6
  1. #1
    Membre Star doogy est sur la route de la réputation... Avatar de doogy
    Date d'inscription
    August 2010
    Localisation
    Paris
    Messages
    217
    Pouvoir de réputation
    4

    Cherche script pour limiter 1 trade à la fois. Cherche script pour limiter 1 trade à la fois.

    Bonjour,

    J'ai un EA qui ouvre plusieurs positions simultanément et je cherche un script pour limiter le nombre d'opération à 1.

    En clair, quand 1 trade est en cours, plus aucun trade ne peut s'ouvrir tant que le premier n'est pas bouclé.

    Merci par avance aux experts.

  2. #2
    Membre Performance jeanjo est sur la route de la réputation...
    Date d'inscription
    November 2010
    Messages
    181
    Pouvoir de réputation
    3

    ça ça marche uniquement sur la sto, parce qu'elle croise, mais je n'arrive pas a le faire marcher dans le cas d'un indicateur qui continue a donner le signal d'achat


    // Signal achat STO
    if(Sto_Signal_1> Sto_Main_1 && Sto_Signal_0 < Sto_Main_0 && Sto_Signal_0<70)
    {
    signal_sto_up = true;
    }



    if(trend_long == true && signal_sto_up == true) Open_buy = true;


    // |+++++++++++++++++++++++++++++++++++++++++++++++|
    // +| ARRANGEMENT Signal Stochastique pour n'avoir qu'un seul signal|
    // |++++++++++++++++++++++++++++++++++++++++++++++|

    if(Sto_Signal_1< Sto_Main_1 && Sto_Signal_0 > Sto_Main_0) count =0;

    // on met un compteur, si le compteur est supérieur à 0 , on sort de la boucle, le compteur est remis à zéro par la sto

    while(Open_buy ==true)
    {
    if (count>0) break;
    achat = OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,0,NULL,2228 88,0,Red);
    achete = OrderSelect(achat,SELECT_BY_TICKET,MODE_TRADES);
    if(achete == true)
    {
    OrderPrint();
    count++;
    }
    }
    //----
    Dernière modification par jeanjo ; 27/01/2011 à 20h47.

  3. #3
    Membre Star kk2val est sur la route de la réputation...
    Date d'inscription
    January 2008
    Messages
    249
    Pouvoir de réputation
    7

    Citation Envoyé par doogy Voir le message
    Bonjour,

    J'ai un EA qui ouvre plusieurs positions simultanément et je cherche un script pour limiter le nombre d'opération à 1.

    En clair, quand 1 trade est en cours, plus aucun trade ne peut s'ouvrir tant que le premier n'est pas bouclé.

    Merci par avance aux experts.
    bsoir..

    en rajoutant une tit condition à tes conditions de prise de position tu peux
    limiter le nbre de positions..

    ex

    if(condition tartampion && condition bidule && OrdersTotal()<1)
    {
    prise de position..
    }
    l'ea ne prendra qu'une position..

    ça c'est simple...mais.. OrdersTotal() prend en compte toutes les positions en cours quelle que soit la paire tradées et bien entendu les positions manuelles..
    il faut donc ..soit "taguer les positions" par un "magicnumber" ou créer un compteur de positions.

    comme ceci .par exemple:


    //===================
    int start()
    {
    int y;
    int Magic = 123456;
    int cb=0; // compteur buy
    int cs=0; // compteur sell
    int to= 0;// compteur total pos
    for (y = 0; y < OrdersTotal(); y++)
    {
    OrderSelect (y, SELECT_BY_POS, MODE_TRADES);
    if ((OrderMagicNumber()==Magic) && (OrderSymbol()==Symbol()) && (OrderType()==OP_BUY)) {
    cb++;

    }
    if ((OrderMagicNumber()==Magic) && (OrderSymbol()==Symbol()) && (OrderType()==OP_SELL)) {
    cs++;

    }


    to=cb+cs;
    }
    return(0);
    }
    //=================
    la commande deviendra


    if(condition tartampion && condition bidule && to<1)
    {
    prise de position..Long
    }


    mmeme chose avec les conditions Short

    voilà..

    cldt

    kk2val

  4. #4
    Membre Star doogy est sur la route de la réputation... Avatar de doogy
    Date d'inscription
    August 2010
    Localisation
    Paris
    Messages
    217
    Pouvoir de réputation
    4

    ok merci c'est parfait.

  5. #5
    Membre Performance jeanjo est sur la route de la réputation...
    Date d'inscription
    November 2010
    Messages
    181
    Pouvoir de réputation
    3

    ggg ggg

    merci kk2val

    Mais si par exemple les conditions d'achat et de vente sont valides dans une même bougie, l'EA prend des ordres d'achat et revend dans la même bougie a chaque tick. Sais-tu de quelle façon on peut l'éviter ?

    Il y aura 0 ordre, l'EA va prendre une position, puis il revend dans la même bougie, il retrouve 0 ordre et rachète et ainsi de suite.
    Dernière modification par jeanjo ; 29/01/2011 à 14h19.

  6. #6
    Membre Star kk2val est sur la route de la réputation...
    Date d'inscription
    January 2008
    Messages
    249
    Pouvoir de réputation
    7

    Citation Envoyé par jeanjo Voir le message
    merci kk2val

    Mais si par exemple les conditions d'achat et de vente sont valides dans une même bougie, l'EA prend des ordres d'achat et revend dans la même bougie a chaque tick. Sais-tu de quelle façon on peut l'éviter ?

    Il y aura 0 ordre, l'EA va prendre une position, puis il revend dans la même bougie, il retrouve 0 ordre et rachète et ainsi de suite.
    Bonjour...

    je suppose que tu veux parler de condition d'entrée et de sortie sur la mme bougie..ce qui n'est pas banal ..

    il faut ..soit installer un filtre dans les conditions d'ouverture..de manière justement à ne pas prendre position

    soit interdire la prise de position si les conditions "close" sont présentes

    soit n'autoriser qu'un trade par bougie ..

    autrement ..à l'aide du "bout de code" décrit plus haut.. on pourrait faire ceci...:

    int start()
    {
    int y;
    int Magic = 123456;
    int cb=0; // compteur buy
    int cs=0; // compteur sell
    int to= 0;// compteur total pos
    for (y = 0; y < OrdersTotal(); y++)
    {
    OrderSelect (y, SELECT_BY_POS, MODE_TRADES);
    if ((OrderMagicNumber()==Magic) && (OrderSymbol()==Symbol()) && (OrderType()==OP_BUY)) {
    cb++;

    }
    if ((OrderMagicNumber()==Magic) && (OrderSymbol()==Symbol()) && (OrderType()==OP_SELL)) {
    cs++;

    }


    to=cb+cs;
    }
    return(0);
    }
    //=================
    la commande deviendra


    if (condition "long" && !condition "short" && !condition "close" && to<1)
    {
    prise de position Long
    }

    else

    {

    if (condition "short" && !condition "long" && !condition "close" && to<1)

    {

    prise de position Short

    }

    ....

    Mias si tu as un exemple de tes conditions d'ouverture et de fermeture ..

    ce serait plus parlant..

    voilà normalement..ça devrait résoudre ton problème..

    cldt

    kk2val

Discussions similaires

  1. cherche EA ou Script tout simple
    Par gregart dans le forum Programmation
    Réponses: 12
    Dernier message: 02/11/2010, 17h49
  2. un script pour des ordre en cascade
    Par taowill dans le forum Programmation
    Réponses: 0
    Dernier message: 27/10/2010, 00h53
  3. Script pour ordres mutiples
    Par crystal dans le forum Programmation
    Réponses: 3
    Dernier message: 15/02/2010, 14h26
  4. Cherche script pour plaçer Sl + Tp automatiquement
    Par orelien1 dans le forum Trading Divers
    Réponses: 10
    Dernier message: 05/01/2010, 23h12
  5. Réponses: 0
    Dernier message: 20/07/2009, 04h43

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