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 1058

 
m8akca:

PODE este algoritmo ser programado. Minha cabeça está fervendo durante a terceira semana!

Olá, estou tentando programar o algoritmo, ele funciona, mas não abre ordem de venda ao comparar preços. Estou trabalhando com este algoritmo há uma terceira semana! Eu não lhe enviarei meu código como tentei escrevê-lo, mas ele simplesmente não funciona. Por favor, me diga se é possível implementar este programa? E se você não se importa, por favor, me envie o código será muito grato!

O programa: Abrimos uma ordem de compra, pegamos o preço de abertura da ordem de compra e a comparamos com o preço Bid e quando o preço de abertura da ordem de compra for igual ao preço Bid, abrimos uma ordem de venda ao preço de abertura da ordem de compra.

Você pode programar quase tudo, e este algoritmo ainda mais.

Há apenas um problema no algoritmo (em negrito), pode acontecer que ele não seja igual por muito tempo (pode ser de vários anos). É por isso que, neste caso, não devemos definir a condição de verificação igual ==, mas igual ou maior que =>. Ao mesmo tempo, após abrir uma ordem, devemos proibir a abertura de outras ordens, o que faz a cabeça ferver.

 
AlexeyVik:

Quase tudo pode ser programado, e este algoritmo ainda mais.

Apenas um problema no algoritmo (destacado em negrito), pode acontecer que ele não seja igual por muito tempo (talvez vários anos). É por isso que, neste caso, não devemos colocar a condição de verificação igual ==, mas igual ou maior que =>. Ao mesmo tempo, após abrir uma ordem, devemos proibir a abertura de outras ordens, o que faz a cabeça ferver.

A questão é que eu preciso da comparação exata ==, não de quantos anos para esperar por que se eu produzir, por exemplo, em meu comentário o preço de compra e preço de compra e estas variáveis coincidem em alguns momentos, mas a condição de comparação == não é cumprida: É POSSÍVEL programar este algoritmo? Minha cabeça está fervendo durante a terceira semana!
 

o arquivo já foi tratado. Pode me dizer, por favor?

1. É possível incluir mais de uma EA no mesmo gráfico?

2. ou conselheiro+escritor?

3. é necessário colocar na tabela do instrumento exatamente o TF que é usado pelo Expert Advisor? se sim, o que acontecerá de outra forma?

4. É necessário colocar na janela do instrumento o indicador usado pelo Consultor Especialista? se sim, o que acontecerá de outra forma?

5. Se a EA usa várias moedas, é necessário abrir todas as janelas com esses pares de moedas?

 
m8akca:
A questão é que eu preciso de uma comparação exata ==, não de quantos anos para esperar por que se, por exemplo, no comentário eu der um preço de pedido de compra e um preço de oferta e estas variáveis coincidirem em alguns pontos, mas a condição de comparação == não é cumprida: É POSSÍVEL programar este algoritmo? Minha cabeça está fervendo durante a terceira semana!
Porque o preço pode ser _Ponto mais ou menos e não é mais igual.
 

Por favor, me diga a função que conta a quantidade da última série de negócios perdidos em uma fila. Se TakeProfit for acionado, ele zerará o contador para zero.

 

Olá a todos, queridos! Por favor, digam-me se existe uma rede, ou talvez alguém tenha tempo de escrever um assessor, para os seguintes parâmetros. 1) especificar a direção da compra (venda), e o preço desta compra (venda). 2) Eu especifico o tamanho da parada. 3) Eu coloquei, por exemplo, três níveis de preço, nos quais uma parte do tamanho do lote deve ser fechada. Por exemplo, exponho a ordem de venda a US$ 1, nos parâmetros do consultor especifica quanto % (ou quanto volume) fecha a 1,2, quanto % (ou quanto volume) a 1,3 e o saldo a 1,4.

 
ara66676:
Digamos, foi importante para mim determinar o tempo, 10 segundos antes do fechamento de cada cinco minutos, e como a análise inclui 28 pares de moedas, esta barra será para alguns pares de moedas, e o número de carrapatos no meu caso não importa.

Então é mais simples assim:

data/hora TSec; // Tempo atual em segundos a partir do início dos últimos cinco minutos

TSec = TimeCurrentl() % 300; // Restante da divisão. Pode ser comparado a 290 = 5 minutos - 10 segundos.

No caso de uma desconexão do servidor, o último tempo conhecido TimeCurrent não mudará, ficando atrás do tempo real. Se houver confiança no temporizador do sistema rodando no computador terminal, por exemplo, quando ele for sincronizado automaticamente com o tempo astronômico do sistema operacional (erro de 1-2 segundos) ou de outra forma, é melhor não usar o último tempo conhecido do servidor (hora da última chegada das cotações), mas o próprio tempo do computador, data/horaTimeLocal(). Este tempo também é contado a partir de 1970.01.01 0:00:00 em segundos e é adequado para medir 5 minutos e 10 segundos, a diferença entre os fusos horários do computador e do servidor não é importante. Depois

TSec = TimeLocal() % 300;

 
Vlad143:

Então é mais simples assim:

data/hora TSec; // Tempo atual em segundos a partir do início dos últimos cinco minutos

TSec = TimeCurrentl() % 300; // Restante da divisão. Pode ser comparado a 290 = 5 minutos - 10 segundos.

No caso de uma desconexão do servidor, o último tempo conhecido TimeCurrent não mudará, ficando atrás do tempo real. Se houver confiança no temporizador do sistema rodando no computador terminal, por exemplo, quando a hora do computador estiver automaticamente sincronizada com a hora astronômica do sistema operacional (erro de 1-2 segundos) ou de outra forma, é melhor não usar a última hora conhecida do servidor (a hora da última chegada das citações), mas a hora do computador data/horaTimeLocal(). Este tempo também é contado a partir de 1970.01.01 0:00:00 em segundos e é adequado para medir 5 minutos e 10 segundos, a diferença entre os fusos horários do computador e do servidor não é importante. Depois

TSec = TimeLocal() % 300;

obrigado, também útil .
 
Favor informar como interromper a soma das posições não lucrativas
    Подскажите, пожалуйста, как прервать суммирование убыточных позиций при срабатывании Тейкпрофита. После заново считать.
    
    Использую функцию Кimа 
    
     double GetProfitFromDateInCurrency(string sy="", int op=-1, int mn=-1,  datetime dt=0)
{
  p=0;
  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=="") && (op<0 || OrderType()==op)) {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (mn<0 || OrderMagicNumber()==mn) {
            if (dt<OrderCloseTime()) {
             
             if(OrderProfit()<0){
              p+=OrderProfit();
            }
          }
        }
      }
    }
  }
 }
  
  return(p);
 
Neron_plus34:
Favor informar como interromper a soma das posições não lucrativas
if(dt<OrderCloseTime()) {
   if(OrderProfit()<0) p+=OrderProfit(); 
   else break;
   }
Razão: