Alguns sinais dos TCs certos - página 9

 
Petros Shatakhtsyan:

Por que está fora do tópico?

Quando aumentamos o preço ou o multiplicamos por uma constante, a natureza do movimento de preços não muda.

Talvez eu tenha interpretado mal o "teste de estabilidade". Se se trata de avaliar a robustez do TS, então fora do tópico.

 
fxsaber:

Ao virar e até embaralhar, quero fazer algumas pesquisas.

Nos comentários, foi sugerido pensar no comportamento do TS após a inversão do tempo - os carrapatos vão na direção oposta (do futuro para o passado), como se o rebobinado estivesse ligado.

Lá você também pode ler, em quais símbolos a inversão pode não afetar o resultado do TS, e para o qual é uma séria mudança dos padrões de mercado.

Felizmente, os símbolos forex não devem, em teoria, destruir os padrões de mercado com esta inversão de tempo. Achei interessante testar isto em um dos meus TS.


Primeiro, o código de inversão da série tick em MQL5.

int TimeDayOfWeek( const datetime Date )
{
  MqlDateTime mTime;
  
  TimeToStruct(Date, mTime);
  
  return(mTime.day_of_week);
}

#define  HOUR 3600
#define  DAY (24 * HOUR)
#define  WEEK 7

// https://www.mql5.com/ru/forum/170953/page8#comment_6940794
datetime GetTimeDayOfWeek( const datetime TimeSource, const int Shift = 0, const ENUM_DAY_OF_WEEK Day = SUNDAY )
{
  const datetime Res = TimeSource / DAY * DAY;
  
  return(Res - (((WEEK + (TimeDayOfWeek(Res) - Day)) % WEEK) + Shift * WEEK) * DAY);
}

void ReverseTick( MqlTick &Tick, const long &Offset )
{
  Tick.time_msc = Offset - Tick.time_msc;
  Tick.time = (datetime)(Tick.time_msc / 1000);
  
  return;
}

// Инверсирование времени.
void ReverseTicks( MqlTick &Ticks[] )
{
  const int Size = ArraySize(Ticks);
  
  if (Size)
  {
    const long Offset = (long)(GetTimeDayOfWeek(Ticks[0].time, 0, MONDAY) + GetTimeDayOfWeek(Ticks[Size - 1].time, -1, SATURDAY)) * 1000;

    for (int i = 0; i < Size; i++)
      ReverseTick(Ticks[i], Offset);

    ArrayReverse(Ticks);
  }

  return;  
}


Com base nesta função, o roteiro que cria o símbolo invertido é anexado. Trabalharemos com ele. Os resultados são os seguintes.


O melhor passe do Optimizer para o símbolo reto.


O mesmo passa no símbolo do tempo invertido.


Sem inferências.

Arquivos anexados:
 

fxsaber:

Lá você também poderia ler sobre quais símbolos a inversão pode não afetar o resultado do TS, e para o qual é uma séria mudança nos padrões de mercado.

Não é nada surpreendente. Especialmente se for utilizado o comércio por indicadores/sinais. A ordem inversa dos carrapatos, desenha uma imagem diferente. O que leva os indicadores a darem mais/menos sinais de entrada/saída.
Esta é a coisa mais simples que me vem à mente. Mas se você for mais fundo, haverá muitos detalhes. E tudo por causa da mudança dos padrões de carrapatos.

 
Konstantin Nikitin:

Nada surpreendente em absoluto. Especialmente se for utilizada a negociação com sinais indicadores. Inverte a ordem dos carrapatos, desenha uma imagem diferente. O que leva os indicadores a darem mais/menos sinais de entrada/saída.
Esta é a coisa mais simples que me vem à mente. Mas se você for mais fundo, haverá muitos detalhes. E tudo por causa da mudança dos padrões de carrapatos.

É como se a entrada fosse retirada do contexto. Você deve ter tido algumas conclusões antes disso. Até agora não entendi nada dessas sentenças.

 
Nikolai Semko:
Eu acrescentaria o principal:
  • não tem parâmetros dependentes de período.
  • O funcionamento do TS não depende do cronograma atual do gráfico
  • o funcionamento do TS não depende do símbolo-instrumento
  • toda a configuração do TS - é apenas uma configuração de gerenciamento de risco (o tamanho do depósito usado)

Contador de histórias...

 
Алексей Тарабанов:

Contador de histórias...

Ele tem um ponto...

muito provavelmente em tudo e sem fôlego observe a reação... silenciosamente...

mas eu gostaria de continuar o banquete, por assim dizer.

;)

 
Renat Akhtyamov:

Ele tem um ponto...

provavelmente em tudo e sem fôlego, observando uma reação... silenciosamente.

mas eu gostaria de continuar o banquete, por assim dizer.

;)

Apenas Martingale. Perfeito.

 
fxsaber:

...

Por exemplo, tome EURUSD. Dirigiu o TS, obtendo uma série de entradas.

Depois criamos o símbolo 100/EURUSD. Em seguida, executamos o TS. As inscrições devem coincidir com as originais.

Se isto não acontecer (99%), o TS não é escrito corretamente.

Não entendo como o TS deve reagir a símbolos tomados até certo ponto.

Devo esclarecer isso. Para 100/EURUSD entradas e saídas devem trocar de lugar ou mudar a direção da abertura da transação (vender ao invés de comprar). O sinal de mudança do valor inverso é oposto no mesmo intervalo de tempo. Que transformações são apropriadas - acho que monotônicas em todo o período de tempo. Tanto a multiplicação positiva como o logaritmo por qualquer base.

Afinal de contas, todo mundo vai sacar onde deveria ter comprado, onde deveria ter vendido, se o histórico da taxa já existe - comprar em baixa e vender em alta. Transformações com uma função monotônica preservam a localização dos extremos, isso é suficiente.

 
Vladimir:

Devemos esclarecer. Para 100/EURUSD as entradas e saídas devem ser invertidas ou a direção da abertura comercial deve ser invertida (vender ao invés de comprar).

É claro que a direção mudará, mas não o tempo.

O sinal de mudança na direção oposta no mesmo intervalo de tempo. Que transformações são apropriadas - acho que monotônicas em todo o período de tempo. Tanto a exponenciação positiva quanto o logaritmo em qualquer base.

Afinal de contas, todo mundo vai sacar onde deveria ter comprado, onde deveria ter vendido, se o histórico da taxa já existe - comprar na baixa e vender na alta. Transformações com uma função monotônica preservam a localização dos extremos, isso é suficiente.

Esta transformação irá de fato manter os extremos locais no lugar. Há apenas uma função que será capaz de identificá-los - o ZigZag com um joelho de zero minas.

Os extremos locais identificados através de um ZigZag com um tamanho diferente do joelho da mina (a variação mínima do preço relativo entre os extremos) ou não-SigZag (qualquer outra função), não coincidirão após a multiplicação pela função monotônica.


O ZigZag zero invariante em sua proposta de transformação, infelizmente, não permite que a série modificada retorne à série original. Portanto, a transformação não pode deixar de alterar o resultado da TC para todas as funções monótonas.


Entretanto, para algumas funções específicas, a transformação inversa é possível. Eu mencionei a função constante. É bastante elementar lá.

Você apontou para um exemplo mais geral - a multiplicação por uma função linear (no tempo). Entretanto, lá você precisa ter pelo menos um pequeno (onde há pelo menos dois extremos locais) intervalo da série de preços original para uma transformação inversa.


Ao mesmo tempo, na realidade não temos tal intervalo de séries de preços iniciais. Isto mesmo se deixarmos de lado a interpretação econômica não totalmente clara de tal transformação. Talvez a multiplicação por uma função linear seja uma inflação oculta de um dos ativos.


Em suma, infelizmente, não há como generalizar a multiplicação através de uma constante. Mas a idéia foi muito interessante, obrigado.

 
Renat Akhtyamov:

Ele tem um ponto...

ele está certo.