Fonctions utiles de KimIV - page 54

 

La fonction TakeProfitLastPos().

Cette fonction renvoie le niveau de prix TakeProfit de la dernière position ouverte ou -1. La fonction TakeProfitLastPos() accepte les paramètres facultatifs suivants :

  • sy - Nom de l'instrument. "" - tout symbole, NULL - symbole courant. La valeur par défaut est "".
  • op - Opération commerciale. Valeurs valables : -1, OP_BUY, OP_SELL. La valeur par défaut est -1 - tout commerce.
  • mn - Identifiant du commerce, MagicNumber. Valeur par défaut -1 - n'importe quel magik.
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 06.08.2008                                                     |
//|  Описание : Возвращает цену TakeProfit последней открытой позиций или -1.  |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любая позиция)                  |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//+----------------------------------------------------------------------------+
double TakeProfitLastPos(string sy="", int op=-1, int mn=-1) {
  datetime t;
  double   r=-1;
  int      i, k=OrdersTotal();

  if ( sy=="0") sy=Symbol();
  for ( i=0; i< k; i++) {
    if (OrderSelect( i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()== sy || sy=="") {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if ( op<0 || OrderType()== op) {
            if ( mn<0 || OrderMagicNumber()== mn) {
              if ( t<OrderOpenTime()) {
                t=OrderOpenTime();
                r=OrderTakeProfit();
              }
            }
          }
        }
      }
    }
  }
  return( r);
}
Cette fonction peut être utilisée, par exemple, pour déterminer le niveau de prix du TakeProfit de la dernière position ouverte pour le placement ultérieur d'un ordre en attente à ce niveau.
 
pourquoi ne pas ouvrir le "bon" lot au bon moment ?
 
Pouvez-vous me dire s'il existe un moyen de modifier la taille du lot d'un ordre en attente dans MQL4 ?
 
sdgg >> :
Savez-vous s'il est possible de modifier la taille du lot d'un ordre en attente dans MQL4 ?

Non. Vous supprimez l'ancienne commande et en créez une nouvelle avec le volume requis.

 
sdgg писал (а) >>
Pouvez-vous me dire s'il existe un moyen de modifier le lot d'un ordre en attente dans MQL4 ?

Les développeurs ne l'ont pas fait délibérément - pour éviter les problèmes !

 

Veuillez m'indiquer comment créer des objets graphiques dans un EA qui négocie sur deux paires de devises, qui marquent sur chaque graphique les positions d'ouverture et de fermeture pour chaque paire de devises. Un EA qui est chargé sur un seul graphique créera automatiquement ces marques uniquement sur ce graphique. Peut-être existe-t-il une telle fonction conçue pour être utilisée dans les EA multi-devises ?

 
RGT >> :

Veuillez m'indiquer comment créer des objets graphiques dans un EA qui négocie sur deux paires de devises, qui marquent sur chaque graphique les positions d'ouverture et de fermeture pour chaque paire de devises. Un EA qui est chargé sur un seul graphique créera automatiquement ces marques uniquement sur ce graphique. Peut-être existe-t-il une telle fonction conçue pour être utilisée dans les EA multi-devises ?

Cette fonction n'existe pas. Les objets ne peuvent être créés et gérés que sur le graphique auquel l'EA est attaché.

 

Fonction TakeProfitLastClosePos().

Renvoie le niveau de prix TakeProfit de la dernière position fermée ou -1. La fonction TakeProfitLastClosePos() accepte les paramètres facultatifs suivants :

  • sy - Nom de l'instrument. "" - tout symbole, NULL - symbole actuel. La valeur par défaut est "".
  • op - Opération commerciale. Valeurs valables : -1, OP_BUY, OP_SELL. La valeur par défaut est -1 - tout commerce.
  • mn - Identifiant du commerce, MagicNumber. Valeur par défaut -1 - n'importe quel magik.
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 20.10.2008                                                     |
//|  Описание : Возвращает цену TakeProfit последней закрытой позиций или -1.  |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любая позиция)                  |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//+----------------------------------------------------------------------------+
double TakeProfitLastClosePos(string sy="", int op=-1, int mn=-1) {
  datetime t;
  double   r=-1;
  int      i, k=OrdersHistoryTotal();

  if ( sy=="0") sy=Symbol();
  for ( i=0; i< k; i++) {
    if (OrderSelect( i, SELECT_BY_POS, MODE_HISTORY)) {
      if (OrderSymbol()== sy || sy=="") {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if ( op<0 || OrderType()== op) {
            if ( mn<0 || OrderMagicNumber()== mn) {
              if ( t<OrderCloseTime()) {
                t=OrderCloseTime();
                r=OrderTakeProfit();
              }
            }
          }
        }
      }
    }
  }
  return( r);
}
 
KimIV >> :

Fonction TakeProfitLastClosePos().

Renvoie le niveau de prix TakeProfit de la dernière position fermée ou -1. La fonction TakeProfitLastClosePos() accepte les paramètres facultatifs suivants :

  • sy - Nom de l'instrument. "" - tout symbole, NULL - symbole actuel. La valeur par défaut est "".
  • op - Opération commerciale. Valeurs valables : -1, OP_BUY, OP_SELL. La valeur par défaut est -1 - tout commerce.
  • mn - Identifiant du commerce, MagicNumber. Valeur par défaut -1 - tout nombre magique.

Existe-t-il une fonction qui modifie le take profit après un certain temps écoulé depuis l'ouverture de la position ?

 
drm1 писал(а) >>

Existe-t-il une fonction qui modifie le take profit après un certain temps après l'ouverture de la position ?

Modifier la commande()

Voici quelques exemples d'utilisation...

Raison: