[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 104

 
MaxZ:

C'est une idée intéressante. Je n'y viendrais pas de sitôt ! Merci ! :D

Sauf que je me suis un peu chargé. Il est impossible qu'un écart flottant puisse l'affecter, n'est-ce pas ?


L'écart flottant aura toujours un effet.

Mais il aura un effet sur l'ouverture d'un guichet comme il aurait un effet sur sa fermeture pièce par pièce. OrderCloseBy() n'est pas affecté par le spread.

 
PapaYozh:


Les spreads flottants seront toujours affectés.

Mais cela affectera l'ouverture du comptoir comme cela affecterait la fermeture pièce par pièce. OrderCloseBy() n'est en aucun cas affecté par le spread.

C'est ce que je voulais entendre.

Est-il possible que tous les courtiers ne permettent pas de clôturer des contre-ordres avec OrderCloseBy() ?

 
MaxZ:

C'est ce que je voulais entendre.

Est-il possible que tous les courtiers ne permettent pas de clôturer les contre-ordres avec OrderCloseBy() ?


Premièrement, les contre-ordres doivent être autorisés.

Et deuxièmement.

 

Bonjour

Les gars, comment faire pour que les trades ne soient pas fermés lorsque le drawdown total est de 30% (l'EA ne fonctionne plus) ?

Il y a peut-être un lien ?

Merci d'avance !

 

Aidez à trouver une erreur !


avatar
10
mamba5 18.08.2011 14:23

J'écris un EA basé sur la stratégie "Black MACD" :


Paire de devises : n'importe laquelle

Délai : 15 et plus.

Indicateurs : EMA(3) EMA(18), RSI(14), MACD(12,26,9)

Nous supprimons la ligne de signal de l'indicateur MACD, tous les indicateurs sont appliqués à l'indicateur de prix Close.

Signal d'entrée d'achat : EMA(3) croise EMA(18) de bas en haut, attendez que le MACD montre un côté positif. Si le RSI(14) est au-dessus du niveau 50, alors achetez. Le stop-loss est fixé au dernier minimum local. Sortez de la transaction en inversant le croisement des EMA, ou utilisez votre propre approche.

Signal de vente : Situation inverse : Croisement de la EMA(3) EMA(18) vers le bas, attendre que le MACD soit négatif. Si le RSI(14) est inférieur à 50, alors achetez. Le stop-loss est fixé au dernier sommet.


Lors de la compilation du code, il est indiqué qu'il manque une parenthèse. Après une longue recherche, il me semblait avoir trouvé où il devait être, mais après avoir corrigé l'erreur, j'ai eu 20 à 30 nouveaux bogues. S'il vous plaît, dites-moi où je l'ai manqué. ))) Le code est dans le fichier joint.

Fichiers joints:
BlackvMACD.mq4 (5.21 KB) supprimer
 

Chérie !

Veuillez me donner la formule sous forme mathématique pour calculer le concept "ACCELERATION - facteur d'accélération" en parabolique. Je n'arrive pas encore à le comprendre dans le code...

 
serg1:

Chérie !

Veuillez me donner la formule sous forme mathématique pour calculer le concept "ACCELERATION - facteur d'accélération" en parabolique. Je n'arrive pas encore à le comprendre dans le code...


google
 
PapaYozh:


Tout d'abord, les contre-échanges devraient être autorisés.

Et deuxièmement.

Tout est devenu plus ou moins clair. Merci pour vos réponses ! :))


smartemiy:

Bonjour

Comment faire pour que les transactions ne soient pas fermées si j'ai un drawdown total de 30% (l'EA ne fonctionne plus) ?

Il y a peut-être un lien ?

Merci d'avance !

Bonjour !

D'une manière ou d'une autre, cela ne fonctionnera pas pour vous ?

if (AccountProfit() < -0.3*AccountBalance())
   return(0);
 
Bonjour, pourriez-vous me dire s'il est possible d'implémenter un algorithme de trailing stop sans utiliser OrderModify ? Je voudrais fixer le profit minimal dès que l'ordre atteint le profit, c'est-à-dire me souvenir du niveau, et ensuite, si l'ordre est "allé" dans la bonne direction, déplacer ce niveau après lui.
 
J'utilise cet exemple
//----
 for (i=0; i<OrdersTotal(); i++)
   {
      OrderSelect(i, SELECT_BY_POS );
      if (OrderSymbol() == Symbol()){    //  Alert("i",i,"   ","OrderOpenPrice()",OrderOpenPrice(),"  ","OrderTicket()",OrderTicket());                                                                                                     
      
      
                                           
     if (OrderMagicNumber() == 1000 && OrderType() == OP_BUY  && Bid-OrderOpenPrice() > 30*Point && Bid-OrderStopLoss() > 15*Point)  {
            OrderModify(OrderTicket(), OrderOpenPrice(), Bid-15*Point, OrderTakeProfit(), 0);                                                 Alert("OrderModify-BAY", GetLastError(),"OrderTicket()",OrderTicket(),"Bid-15*Point",Bid-15*Point);                                        }
      if (OrderMagicNumber() == 2000 && OrderType() == OP_SELL && OrderOpenPrice()-Ask > 30*Point && OrderStopLoss()-Ask > 15*Point)  {                                                                    
            OrderModify(OrderTicket(), OrderOpenPrice(), Ask+15*Point, OrderTakeProfit(), 0);  Alert("OrderModify-SELL", GetLastError(),"OrderTicket()",OrderTicket(),"Ask+15*Point",Ask+15*Point);                                       }
                                    }
  }
Le stop est passé d'un profit de 30 pips (moins le Spread, etc.) à une distance de 15 pips du prix.
OrderProfit( )
plus de zéro, et en général, selon vos besoins.
Raison: