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
    Nouveau membre fabrice300 est sur la route de la réputation...
    Date d'inscription
    January 2012
    Messages
    13
    Pouvoir de réputation
    2

    Programmation MT4 - comment vérifier que des ordres sont déja en cours ? Programmation MT4 - comment vérifier que des ordres sont déja en cours ?

    Bonjour

    Débutant sur MT4, je pense avoir finalisé toutes mes conditions avant mon passage d'ordre.
    j'ai compris la fonction orderSend, mais avant de l'executer, je voudrais que mon EA vérifie qu'il ny a pas déja un ordre en cours.
    Et là je suis un peu perdu dans toutes les fonctions "order".

    Ensuite, une fois mon ordre en cours, je voudrais récupérer sa valeur d'entrée et son numéro de ticket, afin d'afinner mon StopLost et mon takeProfit au fur et à mesure de l'évolution du marché, puis de le fermer.

    J'espère avoir été assez clair dans mes explications.

    d'avance merci

  2. #2
    Membre Star Blaxs est très intéressant Avatar de Blaxs
    Date d'inscription
    January 2010
    Localisation
    Suisse
    Messages
    786
    Pouvoir de réputation
    9

    Pour vérifier s'il y a des trades en cours :
    If (OrdersTotal() > 0

    La fonction OrderSend() retourne le ticket, donc variableTicket = OrderSend(.......

    Pour tout les autres éléments de ton trade, tu dois au paravent sélectionner l'ordre avec OrderSelect(), puis demander par exemple OrderOpenPrice().

    Un bon conseil, achète le bouquin "Programmer en MQL4" de Henri Blatzer.

    Et commence par décortiquer des EA existants afin de les comprendre. Tu progresseras bien plus vite que de vouloir directement développer à partir d'une page blanche.

    Bon courage.



    Citation Envoyé par fabrice300 Voir le message
    Bonjour

    Débutant sur Mt4, je pense avoir finalisé toutes mes conditions avant mon passage d'ordre.
    j'ai compris la fonction orderSend, mais avant de l'executer, je voudrais que mon EA vérifie qu'il ny a pas déja un ordre en cours.
    Et là je suis un peu perdu dans toutes les fonctions "order".

    Ensuite, une fois mon ordre en cours, je voudrais récupérer sa valeur d'entrée et son numéro de ticket, afin d'afinner mon StopLost et mon takeProfit au fur et à mesure de l'évolution du marché, puis de le fermer.

    J'espère avoir été assez clair dans mes explications.

    d'avance merci

  3. #3
    Nouveau membre fabrice300 est sur la route de la réputation...
    Date d'inscription
    January 2012
    Messages
    13
    Pouvoir de réputation
    2

    Merci blaxs.

    Pour decortiquer, je peux t'assurer que je decortique.
    Depuis 1mois, je lis tout ce que je trouve sur MQL4 et je passe très souvent sur ce forum qui est excellent.
    La programmation m'interesse, même si quelque fois je m'arrache les cheveux juste pour un petit symbol manquant.
    Je vais de suite suivre ton conseil et chercher ce livre.

    Mon objectif, transformé une méthode qui aujourd'hui fonctionne plutot bien sous excel, en EA.
    Je pense que tu viens de me fournir des éléments qui vont me raprocher de mon but.

    Encore merci

  4. #4
    Nouveau membre fabrice300 est sur la route de la réputation...
    Date d'inscription
    January 2012
    Messages
    13
    Pouvoir de réputation
    2

    Est-il possible d'effectuer des backtest quand les marchés sont fermés ??

  5. #5
    Nouveau membre fabrice300 est sur la route de la réputation...
    Date d'inscription
    January 2012
    Messages
    13
    Pouvoir de réputation
    2

    Bonsoir

    Je reviens vers vous et votre savoir, pour essayer d'améliorer mon Expert.

    J'ai bien avancé dans ma programmation.

    disons que j'arrive à valider toutes mes conditions avant l'ouverture d'un ordre.
    que je fais évoluer mon SL et mon TP en fonction de ma stratégie.
    et que j'arrive à cloturer comme prévu.

    maintenant j'aimerai ajouter des conditions de lancement à mon EA.

    Je m'explique:

    Quand je démarre mon programme (ou après une perte de connexion) il lui manque quelques infos.

    Je travaille principalement avec des tendances et les bandes bollinger.
    au moment ou je lance mon EA, j'aimerai savoir si le cours arrive de la moyenne mobile ou si il vient d'une des bandes bollinger (haute ou basse)
    je sais comment faire des iMA et des iBands,mais je ne sais pas comment aller vérifier mon info dans une échelle de temps qui du coup est variable.

    Si mon explication n'est pas clair, dites le moi ? j'essayerai d'inserer un graphique.

    Par avance merci.

  6. #6
    Nouveau membre fabrice300 est sur la route de la réputation...
    Date d'inscription
    January 2012
    Messages
    13
    Pouvoir de réputation
    2

    si j'ose abuser, je vous demanderai bien aussi comment récupérer les ordres en cours au démarrage de mon EA.
    en identifiant le numéro de ticket, le symbol, le type (buy ou sell).

    euh... je crois que c'est tout... pour le moment !!!

  7. #7
    Nouveau membre fabrice300 est sur la route de la réputation...
    Date d'inscription
    January 2012
    Messages
    13
    Pouvoir de réputation
    2

    Je répond à ma propre question, les backtest fonctionnent même le weekend.

  8. #8
    Nouveau membre fabrice300 est sur la route de la réputation...
    Date d'inscription
    January 2012
    Messages
    13
    Pouvoir de réputation
    2

    pour la récuprération des ordres, j'ai trouvé.
    Par contre toujours un peu coincé au niveau de la vérification de ma provenance (bande bollinger ou mm).

  9. #9
    Membre Star Blaxs est très intéressant Avatar de Blaxs
    Date d'inscription
    January 2010
    Localisation
    Suisse
    Messages
    786
    Pouvoir de réputation
    9

    Citation Envoyé par fabrice300 Voir le message
    Je répond à ma propre question, les backtest fonctionnent même le weekend.
    Fais très attention avec les BT le week-end !

    Il faut impérativement que le compte sur lequel tu fais tes BT soit à spread fixe. Avec les spread variables, le spread utilisé par le testeur sera le dernier avant la suspension des cotations le vendredi soir, qui en général n'est pas du tout réaliste (soit trop élevé ou carrément zéro) donc tout sera faussé.

    On peut également fixer le spread avec un utilitaire.

  10. #10
    Nouveau membre fabrice300 est sur la route de la réputation...
    Date d'inscription
    January 2012
    Messages
    13
    Pouvoir de réputation
    2

    Ok, j'étais loin de penser à tout ça...
    le mieux est de tester mon EA en direct sur compte démo. et pour l'instant c'est pas mal.
    il me reste encore quelque affinage a transformer en programme, mais je crois que je progresse bien.
    4 pages de programmation en 15 jours, et ça tourne.
    c'est moins compliqué que ça n'en n'a l'air.
    e reviendrai vous afficher mes résultats. virtuel dans un premier tant. puis je l'espère réél par la suite.

Discussions similaires

  1. Vérifier le nombre d'ordres ouverts
    Par condor666 dans le forum Programmation
    Réponses: 2
    Dernier message: 01/08/2011, 23h04
  2. identification des ordres en cours
    Par TAAD dans le forum Programmation
    Réponses: 3
    Dernier message: 25/03/2010, 00h08
  3. Cours de programmation sur MetaTrader
    Par Edellion dans le forum Systèmes de Trading Auto
    Réponses: 3
    Dernier message: 13/10/2009, 12h09
  4. Comment gérer les ordres ouvert
    Par dudu22 dans le forum Programmation
    Réponses: 0
    Dernier message: 02/07/2009, 15h44

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