En savoir plus sur les autres "Stratégies de trading". - page 3

 
luenbo:

Ce type de stratégie s'appelle martingale, il vaut mieux l'utiliser avec unstop loss, sinon votre compte sera cassé tôt ou tard.

Et elle convient généralement à un marché fluctuant. Si vous pouvez combiner cettestratégie avec lastratégie de suivi de tendance, elle vous donnera de meilleures performances.

Mais il est toujours difficile d'estimer si le marché est plat ou tendu~.

Pouvez-vous joindre un EA qui montre que c'est le cas ?
 
Ubzen:

Description : Le UbzenA_20130725 est un système qui place des trades aléatoires. Il ajoute des trades négatifs lorsque le nombre de -pips dépasse les pips des bandes de bollinger_bands. Je le considérerais comme un scalper. Il comprend un stoploss utilisant la devise de dépôt réelle en $. Le take profit est également en devise réelle en $. Le volume_size utilise un time_passage pour augmenter le volume (si le système est toujours négatif). J'aime ce volume_sizing parce que vous pouvez composer vers le haut ou vers le bas l'agression en fonction de votre appétit.

  • -Avantages : Capacité à survivre à plusieurs années de tests et de conditions de marché.
  • -Contre : Pas de gain rapide. Nécessite un capital d'investissement relativement important.

Ce système n'a pas été optimisé. Toute suggestion d'amélioration, positive ou négative (mais ne soyez pas grossier).

  • Votre système est intéressant, je vais l'examiner de plus près. Évidemment, 30% de profit en 5 ans, ce n'est pas beaucoup, mais c'est votre seul moyen de contrôler votre drawdown.
  • Pourquoi le considérez-vous comme un scalper ? Ce n'est pas un scalper à mon avis.
  • Pourquoi mettez-vous SL=0.00001 et TP=999999999.00000 sur tous vos ordres ?
 
angevoyageur:
  • Votre système est intéressant, je vais l'examiner de plus près. Évidemment, 30% de profit en 5 ans, ce n'est pas beaucoup, mais c'est votre seul moyen de contrôler votre drawdown.
  • Pourquoi le considérez-vous comme un scalper ? Ce n'est pas un scalper à mon avis.
  • Pourquoi mettez-vous SL=0.00001 et TP=999999999.00000 sur tous vos ordres ?

1) J'ai tendance à me concentrer sur les draw-downs. Les gens ont tendance à se référer à moi comme un grinder. Je préfère les courbes lentes et constantes aux courbes erratiques. Si le draw-down est de 1500 $ sur des lots de base de 0,01. Il est plus facile pour moi d'imaginer ce qui se passerait sur des lots de base de 0,02.

2) La SysTkePftVal de 5 a été Pips avec certaines versions. Je suppose que dans ce cas, c'est 5 $, ce qui ne ressemble pas beaucoup à un scalper. Cependant, au fur et à mesure que les lots progressent, il agira comme un scalper pour les plus grandes tailles.

3) Manque de connaissances en programmation (je suppose). Quand j'ai commencé mql5, il me donnait des erreurs en essayant d'envoyer des ordres avec des sl et tp de zéro. C'était ma façon de contourner le problème.

 
Ubzen:

1) J'ai tendance à me concentrer sur les draw-downs. Les gens ont tendance à me qualifier de "grinder". Je préfère les courbes lentes et constantes aux courbes erratiques. Si le draw-down est de 1500 $ sur des lots de base de 0,01. Il est plus facile pour moi d'imaginer ce qui se passerait sur des lots de base de 0,02.

2) La SysTkePftVal de 5 a été Pips avec certaines versions. Je suppose que dans ce cas, c'est 5 $, ce qui ne ressemble pas beaucoup à un scalper. Cependant, au fur et à mesure que les lots progressent, il agira comme un scalper pour les plus grandes tailles.

3) Manque de connaissances en programmation (je suppose). Quand j'ai commencé mql5, il me donnait des erreurs en essayant d'envoyer des ordres avec des sl et tp de zéro. C'était ma façon de le contourner.

Je sais que le style de codage est une préférence personnelle, mais lorsque vous publiez le code publiquement, je suppose que d'autres peuvent le lire, alors je me permets quelques suggestions/remarques :

  • Faire des commentaires
  • Principalement si vous utilisez des noms de fonctions cryptiques (pour d'autres) (ClsSymSetPos, YesLstTrdWin, YesLstTrdWin...)
  • Utilisez le styler (CTRL+,) pour arranger votre code.
  • Les espaces entre les lignes de code sont autorisés.

Qu'est-ce qui est le plus lisible ?

void SetTradePrices(ENUM_ORDER_TYPE Type,MqlTradeRequest& Trade){
    if(Type!=ORDER_TYPE_BUY && Type!=ORDER_TYPE_SELL){return;} double Price=0;
    if(Type==ORDER_TYPE_BUY){Price=SymbolInfoDouble(CurSetSymbol,SYMBOL_ASK);}
    if(Type==ORDER_TYPE_SELL){Price=SymbolInfoDouble(CurSetSymbol,SYMBOL_BID);}
    Trade.price=Price;//////////////////////////////////////////
    double  SymPoint=SymbolInfoDouble(CurSetSymbol,SYMBOL_POINT);
    if(Type==ORDER_TYPE_BUY){Trade.sl=SymPoint;  Trade.tp=999999999;}
    if(Type==ORDER_TYPE_SELL){Trade.tp=SymPoint; Trade.sl=999999999;}
}

ou

void SetTradePrices(ENUM_ORDER_TYPE Type,MqlTradeRequest &Trade)
  {
   if(Type!=ORDER_TYPE_BUY && Type!=ORDER_TYPE_SELL)
      return;

   double Price=0;

   if(Type==ORDER_TYPE_BUY)
      Price=SymbolInfoDouble(CurSetSymbol,SYMBOL_ASK);

   if(Type==ORDER_TYPE_SELL)
      Price=SymbolInfoDouble(CurSetSymbol,SYMBOL_BID);

   Trade.price=Price;

   double  SymPoint=SymbolInfoDouble(CurSetSymbol,SYMBOL_POINT);

   if(Type==ORDER_TYPE_BUY)
     {
      Trade.sl=SymPoint;  Trade.tp=999999999;
     }
   if(Type==ORDER_TYPE_SELL)
     {
      Trade.tp=SymPoint; Trade.sl=999999999;
     }
  }
 

Comme vous ne traitez que les ordres d' achat et de vente dans la fonction précédente, vous pouvez utiliser cette syntaxe dans mql5 :

void SetTradePrices(ENUM_ORDER_TYPE Type,MqlTradeRequest &Trade)
  {
   if(Type!=ORDER_TYPE_BUY && Type!=ORDER_TYPE_SELL)
      return;

   double SymPoint=SymbolInfoDouble(CurSetSymbol,SYMBOL_POINT);

   Trade.price    =SymbolInfoDouble(CurSetSymbol,Type==ORDER_TYPE_SELL ? SYMBOL_BID : SYMBOL_ASK);
   Trade.sl       =Type==ORDER_TYPE_BUY  ? SymPoint : 999999999;
   Trade.tp       =Type==ORDER_TYPE_BUY  ? 999999999 : SymPoint;
  }
 
angevoyageur:

Je sais que le style de codage est une préférence personnelle, mais lorsque vous publiez du code publiquement, je suppose que c'est pour que d'autres le lisent, donc je me permets quelques suggestions/remarques :

  • Faites des commentaires
  • Principalement si vous utilisez des noms de fonctions cryptiques (pour d'autres) (ClsSymSetPos, YesLstTrdWin, YesLstTrdWin...)
  • Utilisez le styler (CTRL+,) pour arranger votre code.
  • Les espaces entre les lignes de code sont autorisés.

Qu'est-ce qui est le plus lisible ?

ou

Merci pour les suggestions. Je préfère expliquer pour ceux qui cherchent à comprendre le code. De toute évidence, mon style est plus facile à comprendre pour moi. Dans votre message ci-dessus, vous avez utilisé deux types différents de styles de parenthèses. Je me demande simplement pourquoi ?

   if(Type==ORDER_TYPE_BUY)
     {
      Trade.sl=SymPoint;  Trade.tp=999999999;
     }

vs

   if(Type==ORDER_TYPE_BUY)
      Price=SymbolInfoDouble(CurSetSymbol,SYMBOL_ASK);

C'est le genre de questions auxquelles je vais devoir répondre. Certaines personnes aiment les crochets... d'autres les détestent. Certaines personnes aiment les commentaires ligne par ligne... Pour ma part, je déteste ça. Je préfère de loin voir une description dans l'en-tête de chaque fonction. Dans mon esprit, cela crée beaucoup plus de travail pour quelque chose que la plupart des gens ne modifieraient pas. Encore une fois, pour ceux qui sont intéressés, je suis plus que disposé à expliquer.

 
angevoyageur: Comme vous ne traitez que les ordres d' achat et de vente dans la fonction précédente, vous pouvez utiliser cette syntaxe dans mql5 :
Cool thx.
 
Ubzen:

Merci pour les suggestions. Je préfère expliquer pour ceux qui cherchent à comprendre le code. De toute évidence, mon style est plus facile à comprendre pour moi. Dans votre message ci-dessus, vous avez utilisé deux types différents de styles de parenthèses. Je me demande simplement pourquoi ?

vs

C'est le genre de questions auxquelles je vais devoir répondre. Certaines personnes aiment les crochets... d'autres les détestent. Certaines personnes aiment les commentaires ligne par ligne... Pour ma part, je déteste ça. Je préfère de loin voir une description dans l'en-tête de chaque fonction. Dans mon esprit, cela crée beaucoup plus de travail pour quelque chose que la plupart des gens ne modifieraient pas. Encore une fois, pour ceux qui sont intéressés, je suis plus que disposé à expliquer.

Pour la première, les parenthèses sont obligatoires car 2 instructions doivent être exécutées lorsque la condition est vraie. Pour la seconde, elles ne sont pas obligatoires (1 instruction), mais il n'y a aucun problème pour ajouter des parenthèses également bien sûr.
 
angevoyageur: Pour la première, les parenthèses sont obligatoires car 2 instructions doivent être exécutées lorsque la condition est vraie. Pour le second, ils ne sont pas obligatoires (1 instruction), mais il n'y a aucun problème pour ajouter des parenthèses aussi bien sûr.

Oui, c'est vrai. Je commence toujours par if(){;} et je n'ai pas à m'en soucier :P ... merci encore.

ps> les white_spaces dans ton code me rendent dingue.

 

la moyenne dans est toujours ok, lorsque vous avez une taille de lot énorme et que vous voulez sortir, il pourrait ne pas y avoir de volume pour vous de sortir au prix que vous voulez.

Quand les nouvelles seront publiées, je me demande si ce système peut survivre comme aud ces jours-ci.

Documentation on MQL5: Standard Constants, Enumerations and Structures / Chart Constants / Chart Representation
Documentation on MQL5: Standard Constants, Enumerations and Structures / Chart Constants / Chart Representation
  • www.mql5.com
Standard Constants, Enumerations and Structures / Chart Constants / Chart Representation - Documentation on MQL5
Raison: