Fermeture de postes. Signal lumineux de marche. - page 6

 
 

Je ne pense pas que ce soit dans le code. Et voici pourquoi. Le code est simple. Mais ce n'est pas la question. C'est à propos de ça :

if(OrderProfit() > tp)    { OrderClose(OrderTicket(),OrderLots(),Ask,3,Green);  }

Supposons que tp=49. A lot=0.1, la position sera fermée lorsque le profit =50 pips. Augmentons ensuite le lot de 0,1 à 0,2. Qu'obtiendrons-nous dans ce cas ?

Le lot a doublé et nous obtiendrons le bénéfice tp=50 deux fois plus vite. Il suffit que le prix passe dans notre direction, seulement 25 pips ! Le lot doublé nous donne un total de 50 ! Et bien sûr, le poste sera fermé ! Une chose similaire se produira dans une zone perdante avec la variable "-sl". Ainsi, l'EA fonctionnera de manière très différente, pas comme il était prévu à l'origine...

Maintenant, une autre question se pose. Comment faire correspondre la taille de la variable "tp" à l'évolution de la taille du terrain ? Les valeurs de OrderProfit() changent donc proportionnellement à la taille du lot ?

 
Oui, je n'avais pas remarqué la fonction OrderProfit(). Elle devrait être divisée par la taille du lot.
 
C'est fait. Merci. C'est du travail....
 

Le problème s'est à nouveau présenté. C'est au milieu de nulle part. De là où je ne l'attendais pas... J'ai été confronté à un besoin urgent (afin de participer au concours) d'utiliser une petite taille de lot dans mon Expert Advisor, = 0.01.

Mais la bibliothèque de B-lots calcul I.Kim's USED ne prévoit pas une telle taille, car elle contient la ligne suivante

si (dLot<0,1) dLot=0,1 ;

Sans y réfléchir à deux fois, j'ai modifié la ligne de la manière suivante : if (dLot<0.01) dLot=0.01 ; j'ai défini Lots=0.01 dans Propriétés.

Mais à ma grande surprise (sans raison apparente) le lot reste égal à =0.1 ! J'ai essayé les deux façons ! - Rien ne marche ! S'il vous plaît, qui sait comment prévoir le travail de la bibliothèque à partir du lot=0.01, conseillez.

//|                                                       b-Lots.mqh |
//|                                           Ким Игорь В. aka KimIV |
//|  21.12.2005  Библиотека функций расчёта размера лота.            |
 
//------- Внешние параметры модуля -----------------------------------
extern string _Parameters_b_Lots = "---------- Параметры модуля расчёта лота";
extern int LotsWayChoice  = 0;    // Способ выбора рабочего лота:
extern double Lots        = 0.01;  // Фиксированный размер лота
extern int LotsPercent    = 10;   // Процент от депозита
extern int LotsDeltaDepo  = 200;  // Коэффициент приращения депозита
extern int LotsDepoForOne = 500;  // Размер депозита для одного минилота
extern int LotsMax        = 1000; // Максимальное количество минилотов
//+------------------------------------------------------------------+
//| Главная функция получения размера лота (вызывается из советника) |
//+------------------------------------------------------------------+
double GetSizeLot(){
  double dLot;
  if (LotsWayChoice==0) dLot=Lots;
 
  // фиксированный процент от депозита
  if (LotsWayChoice==1)
  {    dLot=MathCeil(AccountFreeMargin()/10000*LotsPercent)/10;  }
 
  // фракционно-пропорциональный
  if (LotsWayChoice==2)  { 
    int k=LotsDepoForOne;
    for (double i=2; i<=LotsMax; i++)    {
      k=k+i*LotsDeltaDepo;
      if (k>AccountFreeMargin())
      {        dLot=(i-1)/10; break;      }
    }
  }
 
  // фракционно-фиксированный
  if (LotsWayChoice==3)
  {    dLot=MathCeil((AccountFreeMargin()-LotsDepoForOne)/LotsDeltaDepo)/10;  }
 
  if (dLot<0.01) dLot=0.01;
  
  return(dLot);
}
 
Tout d'abord, vérifiez la taille de lot minimale autorisée avec Marketinfo() sur le compte actuellement connecté.
MODE_MINLOT - si elle est supérieure à 0,01, le testeur ne fonctionnera pas avec des volumes de 0,01.
 

Merci. Le compte est autorisé à travailler avec un lot=0.01.

Je l'ai. Ça marche...

 

Bonjour à tous, de la part d'un "imbécile".

Je commence tout juste à apprendre MQL, j'analyse et modifie soigneusement la moyenne mobile bien connue. Quelqu'un peut me donner un conseil ?

Comment puis-je suggérer d'ouvrir une transaction non pas à l'ouverture d'une nouvelle barre mais au moment où МА touche le rebond (approche par le haut - achat, approche par le bas - vente) ?

Et est-il possible de faire la même chose à partir d'un autre objet, par exemple une ligne de tendance?

 
Je crois avoir vu un expert comme ça quelque part. Regardez ici - http://www.metatrader4.com/ru/forum/4736/
 

Bonjour à tous. Je voulais ouvrir un nouveau fil, mais j'ai décidé de poser la question ici, dans mon fil... J'aimerais connaître l'avis des personnes présentes sur une telle question. "J'ai construit (du mieux que j'ai pu) un conseiller expert. Il fonctionne dans le testeur d'une telle manière que c'est un spectacle à voir ! Je n'en croyais pas mes yeux ! Après plusieurs jours de travail avec un lot fixe = 0,1, le conseiller expert peut augmenter le dépôt plusieurs fois ! Je n'ai même pas inséré le bloc MM. Pourquoi ? J'ai pensé - "Trop bon n'est pas bon non plus..." !

L'Expert Advisor fonctionne sans indicateurs, selon une logique mathématique, et à la place du chalut il y a un ordre flottant en attente. Voici approximativement les résultats, y compris hors échantillon, affichés par le conseiller expert



28.01.2008 - 08.02.2008, lot=0.1 (fixe), tf=1min

Qualité de la modélisation 25.00%, Erreur de correspondance des cartes 0

Dépôt initial 1000.00

Bénéfice net 21904.31

Rentabilité 1,86 Gain attendu 4,03

Tirage absolu 4,64 Tirage maximal 656,18 (10,19%) Tirage relatif 10,19% (656,18)

Total des transactions 5433

Transactions rentables (% de toutes) 2278 (41,93%)

Plus grande transaction profitable 75.46 transaction perdante -11.93

Moyenne des transactions rentables 20.81 des transactions perdantes -8.09

En effet, je me suis frotté les mains et, après avoir à peine attendu le lundi, j'ai "chargé" le conseiller expert en ligne sur le compte de démonstration. C'est alors que j'ai découvert que mon conseiller expert perdait de l'argent en ligne.... ! Bien sûr, il y a des périodes de travail stable et rentable, mais dans l'ensemble, c'est un lent drainage...

J'ai commencé à m'y intéresser. Il a été constaté que le testeur module les ticks lissés à l'intérieur de barres d'une minute, c'est-à-dire beaucoup moins "piquants" que les ticks entrants dans le mode en ligne. Puisque le conseiller expert est clairement un conseiller de type pipse, cela fait apparemment une différence. D'autant plus que mon take profit est plusieurs fois supérieur à mon stop loss !

Mais je pense que le montant du bénéfice du testeur dans cette situation devrait se traduire par la qualité du travail en ligne. J'en suis sûr ! Les bénéfices du conseiller expert dans le testeur sont trop fringants. Que faut-il faire pour que le conseiller expert soit rentable dans le trading en ligne ? N'hésitez pas à partager vos idées. Des idées ? Tout ce qui est intelligent et tout ce qui est incroyable...

Raison: