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

 
artmedia70:

Você já tentou fazer disso uma função separada para pesquisar a presença/ausência de itens?

Por exemplo:

Magia - número mágico da EA (definido em configurações, ou gerado pela EA automaticamente). Então, para verificar a ausência da posição Comprar por símbolo atual deve ser escrito:

Nota - não apenas um comando para abrir uma ordem de compra, mas uma função completa com o tratamento de todos os parâmetros de abertura de ordem e erros devolvidos pelo servidor.

Entretanto, o testador pode fazer sem verificar os parâmetros inseridos para valores válidos.



Você poderia mostrar esta função na íntegra como código de trabalho pronto para uso com função de início e todas as descrições? E melhor ainda, a magia é gerada pela EA automaticamente, ou seja, como eu entendo, este é o caso no fundo do poço.

bool ExistPositions(string sy="", int op=-1, int mn=-1) {
   if (sy=="") sy=Symbol();
   for (int i=0; i<OrdersTotal(); i++) {
      if (OrderSelect(i, SELECT_BY_POS)) {
         if (OrderMagicNumber()!=mn)   continue;
         if (OrderSymbol()!=sy)        continue;
         if (OrderType()>1)            continue;
         if (op<0 || OrderType()==op)  
            return(True);
         }
      }
   return(False);
}

if (!ExistPositions(Symbol(), OP_BUY, Magic)) {
   // ... Тут код для вызова функции открытия позиций ... 
   }
 
kolyango:


Você poderia mostrar esta função na íntegra como código de trabalho pronto para uso com função de início e todas as descrições? E melhor ainda, a magia é gerada pela EA automaticamente, ou seja, como eu entendo, este é o caso no fundo do poço.


A magia não pode ser gerada, se seu computador desligar (falha de energia, passos do gato no teclado, ...), em um novo início o EA perderá o controle da ordem (se ele não escrever magiks em um arquivo).
 
icas:

Você não pode gerar um magik, se seu computador desligar (perde energia, o gato pisa no teclado, ...) quando você reiniciar, o EA perderá o controle da ordem (se ele não escrever magiks em um arquivo).
Depende de como gerar. Minha EA é gerada usando o símbolo, tf e não vai a lugar algum, mas normalmente é retomada no reinício. Pegou-o uma vez em algum lugar e o tem usado desde então.
 
snail09:
Depende de como você gera. As minhas são geradas usando um símbolo, tf, e não vão a lugar algum, mas pegam normalmente no reinício. Pegou-o uma vez em algum lugar e o tem usado desde então.

Posso ver um exemplo de como isso...
 
snail09:
Depende de como você gera. As minhas são geradas usando um símbolo, tf, e não vão a lugar algum, mas pegam normalmente no reinício. Pegou-o uma vez em algum lugar e o tem usado desde então.

Interessante, cite o código, por favor.
 

Olá a todos, novamente...)

Como faço para que os objetos (quaisquer objetos) apareçam na tabela em primeiro plano e NÃO atrás dos castiçais...? há alguma função para isso?

 
OvA:

Olá a todos, novamente...)

Como faço para que os objetos (quaisquer objetos) apareçam na tabela em primeiro plano e NÃO atrás dos castiçais...? há alguma função para isso?


Não há camadas no gráfico (imho), eu mudo para mostrar barras mas não candelabros, você pode se acostumar com o tempo.
 
icas:

Não há camadas no gráfico (imho), eu mudo para mostrar barras mas não candelabros, você pode se acostumar com o tempo.

Estou vendo, obrigado...

 
Além disso, como remover o roteiro do gráfico?
 

Bem, aqui vai um rude. Foi tirada do conselheiro da ikatsko. Talvez ele seja o autor, talvez não, o estilo se pareça com o KimIV... Não sei, mas eu gosto, estou usando-o agora.

MagicNumber=1000+func_Symbol2Val(Symbol())*100+func_TimeFrame_Const2Val(Period());

//+------------------------------------------------------------------+
//| Numeric value for symbol name
//+------------------------------------------------------------------+
int func_Symbol2Val(string symbol) {
     if(symbol=="AUDCAD") {
        return(1);
     } else if(symbol=="AUDJPY") {
        return(2);
     } else if(symbol=="AUDNZD") {
        return(3);
     } else if(symbol=="AUDUSD") {
        return(4);
     } else if(symbol=="CHFJPY") {
        return(5);
     } else if(symbol=="EURAUD") {
        return(6);
     } else if(symbol=="EURCAD") {
        return(7);
     } else if(symbol=="EURCHF") {
        return(8);
     } else if(symbol=="EURGBP") {
        return(9);
     } else if(symbol=="EURJPY") {
        return(10);
     } else if(symbol=="EURUSD") {
        return(11);
     } else if(symbol=="GBPCHF") {
        return(12);
     } else if(symbol=="GBPJPY") {
        return(13);
     } else if(symbol=="GBPUSD") {
        return(14);
     } else if(symbol=="NZDUSD") {
        return(15);
     } else if(symbol=="USDCAD") {
        return(16);
     } else if(symbol=="USDCHF") {
        return(17);
     } else if(symbol=="USDJPY") {
        return(18);
     } else if(symbol=="XAUUSD") {
        return(19);
     } else if(symbol=="XAGUSD") {
        return(20);
     } else if(symbol=="XAUEUR") {
        return(21);
     } else if(symbol=="XAGEUR") {
        return(22);
     } else {
        Comment("unexpected Symbol");
        return(0);
     }
}

//+------------------------------------------------------------------+
//| Time frame interval appropriation function                      |
//+------------------------------------------------------------------+
int func_TimeFrame_Const2Val(int Constant) {
     switch(Constant) {
         case     1: return(1);
         case     5: return(2);
         case    15: return(3);
         case    30: return(4);
         case    60: return(5);
         case   240: return(6);
         case  1440: return(7);
         case 10080: return(8);
         case 43200: return(9);
     }
}