Indicatori multi timeframe - pagina 18

 

Oscillatore Forex_Off_Trend

Uno degli oscillatori più accurati per determinare il cambiamento di tendenza è il

Oscillatore Forex_Off_Trend. L'ultima versione che ho ricevuto la settimana scorsa si chiama ForexTrend_v2 che è una versione con istogramma. Ero molto entusiasta di questo sviluppo, ma il nuovo non è affatto buono. Si ridipinge terribilmente, ma se riusciamo a sistemarlo, potrebbe essere un ottimo complemento come MTF-oscillatore.

Vi allego entrambi qui con la richiesta che lo guardiate e se potete metterlo in un formato MTF, ne sarei molto felice. Il formato dell'istogramma è eccellente in modo che si possa restringere la finestra e ancora vedere a colpo d'occhio quando la direzione sta cambiando.

Non vedo l'ora di sentirvi. Grazie in anticipo e auguri.

 

offtrend

sembra fondamentalmente lo stesso codice per me con il codice histo e il numero SSP predefinito cambiato. potrebbe solo voler chiamare quello histo o qualcosa invece di v2 imho.

Un po' più di separazione mi aiuta a dare un'occhiata veloce

else

{

ExtHBuffer1=0;

ExtHBuffer2=-1 //<----

e qui c'è un po' di merda di timeframe

come al solito attenzione ai problemi di ridisegno

//+------------------------------------------------------------------+

//| Copy and Pasted by Lowphat |

//| |

//+------------------------------------------------------------------+

#property copyright " "

#property link " "

#property indicator_separate_window

#property indicator_buffers 2

#property indicator_color1 Lime

#property indicator_color2 Red

#property indicator_maximum 1

#property indicator_minimum -1

extern int TimeFrame=30;

extern int SSP=7;

extern double Kmax=50.6;

double ExtMapBuffer1[];

double ExtMapBuffer2[];

int init()

{

SetIndexStyle(0,DRAW_HISTOGRAM,EMPTY,2);

SetIndexBuffer(0,ExtMapBuffer1);

SetIndexStyle(1,DRAW_HISTOGRAM,EMPTY,2);

SetIndexBuffer(1,ExtMapBuffer2);

switch(TimeFrame)

{

case 1 : string TimeFrameStr="Period_M1"; break;

case 5 : TimeFrameStr="Period_M5"; break;

case 15 : TimeFrameStr="Period_M15"; break;

case 30 : TimeFrameStr="Period_M30"; break;

case 60 : TimeFrameStr="Period_H1"; break;

case 240 : TimeFrameStr="Period_H4"; break;

case 1440 : TimeFrameStr="Period_D1"; break;

case 10080 : TimeFrameStr="Period_W1"; break;

case 43200 : TimeFrameStr="Period_MN1"; break;

default : TimeFrameStr="Current Timeframe";

}

string short_name;

short_name=("FxTrend("+TimeFrame+")");

IndicatorShortName(short_name);

SetIndexLabel(0,short_name);

}

//----

return(0);

int start()

{

datetime TimeArray[];

int i,limit,y=0,counted_bars=IndicatorCounted();

// Plot defined time frame on to current time frame

ArrayCopySeries(TimeArray,MODE_TIME,Symbol(),TimeFrame);

limit=Bars-counted_bars;

limit=Bars-counted_bars;

for(i=0,y=0;i<limit;i++)

{

if (Time<TimeArray[y]) y++;

ExtMapBuffer1=iCustom(NULL,TimeFrame,"ForexTrend Histo",SSP,Kmax,0,y);

ExtMapBuffer2=iCustom(NULL,TimeFrame,"ForexTrend Histo",SSP,Kmax,1,y);

}

return(0);

}
 
lowphat:
mi sembra fondamentalmente lo stesso codice con il codice histo e il numero di default SSP cambiato. potrebbe semplicemente voler chiamare quello histo o qualcosa invece di v2 imho.

Un po' più di separazione mi aiuta per gli sguardi veloci

else

{

ExtHBuffer1=0;

ExtHBuffer2=-1 //<----

e qui c'è un po' di merda di timeframe

come al solito attenzione ai problemi di ridisegno

//+------------------------------------------------------------------+

//| Copy and Pasted by Lowphat |

//| |

//+------------------------------------------------------------------+

#property copyright " "

#property link " "

#property indicator_separate_window

#property indicator_buffers 2

#property indicator_color1 Lime

#property indicator_color2 Red

#property indicator_maximum 1

#property indicator_minimum -1

extern int TimeFrame=30;

extern int SSP=7;

extern double Kmax=50.6;

double ExtMapBuffer1[];

double ExtMapBuffer2[];

int init()

{

SetIndexStyle(0,DRAW_HISTOGRAM,EMPTY,2);

SetIndexBuffer(0,ExtMapBuffer1);

SetIndexStyle(1,DRAW_HISTOGRAM,EMPTY,2);

SetIndexBuffer(1,ExtMapBuffer2);

switch(TimeFrame)

{

case 1 : string TimeFrameStr="Period_M1"; break;

case 5 : TimeFrameStr="Period_M5"; break;

case 15 : TimeFrameStr="Period_M15"; break;

case 30 : TimeFrameStr="Period_M30"; break;

case 60 : TimeFrameStr="Period_H1"; break;

case 240 : TimeFrameStr="Period_H4"; break;

case 1440 : TimeFrameStr="Period_D1"; break;

case 10080 : TimeFrameStr="Period_W1"; break;

case 43200 : TimeFrameStr="Period_MN1"; break;

default : TimeFrameStr="Current Timeframe";

}

string short_name;

short_name=("FxTrend("+TimeFrame+")");

IndicatorShortName(short_name);

SetIndexLabel(0,short_name);

}

//----

return(0);

int start()

{

datetime TimeArray[];

int i,limit,y=0,counted_bars=IndicatorCounted();

// Plot defined time frame on to current time frame

ArrayCopySeries(TimeArray,MODE_TIME,Symbol(),TimeFrame);

limit=Bars-counted_bars;

limit=Bars-counted_bars;

for(i=0,y=0;i<limit;i++)

{

if (Time<TimeArray[y]) y++;

ExtMapBuffer1=iCustom(NULL,TimeFrame,"ForexTrend Histo",SSP,Kmax,0,y);

ExtMapBuffer2=iCustom(NULL,TimeFrame,"ForexTrend Histo",SSP,Kmax,1,y);

}

return(0);

}

Grazie per la tua risposta Lowphat, ma dato che non sono un programmatore, ha poco senso per me purtroppo. - Sono d'accordo con i tuoi sentimenti riguardo al V2 = Istogramma.

Qualche altro suggerimento, per favore?

 

ecco a te amico

Non ho avuto il tempo di testarlo ma penso che dovrebbe essere ok

 
ValeoFX:
Uno degli oscillatori più accurati per determinare il cambiamento di tendenza è l'

oscillatore Forex_Off_Trend

. L'ultima versione che ho ricevuto la settimana scorsa si chiama ForexTrend_v2 che è una versione con istogramma. Ero molto entusiasta di questo sviluppo, ma il nuovo non è affatto buono. Si ridipinge terribilmente, ma se riusciamo a sistemarlo, potrebbe essere un'ottima aggiunta come MTF-oscillatore.

Li allego entrambi qui con la richiesta che li guardiate e se potete metterli in un formato MTF, ne sarei molto felice. Il formato dell'istogramma è eccellente per poter restringere la finestra e vedere comunque a colpo d'occhio quando la direzione cambia.

Non vedo l'ora di sentirvi ragazzi. Grazie in anticipo e auguri.

Scusa se te lo dico, ma non capisco che tu possa fare un'affermazione del genere. Ripercorre il passato fino a 6 barre...e tu lo chiami uno degli indicatori più precisi per determinare il trend?!?!....Ha persino battuto la precisione dell'indicatore Yu4rik....

saluti...iGoR

File:
forex2.zip  119 kb
 
iGoR:
Scusa se te lo dico, ma non capisco come tu possa fare un'affermazione del genere. Rielabora il passato fino a 6 barre...e tu lo chiami uno degli indicatori più precisi per determinare il trend?!?!....Ha addirittura battuto la precisione dell'indicatore Yu4rik.... per quanto riguarda...iGoR

Igor, il repainting può essere così, tuttavia, in tempo reale è molto preciso. Quindi non si può nemmeno fare il backtest.

Ora, per quanto riguarda la tua affermazione che ha "persino battuto la precisione di Yu4rik", stai dicendo che è più preciso di Yu4rik? Scusa, ma sono un po' confuso qui.

 
lowphat:
Qui ya go bud non ho avuto il tempo di testarlo ma penso che dovrebbe essere ok

Molto apprezzato, Lowphat. Lo testerò diligentemente e ti riferirò.

Auguri.

 

Le ultime barre stanno continuando a cambiare colore, può essere sicuro di farvi perdere tempo.

 
ValeoFX:
Igor, il repainting può essere così, tuttavia, in tempo reale è molto preciso. Quindi non si può neanche fare il backtest. Ora per quanto riguarda la tua affermazione che ha "anche battuto la precisione del Yu4rik", stai dicendo che è più preciso del Yu4rik? Scusa, ma sono un po' confuso qui.

In tempo reale ridisegna il passato fino a 6 barre. Ciò significa che se mettete questo indicatore su un grafico giornaliero, può ridisegnare il passato fino a 6 giorni.

Nella mia cartella zip potete vedere cosa ha fatto in tempo reale. Se avete un indicatore che ridisegna il passato solo con 1 barra è inutile.

Lavorare con un indicatore del genere è la stessa cosa che dire ....I WOULD HAVE go long 6 bars ago (ma questo è dopo i fatti) e un po' più tardi diresti I WOULD HAVE exitited 6 bars ago.

In questo modo avresti avuto un hitrate del 100%....

L'indicatore YU4rik è anche usabile perché ridisegna fino a 4 o 5 barre fa. Quindi quando ho detto che ha battuto lo YU4rik significa che è ancora più inaffidabile.

Quell'indicatore è come una MA che si sposta indietro nel tempo (senno di poi).

Quindi quell'indicatore non è accurato è cr*p.

saluti...iGoR

 
iGoR:
In tempo reale ridisegna il passato fino a 6 barre. Questo significa che se metti questo indicatore su un grafico giornaliero, può ridisegnare il passato fino a 6 giorni.

Nella mia cartella zip potete vedere cosa ha fatto in tempo reale. Se hai un indicatore che ridisegna il passato solo con 1 barra è inutile.

Lavorare con un indicatore del genere è lo stesso che dire ....I WOULD HAVE go long 6 barre fa (ma questo è dopo i fatti) e un po' più tardi diresti I WOULD HAVE exitited 6 barre fa.

In questo modo avresti avuto un hitrate del 100%....

L'indicatore YU4rik è anche usabile perché ridisegna fino a 4 o 5 barre fa. Quindi quando ho detto che ha battuto lo YU4rik significa che è ancora più inaffidabile.

Quell'indicatore è come una MA che si sposta indietro nel tempo (senno di poi).

Quindi quell'indicatore non è accurato, è una merda.

saluti...iGoR

Grazie iGoR per questa spiegazione. Molto apprezzato.

Motivazione: