Alcuni segni dei TC giusti - pagina 9

 
Petros Shatakhtsyan:

Perché è fuori tema?

Quando aumentiamo il prezzo o lo moltiplichiamo per una costante, la natura del movimento del prezzo non cambia.

Forse ho interpretato male il "test di stabilità". Se si tratta di valutare la robustezza della ST, allora fuori tema.

 
fxsaber:

Per quanto riguarda il flipping e anche lo shuffling, voglio fare qualche ricerca.

Nei commenti è stato suggerito di pensare al comportamento del TS dopo l'inversione temporale - i tick vanno nella direzione opposta (dal futuro al passato), come se il rewind fosse attivato.

Lì potete anche leggere, su quali simboli l'inversione può non influenzare il risultato del TS, e per quali è un serio cambiamento dei modelli di mercato.

Fortunatamente, i simboli forex non dovrebbero, in teoria, distruggere i modelli di mercato con questa inversione temporale. Ho trovato interessante testare questo su uno dei miei TS.


In primo luogo, il codice di inversione delle serie di tick in 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;  
}


Sulla base di questa funzione viene allegato lo script che crea il simbolo invertito. Ci lavoreremo. I risultati sono i seguenti.


Il miglior passaggio dell'ottimizzatore sul simbolo dritto.


Lo stesso passaggio sul simbolo del tempo invertito.


Nessuna inferenza.

File:
 

fxsaber:

Lì si può anche leggere su quali simboli l'inversione può non influenzare il risultato del TS, e per quali è un serio cambiamento nei modelli di mercato.

Non è affatto sorprendente. Soprattutto se si fa trading su indicatori/segnali. L'ordine inverso delle zecche, disegna un quadro diverso. Il che porta gli indicatori a dare più/meno segnali di entrata/uscita.
Questa è la cosa più semplice che mi viene in mente. Ma se si scava più a fondo, ci saranno molti dettagli. E tutto a causa del cambiamento dei modelli di tick.

 
Konstantin Nikitin:

Niente di sorprendente. Soprattutto quando si fa trading su indicatori/segnali. Invertire l'ordine delle zecche, disegna un'immagine diversa. Il che porta gli indicatori a dare più/meno segnali di entrata/uscita.
Questa è la cosa più semplice che mi viene in mente. Ma se si scava più a fondo, si vedono molte sfumature. E tutto a causa del cambiamento dei modelli di tick.

È come se la voce fosse stata presa fuori dal contesto. Devi aver avuto delle conclusioni prima di questo. Finora non ho capito nulla da queste frasi.

 
Nikolai Semko:
Aggiungerei la cosa principale:
  • non ha parametri dipendenti dal periodo.
  • il funzionamento del TS non dipende dal timeframe del grafico corrente
  • il funzionamento di TS non dipende dal simbolo-strumento
  • l'intera impostazione di TS - è solo un'impostazione di gestione del rischio (la dimensione del deposito utilizzato)

Cantastorie...

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

Cantastorie...

Non ha tutti i torti...

molto probabilmente in tutto e guardare senza fiato la reazione... in silenzio...

ma vorrei continuare il banchetto, per così dire.

;)

 
Renat Akhtyamov:

Non ha tutti i torti...

probabilmente in tutto e senza fiato per una reazione... in silenzio.

ma vorrei continuare il banchetto, per così dire.

;)

Solo Martingale. Perfetto.

 
fxsaber:

...

Per esempio, prendiamo EURUSD. Ha eseguito il TS, ottenendo un certo numero di voci.

Poi abbiamo creato il simbolo 100/EURUSD. Poi abbiamo eseguito il TS. Le voci dovrebbero coincidere con quelle originali.

Se questo non accade (99%), il TS non è scritto correttamente.

Non capisco come TS dovrebbe reagire ai simboli presi in qualche misura.

Dovrei chiarirlo. Per 100/EURUSD gli ingressi e le uscite dovrebbero scambiarsi o cambiare la direzione di apertura della transazione (vendere invece di comprare). Il segno di cambiamento del valore inverso è opposto nello stesso intervallo di tempo. Quali trasformazioni sono appropriate - penso quelle monotoniche sull'intero arco di tempo. Sia la moltiplicazione positiva che il logaritmo per qualsiasi base.

Dopo tutto, tutti disegneranno dove avrebbero dovuto comprare, dove avrebbero dovuto vendere, se la storia del tasso esiste già - comprare ai minimi e vendere ai massimi. Le trasformazioni con una funzione monotona conservano la posizione degli estremi, questo è sufficiente.

 
Vladimir:

Dovremmo chiarire. Per 100/EURUSD le entrate e le uscite dovrebbero essere invertite o la direzione di apertura del trade dovrebbe essere invertita (vendere invece di comprare).

Certo, la direzione cambierà, ma non il tempo.

Il segno del cambiamento nella direzione opposta allo stesso intervallo di tempo. Quali trasformazioni sono appropriate - penso quelle monotoniche sull'intero arco di tempo. Sia l'esponenziazione positiva che il logaritmo su qualsiasi base.

Dopo tutto, tutti disegneranno dove avrebbero dovuto comprare, dove avrebbero dovuto vendere, se la storia del tasso esiste già - comprare ai minimi e vendere ai massimi. Le trasformazioni con una funzione monotona conservano la posizione degli estremi, questo è sufficiente.

Questa trasformazione manterrà effettivamente gli estremi locali. C'è solo una funzione che sarà in grado di identificarli - lo ZigZag con un ginocchio zero min.

Gli estremi locali identificati attraverso uno ZigZag con una dimensione diversa del ginocchio min (il minimo cambiamento di prezzo relativo tra gli estremi) o non-SigZag (qualsiasi altra funzione), non coincideranno dopo la moltiplicazione per la funzione monotonica.


L'invariante zero ZigZag nella trasformazione da te proposta, purtroppo, non permette alla serie modificata di tornare alla serie originale. Quindi la trasformazione non può che cambiare il risultato di TC per tutte le funzioni monotone.


Tuttavia, per alcune funzioni specifiche la trasformazione inversa è possibile. Ho menzionato la costante di funzione. Lì è abbastanza elementare.

Hai indicato un esempio più generale - la moltiplicazione per una funzione lineare (nel tempo). Tuttavia, lì è necessario avere almeno un piccolo (dove ci sono almeno due estremi locali) intervallo della serie originale dei prezzi per una trasformazione inversa.


Allo stesso tempo, in realtà non abbiamo un tale intervallo di serie di prezzi iniziali. Questo anche se lasciamo da parte l'interpretazione economica non del tutto chiara di tale trasformazione. Forse la moltiplicazione per una funzione lineare è un'inflazione nascosta di uno dei beni.


Tutto sommato, purtroppo, non c'è modo di generalizzare sulla moltiplicazione per una costante. Ma l'idea era molto interessante, grazie.

 
Renat Akhtyamov:

Non ha tutti i torti...

è giusto.
Motivazione: