Mon compte
Déjà membre ? S'identifier
Non inscrit ? S'inscrire
 
+ Répondre à la discussion
Affichage des résultats 1 à 10 sur 10
  1. #1
    Membre lvl 5 MartinLeBon est sur la route de la réputation...
    Date d'inscription
    February 2010
    Messages
    6
    Pouvoir de réputation
    4

    Besoin de d'aide pour EA Besoin de d'aide pour EA

    Bonjour,

    Je me présente : Martin Le Bon

    Ce fait plusieurs mois que visite ce forum qui est d'ailleurs pas mal. Je m'intéresse au forex depuis près d'un an et comme tout débutant, pas trop facile.

    Cependant, J'essaie de coder un EA basé sur Moyenne Mobile à Période 13 et 05. Il fonctionne à mon goût et j'espère trouver de l'aide ici pour modifier cet EA avec la Possibilité de fermeture de la moitié de Take Profit et laisser l'autre moitié du lot en cours d'exécution.


    Je veux aussi que EA affiche haut et à gauche sur le graphique, la tendance donnée par les moyennes mobiles et 05. Je veux dire, soit Trend Down - soit Trend UP.

    Le profit ou la perte en pip.

    Je joins l'EA
    Fichiers attachés

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

    Voila la première demande, il y a peut être des érreures mais en gros voila la logique:
    Code:
    % = 50%
    SI un ordre a un take profit ALORS:
        - SI c'est un ordre OP_BUY ALORS:
            - SI le Bid actuel est suppérieur à (TP - ouverture)/2 ALORS:
                - on ferme % de la position
        - SI c'est un ordre OP_SELL ALORS:
            - SI le Ask actuel est suppérieur à (ouverture - TP)/2 ALORS:
                - on ferme % de la position
    Code:
    extern int pourcent = 50;
    pourcent = pourcent/100;
    int start()
    {
    	for (int i = OrdersTotal(); i>=0;i--)
    	{
    		OrderSelect(i,SELECT_BY_POS);
    		int type = OrderType();
    		bool result = false;
    		if (OrderTakeProfit()!=0)
    		{
    			switch(type)
    			{
    				case OP_BUY: 	If ( Bid > (OrderTakeProfit() -OrderOpenPrice())/2 )
    						{
    							while (result == false)
    							{
    								RefreshRates();
    								result = OrderClose( OrderTicket(), OrderLots()/pourcent, MarketInfo(OrderSymbol(), MODE_BID), 5, Red );
    							}
    						}
    						break;
    				case OP_SELL:	If ( Ask < (OrderOpenPrice() - OrderTakeProfit())/2 )
    						{
    							while (result == false)
    							{
    								RefreshRates();
    								result = OrderClose( OrderTicket(), OrderLots()/pourcent, MarketInfo(OrderSymbol(), MODE_ASK), 5, Red );
    							}
    						}
    						break;
    			}
    		}
    	}
    	return(0);
    }
    Dernière modification par harry le ravi ; 15/02/2010 à 16h04.

  3. #3
    Membre lvl 5 MartinLeBon est sur la route de la réputation...
    Date d'inscription
    February 2010
    Messages
    6
    Pouvoir de réputation
    4

    Bonsoir Harry le ravi,

    Merci pour ton aide. Je vais essayer d'ajouter le code demain et je reviendrai pour le retour.

    Cependant, peux-tu m'expliquer car je ne connais pas grande chose de la programmation.

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

    En gros voila ce qu'il faut faire,

    1 - copier ce qui ce trouve avant int start() dans votre EA avant votre int start().

    2 - copier ce qui ce trouve dans int start() { mon code } dans votre EA dans int start() {votre code}.

    La fonction int start() lance tout ce qui s'y trouve (entre { et }) à chaque tick.

    Donc à chaque tick:
    - je fait une boucle qui commence par le nombre d'ordre total et qui fini par 0 en décrémentant de 1 à chaque fois.
    - dans la boucle, je selection l'ordre et je prend son type (OP_BUY,OP_SELL,...)
    - toujours dans la boucle, je vérifie qu'il y a un take profit, dans cas où il y a un TP, je fait la chose suivante.
    - je fait deux cas: un cas où le type est OP_BUY un autre OP_SELL.
    - dans le cas OP_BUY: si le Bid est suppérieur à la moitiée du TP par rapport à l'ouverture de l'ordre, je ferme % (en lots) de la position.
    - dans le cas OP_SELL: si le Ask est inférrieur à la moitiée du TP par rapport à l'ouverture de l'ordre, je ferme % (en lots) de la position

    % par defaut 50 (la moitiée), peut être modifiée lorsqu'on attache l'EA au graph

    il y a peut être des érreures car j'ai fait le code en éditeur de texte, je l'ai pas passé au compilateur.
    Mais si il y a des erreures, dites moi l'erreure et la ligne, je ferai alors mon possible pour débugger.

    Cordialement,

    Harry

  5. #5
    Membre lvl 5 MartinLeBon est sur la route de la réputation...
    Date d'inscription
    February 2010
    Messages
    6
    Pouvoir de réputation
    4

    Bonjour Harry le ravi,

    Une fois de plus merci pour votre aide.
    Alors j'ai essayé de modifier le code de l'EA en y ajoutant le votre, même en supprimant la stratégie de fermture de position.

    Mais toujours 100% du TP comme cible.

    Quelque chose est mal fait ? Un manque ? Une aide de votre part est toujours la bienvenue.

    Demain, d'essaie encore de modifier
    Fichiers attachés

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

    Essayez avec celui-là.
    Fichiers attachés

  7. #7
    Nouveau membre Lelouch est sur la route de la réputation...
    Date d'inscription
    November 2009
    Messages
    3
    Pouvoir de réputation
    0

    j'ai moi aussi essayer un Ea bot ... mais je ne suis pas capable sa prend jamais de position et pourtant quand je regarde le graph c'est suposer en prendre et a date pendant que je regardais les graph biensur mes call aurait été 100% bon...

    eatbuilder.com/

    je suis la desus pour faire mon bot ... mais sa prend pas de position ... je me demande vraiment pourquoi ....

    J'ai mis le bot sur un compte demo ...
    Dernière modification par Edellion ; 20/02/2010 à 00h45.

  8. #8
    Membre lvl 5 MartinLeBon est sur la route de la réputation...
    Date d'inscription
    February 2010
    Messages
    6
    Pouvoir de réputation
    4

    Citation Envoyé par harry le ravi Voir le message
    Essayez avec celui-là.
    Bonsoir Harry

    Grand Merci pour toute votre aide mais toujours une anormalie avec l'EA.

    c'est vraiment dommage que cet EA ne puisse pas être ce dont j'ai besoin. Cependant, je continue à chercher.

    Quand même, après plus essaie, aucune erreur ne se fait détecter pourtant, la stratégie souhaitée e fonctione pas.

    Toujours les 100% du Take profit en ligne de mir.

    Ensemble, on continue
    Merci

  9. #9
    Membre lvl 5 MartinLeBon est sur la route de la réputation...
    Date d'inscription
    February 2010
    Messages
    6
    Pouvoir de réputation
    4

    J'oubliais, vous trouverez ci-joint ce que j'ai pu bricoler

    Merci
    Fichiers attachés

  10. #10
    Membre lvl 5 MartinLeBon est sur la route de la réputation...
    Date d'inscription
    February 2010
    Messages
    6
    Pouvoir de réputation
    4

    Désolé, je ne connais le Bot

Discussions similaires

  1. Besoin d'aide pour codage EA
    Par kouyate dans le forum Trading Divers
    Réponses: 1
    Dernier message: 13/02/2010, 16h35
  2. SVP besoin d'aide pour expert très fiable
    Par djo544 dans le forum Programmation
    Réponses: 3
    Dernier message: 18/01/2010, 00h37
  3. New Ea en cours besoin d'un peu d'aide pour le finaliser svp :p
    Par orelien1 dans le forum Systèmes de Trading Auto
    Réponses: 24
    Dernier message: 22/05/2009, 23h03
  4. Besoin d'aide pour un EA
    Par @rno67 dans le forum Programmation
    Réponses: 0
    Dernier message: 12/04/2009, 00h29
  5. Besoin d'aide pour l'échelle de temps
    Par greg300777 dans le forum Novice sur le Forex
    Réponses: 0
    Dernier message: 17/09/2008, 01h38

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