Discussão do artigo "Criação e teste de símbolos personalizados na MetaTrader 5" - página 3

 
fxsaber:

Pegue o 1653 (há mudanças significativas nesse tópico) e, se não funcionar, publique aqui.


Onde posso obtê-lo? Mesmo o 1643 é baixado do site metatrader5.com?

 
bistreevseh:

Onde posso obtê-lo? Mesmo no site metatrader5.com, ele foi baixado 1643 vezes?

Abra uma conta no Metaquotes-Demo e dê uma olhada nos registros.

 

Obrigado, instalei!

2017.11.14 12:51:04.173 Ticks   old tick ARBINDEX (tick: 1970.01.01 00:00:25.934, last: 2017.11.14 11:50:09.000) 5.0000/6.0000
2017.11.14 12:51:05.198 Ticks   old tick ARBINDEX (tick: 1970.01.01 00:00:00.002, last: 2017.11.14 11:50:09.000) 5.0000/6.0000
2017.11.14 12:51:06.426 Ticks   future price ARBINDEX (tick: , last: 2017.11.14 11:49:46.000) 5.0000/6.0000/0.0000

Consegui criar alguns ticks, mas pelo que entendi há erros, você pode me dizer o que eles significam? Obrigado!

 
bistreevseh:

Consegui criar alguns ticks, mas, pelo que entendi, há erros. Você pode me dizer o que eles significam? Obrigado!

Para um tique, você também precisa especificar a hora.

 
fxsaber:

Para um tique, você precisa especificar a hora também.


Também pensei nisso antes de escrever a última mensagem.
Executei esse código:

   MqlTick tick[];
   ArrayResize(tick, 1);
   tick[0].ask=6;
   tick[0].bid=5;
   tick[0].flags=TICK_FLAG_BID|TICK_FLAG_ASK;
   tick[0].time=TimeCurrent();
 
bistreevseh:

Pensei nisso também, antes de escrever a última postagem.

Você tem uma inconsistência entre os dois tempos verbais, faça isso

tick[0].time_msc = 0;
 
Também vale a pena lembrar que o 1653 tem bugs com caracteres personalizados. Estou esperando por uma versão com correções há mais de um mês. ;-/
 
Stanislav Korotky:
Também vale a pena lembrar que o 1653 tem bugs com caracteres personalizados. Estou esperando por uma versão com correções há mais de um mês. ;-/
Quais bugs?
 
Aidas Geguzis:
Que tipo de erros?

Especificamente o que encontrei: a remoção de barras personalizadas não funcionava e o registro estava entupido com gigabytes de mensagens de erro inexplicáveis.

Mas a essência do meu aviso é que você deve estar preparado para falhas e esperar por uma nova versão. Embora a espera seja muito longa.

 

Crescimento infinito do arquivo tkc ao gravar os mesmos dados

void OnStart()
{
  MqlTick Ticks[];

  const string Name = "A1234";
  
  if (CustomSymbolCreate(Name) && CustomSymbolSetInteger(Name, SYMBOL_DIGITS, _Digits))
  {
    if (CopyTicks(_Symbol, Ticks, COPY_TICKS_ALL, 0, 100000) > 0)
      Print(CustomTicksReplace(Name, Ticks[0].time_msc, Ticks[ArraySize(Ticks) - 1].time_msc, Ticks));
  }
  else if (SymbolInfoInteger(Name, SYMBOL_CUSTOM) && (CopyTicksRange(Name, Ticks) > 0))
    Print(CustomTicksReplace(Name, Ticks[0].time_msc, Ticks[ArraySize(Ticks) - 1].time_msc, Ticks));
}

Cada execução aumenta o arquivo tkc em 0,5 Mb.


CustomTicksDelete exclui os ticks, mas o arquivo tkc permanece o mesmo. É interessante notar que a leitura de ticks de um símbolo personalizado antes e depois de uma reinicialização pode gerar resultados diferentes.