Mon compte
Déjà membre ? S'identifier
Non inscrit ? S'inscrire
 
+ Répondre à la discussion
Page 1 sur 2 1 2 DernièreDernière
Affichage des résultats 1 à 10 sur 15
  1. #1
    Membre Star harry le ravi est très intéressant
    Date d'inscription
    November 2009
    Messages
    208
    Pouvoir de réputation
    9

    Données MQL4 pour trader (tout broker) Données MQL4 pour trader (tout broker)

    Bonsoir à tous,

    Voila je travaille pour l'instant sur mon premier EA.

    J'aimerai que cet EA s'adapte sur tout les comptes des broker et sur toutes les tailles de portefeuille.

    Je dois donc récupérer plusieures choses.
    Je dois récupérer des informations sur mon compte afin de définir en fonction de mon money management la quantité d'unitées de compte à placer sur un ordre.
    Pour faire cela, je dois aussi récupérer des informations sur le serveur comme la taille du lot, la marge disponible, la paire du graphique,....

    Pourriez-vous m'indiquer tout ce qui vous semble necessaire afin de savoir combien d'unitées de compte je peux placer lors de l'ouverture d'un ordre?

    Si vous ne connaissez pas les fonctiones MQL4, ce n'est pas grave mais au moin les termes du forex necessaires, je regarderais à ce moment là sur la documentation MQL4.

    Merci d'avance.

  2. #2
    Membre Star louprebel is just really nice louprebel is just really nice louprebel is just really nice louprebel is just really nice Avatar de louprebel
    Date d'inscription
    February 2009
    Messages
    1 065
    Pouvoir de réputation
    42

    Citation Envoyé par harry le ravi Voir le message
    Bonsoir à tous,

    Voila je travaille pour l'instant sur mon premier EA.

    J'aimerai que cet EA s'adapte sur tout les comptes des broker et sur toutes les tailles de portefeuille.

    Je dois donc récupérer plusieures choses.
    Je dois récupérer des informations sur mon compte afin de définir en fonction de mon money management la quantité d'unitées de compte à placer sur un ordre.
    Pour faire cela, je dois aussi récupérer des informations sur le serveur comme la taille du lot, la marge disponible, la paire du graphique,....

    Pourriez-vous m'indiquer tout ce qui vous semble necessaire afin de savoir combien d'unitées de compte je peux placer lors de l'ouverture d'un ordre?

    Si vous ne connaissez pas les fonctiones MQL4, ce n'est pas grave mais au moin les termes du forex necessaires, je regarderais à ce moment là sur la documentation MQL4.

    Merci d'avance.
    regarde du coté de la fonction "MarketInfo()", ainsi que dans la liste des fonctions de la rubrique "Account information".



    EDITE : Ta question n'aurait-elle pas été plus entendu dans la rubrique "Programmation" ?
    Dernière modification par louprebel ; 24/12/2009 à 11h43. Motif: Ajout
    Cordialement,
    Loup
    --------------------------------------------------------------------------------------
    Gestion des trades : EA Trade Management, par Tanaïs et Loup REBEL
    ----------------------- Indicateur de Money Management
    Chandelier Multi TF : Graphique multi Chandeliers Multi Time Frame

  3. #3
    Membre Star harry le ravi est très intéressant
    Date d'inscription
    November 2009
    Messages
    208
    Pouvoir de réputation
    9

    Merci Louprebel,

    Oui je pense tout compte fait que ce post devrai ce trouver dans la rubrique programmation. Mais vu que je le trouvais adapté à un EA, je pensais que ca pourrai servir pour créer un robot.

    J'ai avancé de mon coté.

    J'ai trouvé une formule permettant d'avoir la quantité d'unités de trade à placer sur un ordre en fonction de la taille de son portefeuille et d'une notion de risque caractérisée par une part du protefeuille:

    Code:
    double risk = 0.1;
    double lot = MathFloor((MathFloor(AccountBalance()*risk))/(MarketInfo(Symbol(),MODE_LOTSIZE)*MarketInfo(Symbol(),MODE_MINLOT)))*MarketInfo(Symbol(),MODE_MINLOT);
    Par exemple, mon compte démo est actuellement à 16040.25.
    Mon risk étant de 0.1, je peux placer 1604.025.
    Donc celon les données de mon compte et de mon serveur, je prévoir que je peux placer 0.01 lot (et non 0.016 lot car le lot minimum est de 0.01).

    Avec un risk de 0.3, je peux placer 0.03 lot.

    Si vous trouvez qu'il y a quelque chose à redire, n'hésitez pas.

    Je dois voir maintenant si le lot que je voudrai placer peux être placé. Donc je dois voir avec la fonction AccountFreeMarginCheck(Symbol(),OP_BUY/OP_SELL,lot)
    Dernière modification par harry le ravi ; 24/12/2009 à 15h18.

  4. #4
    Membre Star louprebel is just really nice louprebel is just really nice louprebel is just really nice louprebel is just really nice Avatar de louprebel
    Date d'inscription
    February 2009
    Messages
    1 065
    Pouvoir de réputation
    42

    Et le stop loss dans tout ça ? Et le stop loss dans tout ça ?

    Bonne démarche pour une partie seulement de ton raisonnement (minilot, et FreeMarginChek).

    Petite question :

    Dans ta formule, le risque représente quoi, par rapport à l'évolution possible des prix ?

    Je pose cette question car il me semble que tu n'as pas prix en compte une notion de perte maxi, qui serait déterminée par un stop loss par exemple.

    Tu devrais peut-être revoir les webinaires sur le money management. Tu comprendras mieux que la position du stop loss est la clef du calcul de la taille de la position à ouvrir par rapport au risque maxi qu'on est prêt à encourir si le stop loss est touché (0,1% à 0,5% généralement)

    Bonnes fêtes de fin d'années, studieuses mais sans abus...

    Cordialement,
    Loup
    --------------------------------------------------------------------------------------
    Gestion des trades : EA Trade Management, par Tanaïs et Loup REBEL
    ----------------------- Indicateur de Money Management
    Chandelier Multi TF : Graphique multi Chandeliers Multi Time Frame

  5. #5
    Membre Star harry le ravi est très intéressant
    Date d'inscription
    November 2009
    Messages
    208
    Pouvoir de réputation
    9

    Oui la mon Money Management est vraiment simple car le risk correspond à un pourcentage de mon portefeuille que je place.
    0.1 correspond à 10%.

    Je sais que ce n'est pas ce qu'il faut faire mais la question du Money Management n'est pas prise en compte dans ce calcul.

    Par contre j'ai tenté d'utiliser la fonction AccountFreeMarginCheck(Symbol(),OP_BUY,lot) et j'obtient un résultat égal à -10000000000 peu importe la valeur de risk (de 0.1 à 10000000000).
    Pourtant je n'ai pas d'ordre ouvert actuellement et j'ai donc assez de marge disponible pour ouvrir une position avec 10% de mon capital.

    Si vous avez une idée, je suis prenneur.

  6. #6
    Membre lvl 75 trader24 est actif et passionnant
    Date d'inscription
    August 2008
    Localisation
    Sarlat
    Messages
    87
    Pouvoir de réputation
    13

    Citation Envoyé par harry le ravi Voir le message
    Bonsoir à tous,

    Voila je travaille pour l'instant sur mon premier EA.

    J'aimerai que cet EA s'adapte sur tout les comptes des broker et sur toutes les tailles de portefeuille.

    Je dois donc récupérer plusieures choses.
    Je dois récupérer des informations sur mon compte afin de définir en fonction de mon money management la quantité d'unitées de compte à placer sur un ordre.
    Pour faire cela, je dois aussi récupérer des informations sur le serveur comme la taille du lot, la marge disponible, la paire du graphique,....

    Pourriez-vous m'indiquer tout ce qui vous semble necessaire afin de savoir combien d'unitées de compte je peux placer lors de l'ouverture d'un ordre?

    Si vous ne connaissez pas les fonctiones MQL4, ce n'est pas grave mais au moin les termes du forex necessaires, je regarderais à ce moment là sur la documentation MQL4.

    Merci d'avance.
    Bonjour

    Pour implanter un ""Money management" je te conseille l'article très intéressant :
    On the Long Way to Be a Successful Trader - The Two Very First Steps - MQL4 Articles

    Mais :
    Writing this paper I assume you've read the article "Fallacies, Part 1: Money Management is Secondary and Not Very Important". If you haven’t, I strongly recommend you to go there now (Fallacies, Part 1: Money Management is Secondary and Not Very Important - MQL4 Articles) before continuing with this one.
    Je vais me faire jeter par Loup mais pour moi dans la construction d'un EA l'important (et le plus difficile) c'est la stratégie.

    Joyeux Noël

    PHIL

  7. #7
    Membre Star louprebel is just really nice louprebel is just really nice louprebel is just really nice louprebel is just really nice Avatar de louprebel
    Date d'inscription
    February 2009
    Messages
    1 065
    Pouvoir de réputation
    42

    Bon, comme c'est Noël je vous donne le code pour la fonction de calcul de la taille des lots :
    Code:
    extern int stoploss = xxx; // multiplier par 10 pour les brokers 5 décimales
    extern double Risque = 2.5; // en % du capital
    //--------------------------
    Double CalculLot()
    {
       double Marketinfo = MarketInfo(Symbol(), MODE_MINLOT);
       double PerteMax = MarketInfo(Symbol(),MODE_TICKVALUE)*stoploss/Point;
       double Lot1 = (AccountBalance()*Risque/100)/PerteMax;
       if (Marketinfo == 0.1)
          Lot = NormalizeDouble(Lot1,1); 
       if (Marketinfo == 0.01)
          Lot= NormalizeDouble(Lot1,2); 
       return(Lot);
    }
    //--------------------------
    Sauf erreur de frappe, ça devrait fonctionner.

    C'est sûr que comme ça, c'est le plus facile à mettre en place dans un EA. Tout dépends comment tes stoploss sont déterminés. Si c'est juste une valeurs fixée "au pif" dans les paramètres, oui. Mais si tu calcules tes stops sur la base d'indicateurs de marché, ou sur les points de retournement des retracements, là je te promet que c'est beaucoup plus compliqué que d'implanter les setups d'entrée.

    Pas sûr non plus que ce soit le moins important.

    Joyeuses fêtes à tous !

    Cordialement,
    Loup
    --------------------------------------------------------------------------------------
    Gestion des trades : EA Trade Management, par Tanaïs et Loup REBEL
    ----------------------- Indicateur de Money Management
    Chandelier Multi TF : Graphique multi Chandeliers Multi Time Frame

  8. #8
    Membre Star harry le ravi est très intéressant
    Date d'inscription
    November 2009
    Messages
    208
    Pouvoir de réputation
    9

    Cette fonction me semble pas mal du tout.

    Par contre, je ne vois pas de vérification de la marge disponible.

    Imaginons qu'une personne décide de risquer 100% de son capital (tout en ayant un effet de levier). Il ne risque pas d'y avoir un soucis?

    En tout cas merci pour la fonction.

    Je vais regarder en plus les articles sur le Money Management en MQL4.

    Merci.

  9. #9
    Membre Star vamm972 est actif et passionnant vamm972 est actif et passionnant Avatar de vamm972
    Date d'inscription
    November 2008
    Localisation
    quebec
    Messages
    1 429
    Pouvoir de réputation
    24

    Citation Envoyé par harry le ravi Voir le message
    Cette fonction me semble pas mal du tout.

    Par contre, je ne vois pas de vérification de la marge disponible.

    Imaginons qu'une personne décide de risquer 100% de son capital (tout en ayant un effet de levier). Il ne risque pas d'y avoir un soucis?

    En tout cas merci pour la fonction.

    Je vais regarder en plus les articles sur le Money Management en MQL4.

    Merci.
    c'est pour ca que je préfère
    AccountEquity()
    plutôt que
    double Lot1 = (AccountBalance()*Risque/100)/PerteMax;

    ce qui donnerait

    double lot = NormalizeDouble(AccountEquity() * Risk/100 / 1000.0

    voila aussi ma formule en cadeau de noël

    void CalculateMM()
    {
    double MinLots=MarketInfo(Symbol(),MODE_MINLOT);
    double MaxLots=MarketInfo(Symbol(),MODE_MAXLOT);
    Lots=AccountFreeMargin()/100000*RiskPercent;
    Lots=MathMin(MaxLots,MathMax(MinLots,Lots));
    if(MinLots<0.1)Lots=NormalizeDouble(Lots,2);
    else
    {
    if(MinLots<1)Lots=NormalizeDouble(Lots,1);
    else Lots=NormalizeDouble(Lots,0);
    }
    if(Lots<MinLots)Lots=MinLots;
    if(Lots>MaxLots)Lots=MaxLots;
    return(0);
    }

  10. #10
    Membre Star louprebel is just really nice louprebel is just really nice louprebel is just really nice louprebel is just really nice Avatar de louprebel
    Date d'inscription
    February 2009
    Messages
    1 065
    Pouvoir de réputation
    42

    100% du capital ??? 100% du capital ???

    Citation Envoyé par harry le ravi Voir le message
    Cette fonction me semble pas mal du tout.

    Par contre, je ne vois pas de vérification de la marge disponible.

    Imaginons qu'une personne décide de risquer 100% de son capital

    En tout cas merci pour la fonction.

    Je vais regarder en plus les articles sur le Money Management en MQL4.

    Merci.
    Une personne qui décide de risquer 100% de son capital ne va pas s'embarrasser avec un money management

    Cordialement,
    Loup
    --------------------------------------------------------------------------------------
    Gestion des trades : EA Trade Management, par Tanaïs et Loup REBEL
    ----------------------- Indicateur de Money Management
    Chandelier Multi TF : Graphique multi Chandeliers Multi Time Frame

Discussions similaires

  1. Trader avec le bath thaïlandais : Quel broker ?
    Par chawa dans le forum Broker Forex
    Réponses: 3
    Dernier message: 01/09/2009, 13h21
  2. données pour backtest
    Par cdm dans le forum Trading Divers
    Réponses: 3
    Dernier message: 23/08/2009, 01h05
  3. Bonjour a tout les TRADER ^^
    Par moster dans le forum Présentation des membres
    Réponses: 25
    Dernier message: 17/10/2008, 01h27

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