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 1002

 
Vinin:

iBarShift

Este é o número de seqüência, não o valor da barra.
 
001:
Este é o número de seqüência, não o valor da barra.
Assim, podemos usar o índice para descobrir o que queremos)))MQL4 Guia de Referência / Variáveis pré-definidas
 

Como calcular programmaticamente o lucro/perda para ordem SL/TP em moeda de depósito (Rublos)?

Ou seja, preciso obter exatamente aqueles números de lucro que o MT4 exibe ao pairar sobre a linha SL/TP ou ao arrastá-la com o mouse.

Que tal obter MODE_TICKVALUE e multiplicar pela distância em pips para SL/TP? Eu tentei com EURUSD e parece ser a mesma coisa, mas com outros pares pelo menos uma ligeira divergência aparece. E na MT4 é sempre mais por pelo menos alguns rublos. Por exemplo, no GBPNZD.

 

Eu fiz uma simples EA que emite informações para o registro quando uma nova barra aparece.

#property strict
//+------------------------------------------------------------------+
int OnInit()
  {
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
void OnTick()
  {
   if(IsNewBar(_Symbol,PERIOD_CURRENT)==true) Print("New bar!");
  }
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
  }
//=== Function
bool IsNewBar(string f_Symbol,      // symbol
              ENUM_TIMEFRAMES f_TF) // timeframe
  {
//---
   static datetime f_LastBar=0;
   datetime f_CurrentBar=iTime(f_Symbol,f_TF,0);
//---
   if(f_LastBar!=f_CurrentBar)
     {
      f_LastBar=f_CurrentBar; return(true);
     }
   else return(false);
  }

Funciona corretamente, no sentido de que no primeiro tique de uma nova barra aparece uma mensagem. Mas por alguma razão o tempo da mensagem está relacionado com a barra anterior. Eu gostaria de anexar uma foto. A primeira mostra que a hora atual é 21:50:57 e há apenas 2 novas mensagens. Na 2ª fig. da hora atual 21:51:23, há um 3º registro de um novo bar E viu que a mensagem apareceu depois das 21:51:00 MAS o tempo de gravação no log de alguma forma que 20:50:47 (claramente, há uma diferença de 1 hora entre o servidor e meu computador), que meu tempo não está correto. Você pode verificar o seu? É o mesmo para todos ou é uma falha?



 

Seu relógio de computador está alguns segundos atrasado ou o relógio do servidor está um pouco rápido, ou talvez ambos. Imprimir() o horário atual da barra.

if(IsNewBar(_Symbol,PERIOD_CURRENT)!=true) Print("New bar! ", Time[0]);

ou tanto o servidor quanto a hora local

 
Vadim_2015:
Bem, podemos usar o índice para descobrir o que queremos))MQL4 Referência / Variáveis pré-definidas

Não, este não é o caso. Eu perguntei: Como você sabe o valor de uma barra em um indicador de acordo com seu tempo( por tempo de barra)? Se simplesmente colocarmos no iBarShift uma hora desejada do dia (por exemplo, na TF H1, então teremos um turno no gráfico D1, que sempre muda a cada novo dia, ou seja, cada nova barra terá a mesma coisa.

 
001:

Não, isto é um pouco diferente. Eu perguntei: Como você sabe o valor de uma barra(DIA QUERIDO) em um indicador por seu tempo (por tempo de barra)? Se simplesmente colocarmos no iBarShift a hora de um dia desejado (por exemplo, na TF H1, obtemos o turno no gráfico D1, que sempre muda com a chegada de um novo dia, ou seja, cada nova barra terá o mesmo valor.


- Como podemos encontrar o valor em um indicador?

o que é um "valor" ?

- "Se estamos substituindo sem rodeios".

Se você não entender a função, você receberá um valor "novo", o que significa que cada nova barra terá o mesmo valor.

 

Boa tarde.

Confrontado com um problema ao testar EAs. Tudo estava bem por alguns meses, escrevi vários EAs que abriam e fechavam pedidos de acordo com minhas regras. Um dia, outro EA parou de testar. Independentemente do tempo estabelecido no testador passado um mês, foi sempre setembro de 2014 e o teste parou. Levei muito tempo para desenterrá-lo, baixar dados históricos, etc. Então decidi reinstalar o MetaTrader. Então decidi reinstalar o Meta Trader, desinstalando-o e reinstalando-o. Agora todos os Expert Advisors disponíveis em geral não funcionam mais. Minhas ordens não estão abrindo. Eu tenho alguns dados históricos. Quando a imagem é ativada, o gráfico passa o período de tempo necessário, mas nenhuma negociação é feita. Por favor, me aconselhe pelo menos em que direção cavar, todas as minhas idéias estão acabadas.

Muito obrigado de antemão.

 
sergeev:

- Como podemos encontrar o valor em um indicador?

o que é "valor"?

- "Se apenas o conectarmos"

Mostre-me este código "idiota" para ter algo para falar. até agora tudo o que podemos ver é sua falta de compreensão de como a função funciona.


Eu nem vou discutir. Eu não sou muito bom em programação. Eu sou apenas um ocasional. Código mais tarde. O "Valor" está aberto.

 

Olá a todos, vocês podem me dizer como traçar um triângulo e calcular o ângulo obtuso de um triângulo?