Erros, bugs, perguntas - página 957

 
Kino, por favor dê-nos os registos completos.
 
Renat:
Kino, por favor forneça os registos completos.

Obrigado pela sua resposta. Para informações completas, envie os registos para https://www.mql5.com/ru/signals/5299#!tab=history&page=1

TradeFort-Real servidor de subscritores

Conta 429026

Investir zv278888009974

Registos anexados.

O meu sistema é licenciado com Windows XP SP3 com todas as actualizações. Terminal MT4 (482)


Arquivos anexados:
Logs.zip  22 kb
 

Há silêncio no balcão de atendimento:

#644298 | 2013.01.28 19:17

#666445 | 2013.02.15 13:03

#677524 | 2013.02.23 14:17

#677530 | 2013.02.23 16:19

#681251 | 2013.02.27 07:28

#685594 | 2013.03.04 06:28

 

Há algo de errado com o fórum. Muitas fotografias não estão a carregar. Em todos os navegadores.

//---

P.S. Está de volta.

 

MT4 - o sinal não é processado correctamente.

Quando uma encomenda é parcialmente fechada, o receptor abre encomendas adicionais inexistentes!

Verifique, por favor.

 

Porque é que o MetaEditor tem a opção Nova Janela? Se alterar o código num, as mesmas alterações são feitas no outro.

 

Há um insecto no MT5. Já a puxei duas vezes:

Se houver uma ordem de compra, abaixo do preço colocamos bylimit e arrastamo-lo para cima acima do preço actual e acima do comércio aberto, uma compra ocorre no local onde arrastamos a ordem bylimit, embora o preço nem sequer estivesse a olhar para lá...

A falha ocorre quando ambas as ordens de limite são arrastadas, não existe tal falha nas ordens de paragem, o erro soa e a ordem permanece no lugar.

Não lhe vou mostrar screenshots porque é fácil de verificar.

Actualizei o programa pela última vez anteontem, mas a falha foi notada há cerca de duas semanas.

 
Melnev:

Há um insecto no MT5. Já a puxei duas vezes:

Se houver uma ordem de compra, abaixo do preço que colocamos bylimit e o arrastamos para cima do preço actual e acima do comércio aberto, uma compra acontecerá no local onde arrastamos a ordem bylimit, embora o preço não estivesse sequer a olhar para lá...

é um insecto? ele comprou ao preço que lhe foi pedido acima do actual.

Se ele tivesse vendido a um preço superior ao actual, então sim, é um insecto.

 

Estou confuso com os nomes curtos dos indicadores.

Tento definir nomes diferentes, mesmo que os parâmetros de entrada sejam os mesmos.

Anexo um indicador ao gráfico e anexo o segundo, o nome curto é retirado do primeiro, mas estou a tentar atribuir um nome único no código.

Os nomes curtos claramente diferentes só são definidos se lhe passarmos parâmetros de entrada diferentes.

O que é que eu faço?

#property indicator_separate_window
#property indicator_plots 1
#property indicator_buffers 1
//---
#property indicator_label1  "*"
#property indicator_type1   DRAW_ARROW
#property indicator_color1  clrChartreuse
#property indicator_style1  STYLE_SOLID
#property indicator_width1  6
//--- input parameters
input string ShortName="Короткое имя:";
double Buffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
   SetIndexBuffer(0,Buffer,INDICATOR_DATA);

//Следуя рекомендациям
//https://www.mql5.com/ru/docs/chart_operations/chartindicatorname
//https://www.mql5.com/ru/docs/chart_operations/chartwindowfind
//https://www.mql5.com/ru/docs/chart_operations/chartindicatordelete
//явным образом задается короткое имя индикатора,
//даже при одинаковом значении входного параметра ShortName
//имя должно быть уникальным,
//для этого используется текущее время компа с точность в милисекунды

   string shortname=ShortName+TimeToString(TimeLocal(),TIME_SECONDS)+"."+IntegerToString(GetTickCount()%1000,3,'0');
   Print(shortname);

//устанавливаем короткое имя индикатору
   bool setname=IndicatorSetString(INDICATOR_SHORTNAME,shortname);
   if(!setname)
     {
      Print("Имя не установлено");
     }

//Номер подокна в котором работает индикатор
   int subwin=ChartWindowFind();
   Print("Подокно индикатора= ",subwin);

   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
   if(prev_calculated==0) ArrayInitialize(Buffer,EMPTY_VALUE);
   
   Buffer[rates_total-1]=close[rates_total-1];
   
   return(rates_total);
  }
//+------------------------------------------------------------------+
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Свойства пользовательских индикаторов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Свойства пользовательских индикаторов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Свойства пользовательских индикаторов - Документация по MQL5
 
kPVT:

Estou confuso com os nomes curtos dos indicadores.

Tento definir nomes diferentes, mesmo que os parâmetros de entrada sejam os mesmos.

Anexo um indicador ao gráfico e anexo o segundo, o nome curto é retirado do primeiro, mas estou a tentar atribuir um nome único no código.

Os nomes curtos claramente diferentes só são definidos se lhe passarmos parâmetros de entrada diferentes.

O que é que eu faço?

Passar parâmetros de entrada diferentes. O símbolo, período, parâmetros de entrada são os mesmos, o indicador é o mesmo. O terminal tenta minimizar o consumo de recursos e, neste caso, não é criada uma nova cópia do indicador, ou seja, funciona efectivamente um programa de mql5.