Conseiller Ivan - le meilleur d'ilan - page 7

 

Et immédiatement un test :

Ivan 1.004 USDJPY, M15, période 2016.01.01 à 2017.02.13

Ivan 1.004 USDJPY, M15, période 2016.01.01 à 2017.02.13

 
Vladimir Karputov:

Je vais le faire comme ça pour l'instant :Ivan version "1.003":

  • Logique pour définir le niveau de Stop Loss :
    • il y a une indentation minimale - 50 points d'ancien mode.
    • Le Stopp Loss prend la valeur de iMA(36) MODE_SMMA sur la barre zéro (la période de moyennage est écrite dans les paramètres d'entrée).
    • si le niveau de Stop Loss est plus proche du prix actuel que la pente minimale, l'ouverture de la position n'aura pas lieu.
  • Le Stop Loss virtuel a été remplacé par des positions de trailing.

Le travail est en ébullition - bien !

Cependant, je ne peux pas encore voir le travail - je n'ai pas de compte forex - seulement de la bourse, et l'EA ne fonctionne pas là.

 
-Aleks-:

Le travail est en ébullition - bien !

Cependant, je ne peux pas encore voir le travail - je n'ai pas de compte forex - seulement de la bourse, et le conseiller ne fonctionne pas là.

Et j'ai le contraire : aucune connexion à l'échange pour le moment. Et ce sera comme dans cette chanson :

Tu es un marin, je suis un marin.

Tu es une pêcheuse, je suis un pêcheur.

Vous êtes sur terre, je suis en mer.

Nous ne nous rencontrerons jamais.

Ajouté :

La négociation sur le marché boursier est compensée et mon conseiller ne sert qu'à la couverture (comme l'indique l'impression d'erreur lors de la tentative de connexion à un compte boursier) :

2017.02.26 14:04:05.291 2016.04.22 00:00:00   Hedging only!

). L'échange se fait donc avec un sifflet de contreplaqué sur Paris.

 
Vladimir Karputov:

J'ai le contraire : il n'y a pas de connexion dans l'échange maintenant. Et ce sera comme dans cette chanson :

Tu es un marin, je suis un marin.

Tu es un pêcheur Je suis un pêcheur

Tu es sur terre, je suis en mer.

Nous ne nous rencontrerons jamais.

Ajouté :

La négociation sur le marché boursier est compensée et mon conseiller ne sert qu'à la couverture (comme l'indique l'impression d'erreur lors de la tentative de connexion à un compte boursier) :

2017.02.26 14:04:05.291 2016.04.22 00:00:00   Hedging only!

). L'échange se déroule donc avec un sifflement de contreplaqué sur Paris.

Oui, je comprends, j'ai juste Forex sous 4 - peut-être que plus tard j'ouvrirai sur la démo - je laisserai des idées si c'est intéressant.

 
Apprenez-moi quelqu'un avec un pro comment utiliser le testeur mt5, je ne peux pas prendre beaucoup de temps en mode vocal.
 
Vitaly Muzichenko:
Apprenez-moi quelqu'un avec un pro comment utiliser le testeur mt5, je ne peux pas prendre beaucoup de temps en mode vocal.
Appelez...
 
Vladimir Karputov:

Non, je ne pense pas que ce soit une bonne approche : il y a beaucoup de gens, chacun aime différentes paires et différents délais. Je préfère le prescrire directement dans les paramètres d'entrée :


Ivan version "1.004":

  • variables saisies
    • "Distance minimale entre le prix et le stop loss (en pips)" - la distance minimale entre le prix et le niveau du stop loss - si cette distance est inférieure, aucune position ne sera ouverte.
    • "Trailing Step(en pips) - le pas pour le trailing
  • protection à l'ouverture de la position:
    • pour BUY - si l'une des positions BUY déjà ouvertes a un prix d'ouverture inférieur au prix actuel, la position BUY ne sera pas ouverte.
    • pour la position VENTE - si l'une des positions VENTE a un prix d'ouverture supérieur au prix actuel - alors la position VENTE ne sera pas ouverte.
Oui, c'est beaucoup mieux. J'ai optimisé avec vos recommandations, j'ai obtenu jusqu'à 50% pour une optimisation de 2 semaines, mais quand j'ai fait le test pendant un mois, j'ai perdu le même montant ;))
 
-Aleks-:

Le travail est en ébullition - bien !

Cependant, je ne peux pas encore regarder le travail - je n'ai pas de compte Forex - seulement de la bourse, et le conseiller ne fonctionne pas là.

C'est juste horrible. Pour ouvrir une démo sur le serveur MetaQuotes-Demo, il faut compter une minute et demie ;))
 

Ivan version "1.005":

  • Correction de la fonction "FindPosition" pour trouver la position minimale/maximale d'un certain type (recherche de prix) :
  •                if(mode==MODE_LOW)
                     {
                      if(m_position.PriceOpen()<price)
                         price=m_position.PriceOpen();
                     }
                  }
       if(price==DBL_MIN || price==DBL_MAX)
          price=0;

       return(price);
      }
    maintenant si aucune position d'un type donné n'a été spécifiée, un prix de "0" sera retourné - auparavant il était possible de retourner une valeur DBL_MIN ou DBL_MAX.
  • Correction de la fonction d'ouverture d'une position d'achat. Une variante défavorable était possible auparavant - lorsque plusieurs positions d'achat consécutives étaient ouvertes et que chacune d'entre elles était ouverte à un prix plus mauvais que la précédente - en cas d'atteinte du renversement de tendance, cela provoquait des pertes appréciables :
    mauvais achats

    Ceci a maintenant été corrigé (oui, oui, oui - l'erreur était dans le signe de condition - précédemment c'était un signe "<" :
  •       return;
         }
    //--- the position of BUY can't be open below the lowest
       double price_open_low=FindPosition(POSITION_TYPE_BUY,MODE_LOW);
       if(price_open_low!=0)
          if(price_open_low> m_symbol.Ask())
             return;

       sl=m_symbol.NormalizePrice(sl);
       double tp=0.0;
  • Ajouté :

    Ivan 1.005

Dossiers :
Ivan.mq5  45 kb
 

Ivan version "1.006":

  • La protection des bénéfices a été introduite :
    • nouveau paramètre d'entrée"InpCoefProtectionProfit" - calculé comme m_compte.Equity()/m_compte.Balance() (Fonds divisés par Balance).
    • Lorsque les capitaux propres dépassent le solde par un facteur de "InpCoefProtectionProfit", nous fermons toutes les positions - protégeant ainsi le profit :
      //--- we work only at the time of the birth of new bar
         static datetime dtPrevBars=0;
      //--- protection of profit
         if(m_account.Equity()/m_account.Balance()>InpCoefProtectionProfit)
            bCloseAll=true;

      //--- trailing stop (at every tick)
         if(!RefreshRates())
            return;
         TrailingStop();
Dossiers :
Ivan.mq5  46 kb