Características úteis da KimIV - página 54

 

A função TakeProfitLastPos().

Esta função retorna o nível de preço TakeProfit da última posição aberta ou -1. A função TakeProfitLastPos() aceita os seguintes parâmetros opcionais:

  • sy - Nome do instrumento. "" - qualquer símbolo, NULL - símbolo atual. O valor padrão é "".
  • op - Operação comercial. Valores válidos: -1, OP_BUY, OP_SELL. O valor padrão é -1 - qualquer comércio.
  • mn - Identificador comercial, MagicNumber. Valor por default -1 - qualquer 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);
}
Esta função pode ser usada, por exemplo, para determinar o nível de preço do TakeProfit da última posição aberta para a colocação subseqüente de uma ordem pendente a este nível.
 
que tal abrir o lote "certo" na hora certa?
 
Você pode me dizer se há alguma maneira de mudar o tamanho do lote de um pedido pendente na MQL4?
 
sdgg >> :
Você sabe se há alguma maneira de alterar o tamanho do lote de um pedido pendente na MQL4?

Não. Você apaga o pedido antigo e cria um novo com o volume necessário.

 
sdgg писал (а) >>
Você pode me dizer se há alguma maneira de mudar o lote de um pedido pendente na MQL4?

Os desenvolvedores não o fizeram deliberadamente - para evitar problemas!

 

Favor aconselhar como criar objetos gráficos em um EA que negocia em dois pares de moedas, que marcam em cada gráfico as posições de abertura e fechamento para cada par de moedas. Uma EA que é carregada em um único gráfico criará automaticamente estas marcas somente nesse gráfico. Talvez exista tal função projetada para ser usada em EAs com várias moedas ?

 
RGT >> :

Favor aconselhar como criar objetos gráficos em um EA que negocia em dois pares de moedas, que marcam em cada gráfico as posições de abertura e fechamento para cada par de moedas. Uma EA que é carregada em um único gráfico criará automaticamente estas marcas somente nesse gráfico. Talvez exista tal função projetada para ser usada em EAs com várias moedas ?

Não existe tal função. Os objetos só podem ser criados e gerenciados no gráfico ao qual a EA está anexada.

 

Função TakeProfitLastClosePos().

Retorna o nível de preço TakeProfit da última posição fechada ou -1. A função TakeProfitLastClosePos() aceita os seguintes parâmetros opcionais:

  • sy - Nome do instrumento. "" - qualquer símbolo, NULL - símbolo atual. O valor padrão é "".
  • op - Operação comercial. Valores válidos: -1, OP_BUY, OP_SELL. O valor padrão é -1 - qualquer comércio.
  • mn - Identificador comercial, MagicNumber. Valor por default -1 - qualquer 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 >> :

Função TakeProfitLastClosePos().

Retorna o nível de preço TakeProfit da última posição fechada ou -1. A função TakeProfitLastClosePos() aceita os seguintes parâmetros opcionais:

  • sy - Nome do instrumento. "" - qualquer símbolo, NULL - símbolo atual. O valor padrão é "".
  • op - Operação comercial. Valores válidos: -1, OP_BUY, OP_SELL. O valor padrão é -1 - qualquer comércio.
  • mn - Identificador comercial, MagicNumber. Valor por default -1 - qualquer número mágico.

Existe alguma função que mude o lucro depois de algum tempo desde que a posição foi aberta?

 
drm1 писал(а) >>

há uma função que muda o lucro após algum tempo depois que a posição foi aberta?

ModifyOrder()

A seguir, alguns exemplos de como utilizá-lo...