Perguntas de um "boneco" - página 208

 
talliy: Pode dizer-me como fazer uma variável assumir um único valor quando ocorre uma determinada condição, em vez de durante a duração da condição?
Pode dar-me mais detalhes? A frase "e não pela duração da condição" não é clara.
 
Yedelkin:
E quanto aos detalhes? A frase "não pela duração da condição" não é clara.
Por exemplo, ao encontrar um determinado bar. Esta barra na matriz é, digamos, a terceira. Enquanto esta barra é a terceira na verdade variável. É a terceira de acordo com o calendário. Teremos de fazer uma entrada disto no diário de bordo. A cada tique o número de registos aumentará até se tornar a quarta barra. Portanto, a questão é como fazer uma atribuição única à variável verdade e cumprir outras condições, mas não com cada tick até que a variável tenha a verdade.
 
Bom dia, por favor aconselhem. Inscrevi-me para um sinal no vosso site. Mas não tenho bem a certeza de como está a correr? E como será executado? Talvez deva fazer algumas configurações no MT4 ou é suficiente, a minha subscrição, o número da minha conta e o servidor do corretor para copiar as transacções? E se o meu computador estivesse desligado? Estas são as perguntas.
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете - Документация по MQL5
 
talliy:
Por exemplo, ao encontrar um determinado bar. Esta barra na matriz é, digamos, a terceira. Desde que esta barra seja a terceira na verdade variável. É a terceira de acordo com o calendário. Teremos de fazer uma entrada no diário de bordo. A cada tique o número de registos aumentará até se tornar a quarta barra. Portanto, aqui está a questão, como realizar a atribuição simultânea da verdade variável e o cumprimento simultâneo de outras condições, e não com cada tick até que a variável tenha a verdade.
Talvez pretenda determinar o número da barra de que necessita, não em cada tic, mas apenas quando aparece uma nova barra? Procure aqui ou procure no fórum a combinação de palavras IsNewBar.
 
talliy: Por exemplo, quando é encontrado um determinado bar. Esta barra na matriz é, digamos, a terceira. Desde que esta barra seja a terceira, a variável é verdadeira. É a terceira de acordo com o calendário. Isto tem de ser introduzido na revista. A cada tique o número de registos aumentará até se tornar a quarta barra. Portanto, a questão é como fazer uma atribuição única à variável verdade e cumprir outras condições, não com cada tick até que a variável seja verdadeira.

Em alternativa, introduza outra variável à qual atribuirá o valor verdadeiro se a primeira variável for enviada para impressão.

bool bar_printed=false;
...
if()                     //Проверяете нужное условие
  {
   ...
   if(!bar_printed)
     {
      Print("Нужное условие выполнено");
      bar_printed=true;
     }
  }
 

Olá, caros utilizadores e administração, poderiam por favor ajudar-me com o seguinte problema. Decidi testar o serviço de sinais de comércio livre https://www.mql5.com/ru/signals/mt4. Estabeleci os parâmetros como nas instruções, mas nada acontece. Introduzi o registo com os seguintes erros:

2012.11.16 11:04:14 '340421': Sinal - sincronização falhou, processamento de acções comerciais desactivadas
2012.11.16 11:04:14 '340421': Sinal - sincronização terminou, não pode copiar posição [#37469421 comprar 10,00 USDCHF a 0,9411 sl: 0,9231 tp: 0,0000]
2012.11.16 11:04:14 Símbolo: sem preços para símbolo U‰
"B<u}{њWr1zzfußtљUYShchµtuNЏEDT`P}sh197XT¬n "zlss®VYЏ--¶¶ԛl ¤ KЂSh 9ґnhuP©h_Yu6nzj-KSQr-Ï'S<"MSHr©±ЇР'Ì$eљ*t6&SО
.y*'HushR"±,emkЊGa!ÇV®jtvЉGLYkҐj>5ґ DP@m!)'HDњE "јў®ћLF‡...¦aў;srI


qual é o problema da personalização? O meu corretor é a FBS

Торговые сигналы: MetaTrader 4
Торговые сигналы: MetaTrader 4
  • www.mql5.com
Торговые сигналы для MetaTrader 4 с автоматическим исполнением на вашем счете
 
Yedelkin:

Em alternativa, introduza outra variável à qual atribuirá o valor verdadeiro se a primeira variável for enviada para impressão.

No caso em que sugere, a variável é falsa a cada tique e torna-se verdadeira após a impressão no diário de bordo. Depois há um novo tick e o operador onTick() executa o seu programa de cima para baixo. E aí a variável é novamente falsa, e no estado em que está, se a variável for falsa, imprimir. E por isso o registo está cheio de entradas a cada tique. Verificado!!!

Utilizei a funçãoTimeCurrent() para tentar compreender logicamente a execução do programa na declaração, aqui está o código:

Como consequência, apenas são registadas as entradas em que o tick tem um tempo 0 por minuto e 0 por segundo. É mais complicado com o relógio. A única coisa que muda é o sinal horário. A colocação de 0 servirá de filtro e produzirá uma entrada se o "Martelo" for às 00 horas, o que é raro. Ao mesmo tempo, o número de gravações diminuiu, mas ainda quer melhorar.

  double r=0;
  double x=0;
  double z=0;
  double rr=0;
  double xx=0;
  double zz=0;
  double a=0;
  r = Open[1];
  x = Close[1];
  z = r - x;
  xx=Low[1];
  a=x-xx;
  zz = 2*z;
MqlDateTime secc;
bool logno = false;
  if (Open[3]<Close[3] && Open[2] <Close[2])         
    if (Open[1]==High[1]&&Close[1]<Open[1])
     if (a>=zz){
    /* if (!logno){
     Print ("На графике свечная модель -Молот");
     logno = true;}*/
     TimeCurrent(secc);
     while(secc.sec==0 && secc.min==0 && !IsStopped())
     {
 Print ("На графике свечная модель -Молот");
 break;
     
        }

Esta é uma tentativa rápida de retratar e encontrar o padrão do castiçal "Hammer" no gráfico. A propósito, o exemplo com a variável que é falsa também é comentado aqui.

Um padrão de martelo é: a sombra inferior é pelo menos 2 e no máximo 3 vezes o corpo. A sombra superior está ausente ou é muito curta (não mais de 10% do alcance da vela). A cor do corpo é irrelevante no jogo a longo prazo; no jogo a curto prazo, o martelo branco é muito mais forte do que o preto.

 

Gostaria também de esclarecer como proibir uma variável de se mover atrás de um preço.

Exemplo: Uma simples rede de arrasto de paragem. Dizemos à variável para seguir o preço a uma distância de 20 pips (por exemplo). Por outras palavras, variável = preço de oferta - 20 pips (assumindo que comprámos). O preço sobe e nós seguimo-lo com sucesso. Depois o preço desce e precisamos que a variável permaneça no seu valor ao mesmo nível.

Assim, a minha pergunta é: como evitar que a variável tome um valor num determinado momento?

 
paladin800:
Talvez pretenda determinar o número da barra de que necessita, não em cada tic tac, mas apenas quando aparece uma nova barra? Procure aqui ou procure no fórum a combinação de palavras IsNewBar.

Obrigado!!! Referência útil!!! Vai ser útil no futuro.

Mas um pouco fora, embora.... Também se pode pensar numa forma de contornar isso.

 
talliy:

No caso de sugerir, a variável com cada carrapato é falsa e torna-se verdadeira depois de uma impressão de registo ser executada. Depois um novo tick e um operador onTick() executa o seu programa de cima para baixo. E aí a variável é novamente falsa, e no estado em que está, se a variável for falsa, imprimir. E por isso o registo está cheio de entradas a cada tique. Verificado!!!

Utilizei a funçãoTimeCurrent() para tentar compreender logicamente a execução do programa na declaração, aqui está o código:

Como consequência, apenas são registadas as entradas em que o tick tem um tempo 0 por minuto e 0 por segundo. É mais complicado com o relógio. A única coisa que muda é o sinal horário. A colocação de 0 servirá de filtro e produzirá uma entrada se o "Martelo" for às 00 horas, o que é raro. Ao mesmo tempo, o número de gravações diminuiu, mas ainda quer melhorar.

Esta é uma tentativa rápida de retratar e encontrar o padrão do castiçal "Hammer" no gráfico. A propósito, o exemplo com a variável que é falsa também é comentado aqui.

Um padrão de martelo é: a sombra inferior é pelo menos 2 e no máximo 3 vezes o corpo. A sombra superior está ausente ou é muito curta (não mais de 10% do alcance da vela). A cor do corpo é irrelevante no jogo a longo prazo; no jogo a curto prazo, o martelo branco é muito mais forte do que o preto.


static bool logno = false;