banner_forum
Devenez membre de la plus grande
communauté francophone sur le Forex
Partagez, échangez et apprenez en gagnant des crédits sur votre compte de trading

Robot de trading ZEUS

  • vivilamalice

    Bonsoir,

    Je me suis spécialisée dans le codage de mes propres robots forex. J'en ai 1 qui sort des fourneaux. Je l'ai appelé ZEUS.
    Je vous mets ses caractéristiques ci-dessous pour ceux que ça intéressent. ceci étant j'ai 2 questions:

    1) Le trouvez vous bien? Ses résultats sont ils satisfaisants?
    2) Où puis le vendre sachant que sur MQ5 j'ai un souci à la fin (error 131) et je n'arrive pas à finaliser la mise en vente.

    Merci à vous!
    vivilamalice a joint une image
    robot-de-trading-zeus-10946
  • lefeuvr3

    Superbe !
    Reste a le faire veillir un peu et a voir s'il tient la distance sans changer les parametres trop rapidement
  • vivilamalice

    lefeuvr3, le 26/08/2018 dit :
    Superbe ! Reste a le faire veillir un peu et a voir s'il tient la distance sans changer les parametres trop rapidement

    Merci beaucoup pour votre retour. En fait je vais en cumuler 4 différents sur cette paire. Ils ont des caractéristiques différentes et pourraient bien m'aider. Je post dans quelques minutes les 3 autres. Si je peux avoir d'autres avis...
  • vivilamalice

    Je vous présente POSEIDON...
    vivilamalice a joint une image
    robot-de-trading-zeus-10950
  • vivilamalice

    Et voici HERMES...
    vivilamalice a joint une image
    robot-de-trading-zeus-10951
  • vivilamalice

    Et enfin APHRODITE!!!
    vivilamalice a joint une image
    robot-de-trading-zeus-10952
  • Lebenet

    Bonjour,

    Pas mal car le ratio trade gagnants/perdants est élevé.
    Le drawdown est limité et donc permet de maximiser le nombre de lots.
    Avez-vous essayé sur 2017, voir comment il se comporte ?
  • vivilamalice

    Lebenet, le 26/08/2018 dit :
    Bonjour, Pas mal car le ratio trade gagnants/perdants est élevé. Le drawdown est limité et donc permet de maximiser le nombre de lots. Avez-vous essayé sur 2017, voir comment il se comporte ?

    En fait les robots sont évalués sur 10 ans (2008 - 2018). Ce n'est pas juste l'année 2018(hélàs)
    2017 semble être une année sans car même si les 4 robots font 100% de trades gagnants ils n'en prennent qu'une vingtaine de positions chacun
  • vivilamalice

    En fait en cumulant les 4 robots on peut espérer un trade tous les 2.3 jours. C'est peu mais ça rapporte!
  • Lebenet

    C'est en effet c'est la qualité qui compte et pas la quantité :)
    Quelques indices sur votre philosophie de trading ?
  • Lebenet

    Pour info, je développe mes propres EA mais pas en MT4.
    Je programme en LUA car j'ai pris l'habitude de l'interface TSII de FXCM.
    Je me mets doucement au MQ4 (plateforme MT4) mais c'est moins souple comme langage.
    Pour l'instant, le capital fait x3 tous les 6 mois, surtout depuis la mise en place du levier maxi de 1/30.
    Avant, l'algo fait x10 en 6 mois.
    Exemple de ce que cela donne dans une optimisation des paramètres de janvier 2018 à juin 2018.
    Capital de départ de 1000$.
    Capital au bout de 6 mois 3696$.
    Modifié le 2018-08-26 17:24:51 par Lebenet
    Lebenet a joint une image
    robot-de-trading-zeus-10953
  • lefeuvr3

    ERR_INVALID_TRADE_VOLUME 131 Invalid trade volume.
    A priori cette erreur ne doit pas être trop difficile a corriger….surement un petit problème sur la taille des lots...j'ai déjà eu ce genre de problème
  • vivilamalice

    lefeuvr3, le 29/08/2018 dit :
    ERR_INVALID_TRADE_VOLUME 131 Invalid trade volume. A priori cette erreur ne doit pas être trop difficile a corriger….surement un petit problème sur la taille des lots...j'ai déjà eu ce genre de problème

    Bonjour!
    Désolé je n'étais pas du tout dispo ces derniers jours. Et plutôt que d'appliquer les robots mentionnés plus haut, j'ai lancé mes armées de robots sur 8 paires différentes. Ce sont des robots sur le court terme (ils ont fait tous presque 100% de gains depuis le 1er janvier 2018 avec environ 100 trades de moyenne chacun). Et j'en ai lancé 38 au total sur l'AUDCAD, AUDUSD, EURUSD, GBPUSD, EURJPY, GBPJPY, USDCAD et USDJPY. Et voici le résultat en 1 semaine. C'est plutôt très bien mais je m'inquiète du nombre de positions prises. Je crois que je n'ai pas besoin d'en ajouter d'autres.
    Lefeuvr, si tu as une solution pour cette erreur 131 je suis preneuse sachant qu'il pourrait s'agir d'un problème de taille de lots...mais je ne comprends pas trop là.
    Ci dessous la perf de mon compte en 1 semaine.
    A très vite!!!
    vivilamalice a joint une image
    robot-de-trading-zeus-10957
  • kimou78

    Vraiment pas mal cet algo! 100% de trade gagnant c'est assez impressionnant ! Le mien a un bon rendement mais doit conceder des trades perdants..
    Concernant ton erreur il s'agit vraisemblablement d'un probleme de taille de lot. Soit tu essayes d'ouvrir une taille trop petite car selon le type de compte et le broker il y a des minimum different... soit tu essayes d'ouvrir un lot trop grand .. il faut en effet calculer la marge que tu dois avoir sur ton compte qui est lui meme fonction de ton effet de levier (qui vient de drastiquement diminuer).
  • lefeuvr3

    Bonjour Vivilamalice
    J'aurais une petite Suggestion
    Dans le code ci dessous tu pourrais prendre l'ajustement des lots et l'intégrer ,pour essayer, a ton propre EA.
    il suffirait d'ajuster la taille des lots en jouant sur le LotFactor = 1.9...à10.1 ou autre
    Amicalement
    Gerard

    Code
    //+------------------------------------------------------------------+ extern string ip="INPUT PARAMETERS"; extern string mm="MONEY MANAGEMENT"; double LotSize; //lotsize extern double LotFactor = 1.9; //lotsize factor[/c] //+------------------------------------------------------------------+ exemple d'integration des volumes [NR(Lot_Volume())] …. …… OrderSend(Symbol(), OP_SELL, NR(Lot_Volume()) , Bid, 0, 0, previous_highpriceM5 + spread_gap*point_gap, "", MagicNumber, 0, Red);…. //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //Calculates Lot Size based on balance and factor //+------------------------------------------------------------------+ double NR(double thelot) { double maxlots=MarketInfo(Symbol(),MODE_MAXLOT), minilot=MarketInfo(Symbol(),MODE_MINLOT), lstep=MarketInfo(Symbol(),MODE_LOTSTEP); double lots=lstep*NormalizeDouble(thelot/lstep,0); lots=MathMax(MathMin(maxlots,lots),minilot); return (lots); } double Lot_Volume() { double lot; if (AccountBalance()>=25) lot=0.01; if (AccountBalance()>=50) lot=0.02; if (AccountBalance()>=75) lot=0.03; if (AccountBalance()>=100) lot=0.04; if (AccountBalance()>=125) lot=0.05; if (AccountBalance()>=150) lot=0.06; if (AccountBalance()>=175) lot=0.07; if (AccountBalance()>=200) lot=0.08; if (AccountBalance()>=225) lot=0.09; if (AccountBalance()>=250) lot=0.1; if (AccountBalance()>=275) lot=0.11; if (AccountBalance()>=300) lot=0.12; if (AccountBalance()>=325) lot=0.13; if (AccountBalance()>=350) lot=0.14; if (AccountBalance()>=375) lot=0.15; if (AccountBalance()>=400) lot=0.16; if (AccountBalance()>=425) lot=0.17; if (AccountBalance()>=450) lot=0.18; if (AccountBalance()>=475) lot=0.19; if (AccountBalance()>=500) lot=0.2; if (AccountBalance()>=525) lot=0.21; if (AccountBalance()>=550) lot=0.22; if (AccountBalance()>=575) lot=0.23; if (AccountBalance()>=600) lot=0.24; if (AccountBalance()>=625) lot=0.25; if (AccountBalance()>=650) lot=0.26; if (AccountBalance()>=675) lot=0.27; if (AccountBalance()>=700) lot=0.28; if (AccountBalance()>=725) lot=0.29; if (AccountBalance()>=750) lot=0.30; if (AccountBalance()>=800) lot=0.32; if (AccountBalance()>=825) lot=0.33; if (AccountBalance()>=850) lot=0.34; if (AccountBalance()>=875) lot=0.35; if (AccountBalance()>=900) lot=0.36; if (AccountBalance()>=925) lot=0.37; if (AccountBalance()>=950) lot=0.38; if (AccountBalance()>=975) lot=0.39; if (AccountBalance()>=1000) lot=0.4; if (AccountBalance()>=1025) lot=0.41; if (AccountBalance()>=1050) lot=0.42; if (AccountBalance()>=1075) lot=0.43; if (AccountBalance()>=1100) lot=0.44; if (AccountBalance()>=1125) lot=0.45; if (AccountBalance()>=1150) lot=0.46; if (AccountBalance()>=1175) lot=0.47; if (AccountBalance()>=1200) lot=0.48; if (AccountBalance()>=1225) lot=0.49; if (AccountBalance()>=1250) lot=0.5; if (AccountBalance()>=1275) lot=0.51; if (AccountBalance()>=1300) lot=0.52; if (AccountBalance()>=1325) lot=0.53; if (AccountBalance()>=1350) lot=0.54; if (AccountBalance()>=1350) lot=0.55; if (AccountBalance()>=1400) lot=0.56; if (AccountBalance()>=1450) lot=0.58; if (AccountBalance()>=1500) lot=0.6; if (AccountBalance()>=1550) lot=0.62; if (AccountBalance()>=1600) lot=0.64; if (AccountBalance()>=1650) lot=0.66; if (AccountBalance()>=1700) lot=0.68; if (AccountBalance()>=1750) lot=0.7; if (AccountBalance()>=1800) lot=0.72; if (AccountBalance()>=1850) lot=0.74; if (AccountBalance()>=1900) lot=0.76; if (AccountBalance()>=1950) lot=0.78; if (AccountBalance()>=2000) lot=0.8; if (AccountBalance()>=2025) lot=0.81; if (AccountBalance()>=2050) lot=0.82; if (AccountBalance()>=2075) lot=0.83; if (AccountBalance()>=2100) lot=0.84; if (AccountBalance()>=2150) lot=0.86; if (AccountBalance()>=2175) lot=0.87; if (AccountBalance()>=2200) lot=0.88; if (AccountBalance()>=2225) lot=0.89; if (AccountBalance()>=2250) lot=0.9; if (AccountBalance()>=2275) lot=0.91; if (AccountBalance()>=2300) lot=0.92; if (AccountBalance()>=2350) lot=0.94; if (AccountBalance()>=2400) lot=0.96; if (AccountBalance()>=2450) lot=0.98; if (AccountBalance()>=2500) lot=1.0; if (AccountBalance()>=2550) lot=1.02; if (AccountBalance()>=2600) lot=1.04; if (AccountBalance()>=2700) lot=1.08; if (AccountBalance()>=2800) lot=1.12; if (AccountBalance()>=2900) lot=0.16; if (AccountBalance()>=3000) lot=1.2; if (AccountBalance()>=3100) lot=1.24; if (AccountBalance()>=3200) lot=1.28; if (AccountBalance()>=3300) lot=1.32; if (AccountBalance()>=3400) lot=1.36; if (AccountBalance()>=3500) lot=1.4; if (AccountBalance()>=4000) lot=1.6; if (AccountBalance()>=4500) lot=1.8; if (AccountBalance()>=5000) lot=2.0; if (AccountBalance()>=5500) lot=2.2; if (AccountBalance()>=6000) lot=2.4; if (AccountBalance()>=6500) lot=2.6; if (AccountBalance()>=7000) lot=2.8; if (AccountBalance()>=7500) lot=3; if (AccountBalance()>=8000) lot=3.2; if (AccountBalance()>=8500) lot=3.4; if (AccountBalance()>=9000) lot=3.6; if (AccountBalance()>=9500) lot=3.8; if (AccountBalance()>=10000) lot=4.0; if (AccountBalance()>=10100) lot=4.04; if (AccountBalance()>=10200) lot=4.08; if (AccountBalance()>=10300) lot=4.12; if (AccountBalance()>=10400) lot=4.16; if (AccountBalance()>=10500) lot=4.2; if (AccountBalance()>=10600) lot=4.26; if (AccountBalance()>=10700) lot=4.3; if (AccountBalance()>=10800) lot=4.34; if (AccountBalance()>=10900) lot=4.38; if (AccountBalance()>=11000) lot=4.4; if (AccountBalance()>=12000) lot=4.8; if (AccountBalance()>=13000) lot=5.2; if (AccountBalance()>=14000) lot=5.6; if (AccountBalance()>=15000) lot=6.0; if (AccountBalance()>=20000) lot=8.0; if (AccountBalance()>=30000) lot=12; if (AccountBalance()>=40000) lot=16; if (AccountBalance()>=50000) lot=20; if (AccountBalance()>=60000) lot=24; if (AccountBalance()>=70000) lot=28; if (AccountBalance()>=80000) lot=32; if (AccountBalance()>=90000) lot=36; if (AccountBalance()>=100000) lot=40; if (AccountBalance()>=200000) lot=80; LotSize=lot/LotFactor; return(LotSize); }
  • lefeuvr3

    ps...J'aime beaucoup les noms de tes robots :)
    Un conseil cependant ...évite Neptune ou Poseidon car l' EA pourrait prendre le bouillon et plonger :)
    Modifié le 2018-09-03 09:29:15 par lefeuvr3
  • kimou78

    Bonjour lefeuvr,
    Un petit conseil pour des soucis de simplicité, ta taille de lot est une fonction linéaire du montant de ton compte.
    Il suffit donc de faire : AccountBalance() * 0,01 /25 et tu auras a tous les coups le lots qu'il faut trader.
    Tu peux d'ailleurs créer une fonction dédiée à ce calcul
  • lefeuvr3

    Merci Kimou...je vais le faire
  • vivilamalice — en réponse à lefeuvr3 dans son message #111992

    Bonjour,

    Merci Lefeuvr! Oui j'ai finalement optée pour des divinités nordiques! Lol.
    Merci pour le code, je vais tester ça. En fait c'est lorsque MQL5 teste les robots pour la mise en ligne qu'il me donne cette erreur. Sur mon compte de trading je n'ai aucun souci sauf....un de taille. Je n'arrive pas à limiter mon compte de trading sur le nombre de positions à prendre max par jour. Il semblerait que ODIN, THOR et autres VALKYRIES fassent une course à la victoire et je me suis retrouvée hier matin avec 31 trades ouverts!!! Et donc une marge très très faible. Le moindre décalage en ma défaveur m'aurait tout fait perdre ou en tout cas une bonne partie. Ah ces divinités!
    Donc ma question: comment puis je limiter le nombre de trades ouverts en même temps sur mon compte de trading sachant que j'ai une cinquantaine de robots actifs. Je peux le faire par robot sans souci mais ce n'est pas ce que je recherche. Par exemple dès que ma marge atteint 500% c'est stopper les robots sans avoir besoin de les désactiver...ou dès qu'il a pris 10 positions ou autre.

    Merci à vous!!!!
  • lefeuvr3

    Vivilamalice
    Je mets un lien qui donne la solution de ce probleme
    https://www.mql5.com/en/articles/1412