Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1402

 
darirunu1:

Vous êtes malvoyant ?

C'est quoi ce texte sur les chevaux ?

 
Сергей Таболин:

Vous êtes malvoyant ?

C'est quoi ce texte sur les chevaux ?

Un accident.

 
Alexey Viktorov:

Et si une personne écrit pour elle-même ?

Ce n'est pas comme s'il pouvait mesurer la distance depuis un point invisible de toute façon, l'intersection sera ailleurs.

 
Taras Slobodyanik:

Il ne mesurera pas la distance à partir d'un point invisible de toute façon, l'intersection sera à un endroit différent.

Je disais que si une personne écrit pour elle-même, elle comprend ce qu'elle fait et ce qui va se passer.

C'est le forum pour le trading, les systèmes de trading automatisés et les tests de stratégies.

Toutes les questions des débutants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes.

Taras Slobodyanik, 2021.02.28 09:37

Si vous ne savez pas comment vérifier l'exactitude des transactions, elles resteront en suspens et l'utilisateur dira : " MT4 a des problèmes".)


Et c'est justement pour mesurer à partir d'un point invisible qu'il faut mettre cette valeur dans une variable.
 
Alexey Viktorov:

Je disais que si l'on écrit pour soi-même, on comprend ce que l'on fait et on comprend ce qui va se passer et ce qui ne va pas se dire...


Et pour mesurer à partir d'un point invisible, vous devez mettre cette valeur dans une variable.

c'est ainsi que naissent les Grails)

alors pas dans une variable, mais dans un tampon, parce qu'il y aura beaucoup de ces points.

 
Regardez le résultat. Indicateur de base, je n'ai pas touché au code natif, j'ai juste joué avec les paramètres. J'ai changé la barre zéro à la première barre du graphique des prix dans le code de l'indicateur.
 
Alexey Viktorov:

Au moment du franchissement, la valeur du MA n'était pas la même qu'après la fermeture du bar. Par conséquent, cette valeur ne peut être trouvée qu'au moment du croisement.

//+------------------------------------------------------------------+
//|                                                         Test.mq4 |
//|                        Copyright 2019, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2019, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
//---

double     FixPrice;        // переменная
bool       Fix = false;      // маркер
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(Fix == false)
     {
      if(Close[0] > MA_lo)
         FixPrice = Close[0];
     }                                                                              // делаем замер пока цена не пересечет МА
   if(Close[0] < MA_lo)
      Fix = true;
   if(Fix == true)
      FixPrice_L = FixPrice ;
//+------------------------------------------------------------------+
  }
//+------------------------------------------------------------------+

C'est la façon dont vous voulez que la valeur soit mémorisée.

Mais gardez à l'esprit que

Close[0]=Open[0] 
и Close[0]=High [0] и Close[0]=Low[0]


à l'ouverture d'une bougie.

Par conséquent, si vous avez besoin de données instantanées, en temps réel, il vaut mieux utiliser

double Bidd=NormalizeDouble(Bid,Digits); если цена сверху или
double Askk=NormalizeDouble(Askk,Digits); если цена снизу МА

double MA_lo=NormalizeDouble(MA_lo,Digits);

Il est préférable de normaliser tous les prix à comparer dans l'état, afin que vous ne soyez pas surpris :)

Открой новые возможности в MetaTrader 5 с сообществом и сервисами MQL5
Открой новые возможности в MetaTrader 5 с сообществом и сервисами MQL5
  • 2021.02.28
  • www.mql5.com
MQL5: язык торговых стратегий для MetaTrader 5, позволяет писать собственные торговые роботы, технические индикаторы, скрипты и библиотеки функций
 
Александр:

C'est la façon dont vous voulez que l'on se souvienne de cette valeur.

Mais gardez à l'esprit que

à l'ouverture d'une bougie.

Donc si vous voulez de l'instantané, du temps réel, il vaut mieux utiliser

Il est préférable de normaliser tous les prix à comparer dans l'état, afin que vous ne soyez pas surpris :)

Grands dieux ! Est-ce que je voulais quelque chose ? J'ai demandé quelque chose ? Qui pensez-vous que je suis ?
 

Bonjour à tous !
Lorsque j'écris du code pour tester un EA, j'ai besoin de rechercher le bas en temps réel à l'intérieur de chaque bougie minute. Pour ce faire, j'ai choisi une variable prédéfinie Low[0] avec l'index 0. L'index est zéro pour rechercher le bas de chaque bougie actuelle.

Voici mon code
void OnTick()

{

Print("------------", Low[0] ) ;

}

Sur le premier chandelier (jaune), la variable indique le minimum comme je le souhaite.

Sur toutes les bougies suivantes jusqu'au 2010.01.04 00:30:00, la variable affiche -1.6119, c'est-à-dire qu'elle répète le minimum de la première bougie, plutôt que de rechercher des minima sur chaque bougie minute.
Sur le chandelier 2010.01.04 00:30:00 il montre à nouveau tous les minima

Sur la bougie suivante, il affiche -1.6128 , c'est-à-dire qu'il répète le minimum de la première bougie au lieu de chercher des bas à l'intérieur de chaque bougie d'une minute.

Au lieu de la variable Low[0] j'ai utilisé la même fonction iLow(NULL , 0,0) , mais l'effet est le même.
QUESTION
Comment utiliser la fonction ou la variable mentionnée pour rechercher un minimum dans chaque bougie minute, ou quelle autre fonction est-il possible d'utiliser dans MQL4 ?

Merci à tous pour votre aide.

Документация по MQL5: Предопределенные переменные
Документация по MQL5: Предопределенные переменные
  • www.mql5.com
Предопределенные переменные - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
iLow(NULL,1,0)