Tiki em tempo real - página 9

 
Andrey Khatimlianskii:

Olhou atentamente, várias vezes.

Às 13:40:50.839 OnTick recebeu carrapatos que só chegaram OnBookEvent às 13:40:50.853

Você gostaria de comentar sobre isso? )

 
Andrey Khatimlianskii:

Ela só encontra um:

Mas não abre uma conta lá.

Reinicie o investimento, eu farei um teste no meu.

Como eu faço isso?

 
Andrey Khatimlianskii:

Ela só encontra um:

Mas não abre uma conta lá.

Solte um investidor, eu vou fazer um teste no meu.

Você tem que abrir uma conta no site deles.

 
Andrey Khatimlianskii:

Você gostaria de comentar sobre isso? )

É melhor comentar sobre isto.


Existem omissões óbvias na OnTick()

Andrei!

Por que você precisa de uma conta, eu coloquei o registro, ou você acha que eu o ajustei?

Adicionado

E também, você tem uma imprecisão em seu código.

if ( CopyTicks( _Symbol, cur_ticks, COPY_TICKS_ALL, 0, 1 ) > 0 )
                {
                        last_tick_time = cur_ticks[0].time_msc;
                        last_tick = cur_ticks[0];
                }

E se CopyTicks() retornar "0".

Você não lida com esta situação, e ao usar o OnBookEvent()

tal situação acontece freqüentemente quando uma ordem pendente é colocada (excluída) na janela de seleção

Acontece quando um pedido pendente com um preço já existente é colocado (excluído). OnBookEvent() aciona mas OnTick() não aciona.

Minha implementação leva isso em conta

result = CopyTicks(Symbol(), ticks, COPY_TICKS_ALL, last_time, 0);
      if(result > 0)
      {
        if(result > t_cnt)
        {
          mem_cnt = t_cnt;
          t_cnt = 0;
          for(int i= 0; i<(result - int(mem_cnt)); i++)
          {
            if(ticks[i].time_msc == ticks[0].time_msc) t_cnt++;
            Print(GetTickDescription(ticks[i]));
          } 
          if(last_time == ulong(ticks[0].time_msc))
          {
            t_cnt += int(mem_cnt);
          }
          else last_time = ulong(ticks[0].time_msc + 1);
        }
        else
        {
          t_cnt = 0;
          last_time++;
        }
      }
      else
      {
        t_cnt = 0;
        last_time++;
      }
 else
      {
        t_cnt = 0;
        last_time++;
        Print("CopyTicks return ", result);
      }
2020.01.31 15:09:11.824	Ticks_test (GOLD-3.20,M1)	2020.01.31 15:09:05.627 Ask=1585.4 
2020.01.31 15:09:11.872	Ticks_test (GOLD-3.20,M1)	2020.01.31 15:09:05.627 Ask=1585.4 
2020.01.31 15:09:12.118	Ticks_test (GOLD-3.20,M1)	2020.01.31 15:09:05.790 Ask=1585.5 
2020.01.31 15:09:12.463	Ticks_test (GOLD-3.20,M1)	CopyTicks return 0
2020.01.31 15:09:13.135	Ticks_test (GOLD-3.20,M1)	CopyTicks return 0
2020.01.31 15:09:13.556	Ticks_test (GOLD-3.20,M1)	CopyTicks return 0
2020.01.31 15:09:14.496	Ticks_test (GOLD-3.20,M1)	CopyTicks return 0
2020.01.31 15:09:15.482	Ticks_test (GOLD-3.20,M1)	CopyTicks return 0
2020.01.31 15:09:15.674	Ticks_test (GOLD-3.20,M1)	CopyTicks return 0
2020.01.31 15:09:15.696	Ticks_test (GOLD-3.20,M1)	CopyTicks return 0

 
prostotrader:

É melhor comentar sobre isto


Existem omissões óbvias na OnTick().

Não vi nenhum salto, mas atrasos em ambas as direções.

Mas não fui eu quem fez a tese de que os carrapatos do OnBook vêm mais rápido, foi você. O registro mostrou que é o contrário.

Portanto, aguardo os comentários de vocês.


prostotrader:

Andrei!

Por que você precisa da pontuação, eu afixei o registro, ou você acha que eu o ajustei?

Não, é apenas interessante comparar meus resultados com os seus nas mesmas condições.


prostotrader:

E você tem uma imprecisão em seu código.

E se CopyTicks() retornar "0".

Você não lida com esta situação, e ao usar o OnBookEvent()

tal situação ocorre freqüentemente, ela ocorre quando um

com preço já existente, OnBookEvent() aciona, mas OnTick() não o faz.

E para que serve este "carrapato"? Não é um carrapato, se utilizarmos a terminologia convencional.

Minha versão simplesmente salta carrapatos, que não mudaram o tempo ou um dos preços. Porque eles não são necessários para a análise do fluxo do carrapato (eles são necessários para a análise do secador, mas não estamos discutindo isso agora).

 
prostotrader:

Como eu faço isso?

Na aba Mail há um e-mail sobre a abertura de uma conta, há um nome de usuário e 2 senhas - de um comerciante e de um investidor.

 
Andrey Khatimlianskii:



E por que o "tique"? Não é de todo um carrapato, para usar a terminologia convencional.

Minha versão simplesmente salta carrapatos que não mudaram o tempo ou um dos preços. Porque eles não são necessários para a análise do fluxo do carrapato (eles são necessários para a análise do copo, mas não estamos falando sobre isso agora).

É óbvio que você é um fã da FOREX,

E no FOREX, todo o mercado é frequentemente analisado (todas as suas mudanças), é importante para a negociação no mercado de câmbio!

 
Andrey Khatimlianskii:

Há um e-mail na guia Mail sobre a abertura de uma conta, há um nome de usuário e 2 senhas - do trader e do investidor.

Investidor FfiR87ty (leia somente a senha)

 
Andrey Khatimlianskii:

Não vi nenhum salto, mas vi atrasos em ambas as direções.


O que você quer dizer com não ter visto nenhum?

O que é isso?


De qualquer forma, tem sido óbvio para mim há muito tempo, que cada um escolha por si mesmo o que "gosta"!

Adicionado

OnBookEvent() é especificamente projetado para trabalhar com tumblr.

Вызывается в индикаторах и экспертах при наступлении события BookEvent.
Функция предназначена для обработки изменений стакана цен (Depth of Market).

E o copo é a "cabeça" de tudo na troca!

Adicionado

Você, penso eu, não de propósito, só leva um carrapato.

if ( CopyTicks( _Symbol, cur_ticks, COPY_TICKS_ALL, 0, 1 ) > 0 )
                {
                        last_tick_time = cur_ticks[0].time_msc;
                        last_tick = cur_ticks[0];
                }

Você sente falta de tudo o que era antes (0, ou seja, a hora atual)!

Na minha implementação, TODOS os carrapatos são contabilizados.

result = CopyTicks(Symbol(), ticks, COPY_TICKS_ALL, last_time, 0);

Seu código não é adequado para tais testes!

 
prostotrader:

É óbvio que você é um fã da FOREX,

E no FOREX todo o mercado (todas as suas mudanças) é muito frequentemente analisado, isto é importante para a negociação na Bolsa!

Há apenas um ventilador aqui, e esse é você.

Eu trabalho com informações técnicas.

A tarefa de analisar a profundidade do mercado nesta linha não foi intencional, desde o início. Os bilhetes sem mudanças de preço não são necessários pelos termos da tarefa.