Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 502

 

if(!ExistPosições(Símbolo(),-1,4444444))OpenPosition(Símbolo(),OP_BUY,0.1,Ask-sl*Point,Ask+tp*Point,4444444)

poprobuj

 
Zver4991:


portanto, deve verificar se não há nenhuma posição aberta com este assistente, não importa a que hora de abrir..... um simples limite para o wizard....toast

if(ExistPosições(NULL,-1,44444,-1)==falso)// se não houver posições em aberto com este número mágico, então verifique......

.... ou talvez eu não entenda.... Tenho -1 porque não me importo quando uma posição aberta ..... de qualquer forma abrirá apenas em um novo bar e quando o antigo estiver fechado porque as condições especificam que a posição só pode abrir se não houver posições abertas com este número mágico

para torná-lo ainda mais simples: abrir posição e esperar até o fechamento.... quando fecha, abre novamente e certamente não deve abrir em todos os bares uma posição com este mágico.... - mais uma vez a condição diz para verificar se não há posições abertas com este mágico


Portanto, coloque 0 no último parâmetro, para que não importe quando a posição for aberta.
 
r772ra:

Portanto, coloque 0, no último parâmetro, para que não importe quando a posição for aberta.

Eu fiz isso e não ajudou, ainda gera uma posição em todos os bares
 
gince:

if(!ExistPosições(Símbolo(),-1,4444444))OpenPosition(Símbolo(),OP_BUY,0.1,Ask-sl*Point,Ask+tp*Point,4444444)

poprobuj


também não funciona, ainda estampando um comércio em cada bar
 
Zver4991:

não ajuda a estampar ainda em todas as barras

encontrei o erro..... é tudo sobre o símbolo que eu estava definindo que eu não me importo que símbolo procurar desde que não seja com este mágico, mas quando eu defino que o atual é ok para começar.... embora estranho porque se não está no símbolo atual e está em outro, então não teríamos que abrir o negócio até que ele feche no outro símbolo com este mágico
 
Como posso introduzir um parâmetro como o ângulo de uma média móvel com certos parâmetros em uma EA?
 
Como evitar que um limite seja estabelecido se ele já está lá?
 
Profitov:
Como posso introduzir um parâmetro como o ângulo de uma média móvel com certos parâmetros em uma EA?

Depende do que picar ))))
 
woin2110:
Como posso evitar que o limite seja estabelecido se já está estabelecido?

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 12.03.2008                                                     |
//|  Описание : Возвращает флаг существования ордеров.                         |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любой ордер)                    |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//|    ot - время открытия             ( 0   - любое время установки)          |
//+----------------------------------------------------------------------------+
bool ExistOrders(string sy="", int op=-1, int mn=-1, datetime ot=0) {
  int i, k=OrdersTotal(), ty;
 
  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      ty=OrderType();
      if (ty>1 && ty<6) {
        if ((OrderSymbol()==sy || sy=="") && (op<0 || ty==op)) {
          if (mn<0 || OrderMagicNumber()==mn) {
            if (ot<=OrderOpenTime()) return(True);
          }
        }
      }
    }
  }
  return(False);
}
 
Muito obrigado.