Indicatori: Canale Donchian

 

Canale Donchian:

Il Donchian Channel è un indicatore di volatilità che si basa sul calcolo dell'intervallo di prezzo corrente utilizzando i prezzi più alti e più bassi recenti.

Canale Donchian

Author: Nikolay Kositsin

 

Dobbiamo correggere 2 linee, per mettere le linee low al posto di quelle high evidenziate in rosso

caso HIGH_LOW_OPEN:

SsMax=(open[iHighest(open,DonchianPeriod,bar)]+high[iHighest(high,DonchianPeriod,bar)])/2;
SsMin=(open[iLowest(open,DonchianPeriod,bar)]+low[iLowest(
high,DonchianPeriod,bar)])/2;
break;

case HIGH_LOW_CLOSE:
SsMax=(close[iHighest(close,DonchianPeriod,bar)]+high[iHighest(high,DonchianPeriod,bar)])/2;
SsMin=(close[iLowest(close,DonchianPeriod,bar)]+low[iLowest(high,DonchianPeriod,bar)])/2;
break;
 
Stonev:

Sì, credo che questo abbia più senso.
 

Una strategia di breakout di base per il Forex

Punti di discussione:

  • Suggerimenti per il Forex per trovare i livelli di supporto e resistenza.
  • Imparate a entrare nei breakout del Forex utilizzando i canali di Donchian.
  • Completate un piano di trading di breakout con ordini di stop.

Il mercato Forex è noto per le sue forti tendenze, che possono rendere il trading di una strategia di breakout un approccio efficace ai mercati. Di norma, il primo passo di qualsiasi strategia di breakout consiste nell'identificare i livelli chiave di supporto e resistenza per una coppia di valute. Oggi esamineremo l'utilizzo dei canali Donchian proprio a questo scopo, completando un setup di trading sulla coppia GBPUSD.

Iniziamo!


Trading sui canali di Donchian

I canali di Donchian possono essere applicati a qualsiasi grafico per estrapolare gli attuali livelli di supporto e resistenza. Lo fanno identificando chiaramente il massimo e il minimo su un grafico creato durante il numero di periodi selezionato. Qui sopra possiamo vedere i Canali Donchian applicati a un grafico GBPUSD a 4 ore, utilizzando un'impostazione a 20 periodi. Le linee del canale evidenziano i valori massimi e minimi correnti a 20 periodi, che possono essere utilizzati come supporto e resistenza nel trading di breakout. I trader di breakout in una tendenza al ribasso cercheranno che il prezzo rompa al di sotto del canale inferiore prima di creare nuove entrate nella direzione della tendenza. Lo stesso vale in un trend rialzista, dove i trader identificheranno il canale superiore come un'area potenziale per entrare nel mercato.

Dal momento che il prezzo della coppia GBPUSD è sceso fino a 346 pip nel mese di ottobre, molti trader vorranno individuare nuove entrate per vendere la coppia in caso di breakout verso i minimi. Con il minimo attuale già identificato dai canali Donchian a 1,5913, i trader possono iniziare a prepararsi per un breakout al di sotto di questo valore. Come illustrato di seguito, è possibile trovare un esempio di setup di breakout. Gli ordini di entrata per la vendita di GBPUSD possono essere piazzati a un minimo di un pip al di sotto del supporto, in modo che i trader entrino nel mercato in caso di breakout verso i minimi.


Impostazione del rischio

Come per ogni strategia, i trader di breakout dovrebbero incorporare degli stop nel loro trading. Utilizzando i canali Donchian, questo processo può essere reso molto semplice. Ricordate che la parte superiore del canale dei prezzi (che rappresenta il massimo del 20° periodo) funge da area di resistenza? In una tendenza al ribasso ci si aspetta che il prezzo faccia dei minimi più bassi e che rimanga al di sotto di questo valore. Se si crea un nuovo massimo, con una violazione del canale superiore, i trader vorranno uscire dalle loro posizioni. I trader possono anche decidere di seguire e spostare manualmente il loro ordine di stop per bloccare i profitti man mano che la tendenza continua. Un consiglio di trading che i trader di breakout possono utilizzare è quello di spostare questo stop preimpostato insieme al canale di prezzo decrescente man mano che l'operazione si muove a loro favore.

 

Forum sul trading, sui sistemi di trading automatizzati e sulla verifica delle strategie di trading

Indicatori: Canale Donchian

newdigital, 2014.01.18 07:34

Come utilizzare i Canali di Donchian (adattato dall'articolo di dailyfx)

  • Prima trovare il trend per determinare la tendenza
  • Imparate a entrare nei breakout del Forex utilizzando i canali di Donchian.
  • I canali possono essere utilizzati per seguire il vostro stop e bloccare i profitti.

Il mercato Forex è noto per le sue forti tendenze, che possono rendere il trading dei breakout dei livelli di supporto e resistenza un approccio efficace ai mercati. Per pianificare tali condizioni di mercato, oggi esamineremo una strategia di breakout in tre fasi utilizzando i Canali di Donchian.

Trovare la tendenza

Il primo passo per il trading di tendenza è trovare la tendenza! Ci sono molti modi per identificare le tendenze illustrate di seguito, ma uno dei più semplici è l'utilizzo della media mobile a 200 periodi (MVA). Per iniziare, aggiungete questo indicatore al vostro grafico e verificate se il prezzo si trova al di sopra o al di sotto della media. In questo modo determineremo la tendenza e il nostro orientamento di trading.

Alla luce delle informazioni di cui sopra, i trader dovrebbero cercare opportunità di acquisto per l'EURJPY nel suo attuale trend rialzista, dato che il prezzo è al di sopra della media. Inoltre, l'AUDNZD illustrato di seguito offre opportunità di vendita poiché la coppia ha un prezzo inferiore alla MVA a 200 periodi. Una volta ottenute queste informazioni, possiamo pianificare gli ingressi per un potenziale breakout.


Trading dei canali Donchian

I canali Donchian sono uno strumento tecnico che può essere applicato a qualsiasi grafico. Vengono utilizzati per individuare gli attuali livelli di supporto e resistenza identificando il prezzo più alto e quello più basso su un grafico, nel corso del numero di periodi selezionato. Per la strategia di oggi utilizzeremo 20 periodi, il che significa che i canali saranno utilizzati per identificare il massimo e il minimo del prezzo a 20 giorni.

Poiché il prezzo dell'EURJPY è scambiato al di sopra del 200 MVA, i trader vorranno identificare nuovi ingressi per acquistare la coppia in caso di breakout verso massimi più elevati. Con il nostro attuale massimo a 20 giorni identificato dai canali Donchian a 145,68, gli operatori possono impostare un ingresso per acquistare l'EURJPY un pip sopra questo valore.


Il processo di avvio delle posizioni di vendita in un trend discendente è esattamente l'opposto. Rivediamo ancora una volta il grafico giornaliero di AUD/NZD illustrato di seguito. Poiché il prezzo è al di sotto della MVA 200, i trader cercheranno di vendere la coppia nel caso in cui il prezzo crei un nuovo minimo a 20 giorni. Attualmente questo minimo si trova a .8775 e i trader possono cercare di avviare nuove posizioni di vendita sotto questo valore.


Impostazione del rischio e dei trailing stop

Quando si opera con qualsiasi strategia, è necessario definire gli stop e gestire il rischio. Quando si utilizzano i canali Donchian, questo processo può essere semplificato. Ricordate che i nostri canali di prezzo (che rappresentano il massimo o il minimo a 20 giorni) agiscono come un'area di supporto o di resistenza? In un trend rialzista, ci si aspetta che il prezzo si muova verso massimi più alti e che rimanga al di sopra di questo valore. Se il prezzo passa attraverso il canale inferiore, che rappresenta un nuovo minimo a 20 giorni, i trader vorranno uscire dalle posizioni lunghe. Al contrario, in una tendenza al ribasso, i trader vorranno piazzare ordini di stop all'attuale massimo di 20 giorni. In questo modo, i trader usciranno dalle posizioni short al raggiungimento di un nuovo massimo.

I trader possono anche utilizzare i canali di Donchian come meccanismo per tracciare i loro stop. Man mano che il trend prosegue, i trader possono spostare il loro stop insieme al canale designato. L'inseguimento di uno stop in questo modo consente di aggiornare lo stop con la posizione e di bloccare i profitti man mano che il trend prosegue.


 

Forum sul trading, sui sistemi di trading automatizzati e sulla verifica delle strategie di trading

Indicatori: Canale Donchian

newdigital, 2014.01.18 07:39

Dopo aver letto questo articolo (sopra) - puoi/possiamo aprire il grafico D1, allegare l'indicatore Donchian Channel (vedi il primo post di questo thread), allegare la MA con periodo 200/metodo simple.apply to close (questo indicatore è quello di default in Metatrader 5) - e possiamo fare un po' di pratica (quando il mercato sarà aperto). Dovreste avere dei grafici simili dopo aver collegato questi due indicatori:



Dopodiché, rileggete questo articolo utilizzando i vostri grafici Metatrader.

Queste sono tutte le notizie


 

Cari tutti,

Grazie per aver reso disponibile il codice dei canali Donchian per la MT5:

https://www.mql5.com/it/code/402?utm_campaign=MetaTrader+5+Terminale&utm_medium=special&utm_source=mt5terminal+codebase

Questo codice sarebbe disponibile per la MT4?

Esistono effettivamente dei codici per i canali Donchain disponibili per la MT4, ma non sono uguali a questo in quanto mi interessa l'impostazione"Tipo di punti estremi":

enum Applied_Extrem //Tipo di punti estremi
{
HIGH_LOW,
HIGH_LOW_OPEN,
HIGH_LOW_CLOSE,
OPEN_HIGH_LOW,
CLOSE_HIGH_LOW
};


Grazie mille per la risposta.

Luigi

Donchian Channels
Donchian Channels
  • voti: 19
  • 2011.08.05
  • Nikolay Kositsin
  • www.mql5.com
Donchian Channels is a volatility indicator based on the calculation of the current price range with using the recent highest and lowest prices.
 

Qualcuno sa perché ci vuole così tanto per il backtest quando si usa questo indicatore per creare un expert advisor?

Chiamo questo indicatore con "iCustom()", e non ci sono errori e il robot fa ciò che è previsto, ma il tempo di backtesting è "davvero lungo". È molto più lungo di qualsiasi altro robot che ho creato, non sono sicuro del perché.

Grazie!

 

Perché richiama 20 (di solito) candele ad ogni tick.

Dovrebbe essere ovvio che questo richiede tempo.

 

Questo indicatore funziona correttamente solo se il margine è impostato su 0, i colori non sono validi, tutto è obsoleto.


Ecco una versione riveduta e ridotta del codice. 86 righe invece di 232.

//+------------------------------------------------------------------+
//|DCCH.mq5 |
//|Copyright © 2018 Ing. Otto Pauser |
//| https://www.mql5.com/it/users/kronenchakra |
//+------------------------------------------------------------------+
#property copyright     "Copyright © 2019 Ing. Otto Pauser"
#property link          "https://www.mql5.com/it/users/kronenchakra"
#property version       "1.0"
#property description   "DCCH - Donchian Channel corrected and simplified"

#property indicator_chart_window
#property indicator_buffers 3
#property indicator_plots   3

//+------------------------------------------------------------------+
input int   inp_Period     =           20;   // Periodo
input int   inp_Offset     =            0;   // Offset (punti)
input int   inp_Shift      =            0;   // Turno
input int   inp_LineWidth  =            2;   // Larghezza di linea
input color inp_lineColor  = clrSteelBlue;   // Colore della linea
//+------------------------------------------------------------------+

double buUpper[];
double buMidle[];
double buLower[];

double upper,lower,offset;
int    first,bar;

//+------------------------------------------------------------------+
void OnInit()
{
   InitBuffer(buUpper,"Donchian Upper");
   InitBuffer(buMidle,"Donchian Center");
   InitBuffer(buLower,"Donchian Lower");
   IndicatorSetString(INDICATOR_SHORTNAME,"Donchian("+IntegerToString(inp_Period)+")");
   offset=inp_Offset*_Point;
}

//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
{
   if(rates_total<inp_Period+1) return(0);

   first=(prev_calculated==0)?inp_Period:prev_calculated-1;

   for(bar=first; bar<rates_total; bar++)
      {
         upper=high[ArrayMaximum(high,bar-inp_Period+1,inp_Period)];
         lower=low [ArrayMinimum(low ,bar-inp_Period+1,inp_Period)];
         buUpper[bar]=upper+offset;
         buLower[bar]=lower-offset;
         buMidle[bar]=(upper+lower)*0.5;
      }

   return(rates_total);
}

//+------------------------------------------------------------------+
//| potrebbe essere esternalizzato a un file .mqh|
//+------------------------------------------------------------------+
void InitBuffer(double &buffer[], string plotlabel)
{
   static int bufferindex=0;
   SetIndexBuffer     (bufferindex,buffer,INDICATOR_DATA);

   PlotIndexSetInteger(bufferindex,PLOT_DRAW_TYPE ,DRAW_LINE);
   PlotIndexSetInteger(bufferindex,PLOT_LINE_STYLE,STYLE_SOLID);
   PlotIndexSetInteger(bufferindex,PLOT_LINE_WIDTH,inp_LineWidth);
   PlotIndexSetInteger(bufferindex,PLOT_LINE_COLOR,inp_lineColor);
   PlotIndexSetString (bufferindex,PLOT_LABEL     ,plotlabel);
   PlotIndexSetInteger(bufferindex,PLOT_SHIFT     ,inp_Shift);
   PlotIndexSetInteger(bufferindex,PLOT_DRAW_BEGIN,inp_Period-1);
   PlotIndexSetDouble (bufferindex,PLOT_EMPTY_VALUE,EMPTY_VALUE);

   bufferindex++;
}
File:
DCCH.mq5  7 kb
 

Sono un principiante assoluto nel portare gli indicatori sugli esperti, qualcuno potrebbe aiutarmi ad azzeccare la codifica per richiamare le bande superiore, centrale e inferiore?


Grazie ragazzi e scusate per la domanda da noob, è la prima volta che lo faccio.