Numero della barra del segnale per l’indicatore di riverniciatura: spostamento della barra da utilizzare per il segnale?

Caratteristiche e parametri funzionali degli esperti di expforex.com
Vantaggi degli esperti di pronto intervento rispetto ai programmatori/liberi professionisti.
Caratteristiche e parametri funzionali degli esperti di expforex.com
Vantaggi degli esperti di pronto intervento rispetto ai programmatori/liberi professionisti.

Miniatura del video Forex

Descrizione

Esaminiamo esempi di come si comportano gli indicatori (indicators), concentrandoci su quelli che disegnano (draw) e quelli che non lo fanno. Ad esempio, considera come un indicatore a barra (Candle) potrebbe funzionare diversamente rispetto ad altri.

Differenze nei segnali nella programmazione. Utilizzo del parametro shift (shift)

Per comprendere meglio come funzionano gli indicatori (indicators), è utile esplorare esempi sia di indicatori che disegnano (drawing indicators) sia di indicatori che non disegnano (non-drawing indicators).

Indicatori che disegnano (Repaint) sono quelli che tracciano direttamente sul grafico dei prezzi (price chart), mentre indicatori che non disegnano (non-drawing indicators) mostrano il loro output in una finestra separata.?????? NO

Indicatori che disegnano (Drawing Indicators) o Indicatori che ridisegnano (Redrawing Indicators) sono strumenti tecnici utilizzati nel trading che modificano i loro segnali (signals) (come frecce) o alterano la direzione del segnale (signal direction) per fornire indicazioni più accurate sui bar (bars) (Candlestick) attuali o precedenti.

bar = Barra = Candlestick:

Barra e Candlestick

Questi indicatori (indicators) hanno la capacità di ridisegnare i loro segnali (signals), il che può essere considerato sia una violazione dell’integrità del trading sia una pratica ingannevole.

Alcuni indicatori (indicators) ridisegnano intenzionalmente i loro segnali (signals) per migliorare l’aspetto visivo, rendendo il grafico più esteticamente piacevole.

Altri indicatori (indicators) eseguono il ridisegno come parte dei loro calcoli matematici per migliorare l’accuratezza e l’affidabilità dei segnali che generano.

Tuttavia, è un comportamento normale per tutti gli indicatori (indicators) disegnare sul bar (Bar) 0 o sul bar (Bar) attuale. Questo disegno iniziale assicura che l’indicatore sia correttamente allineato con i dati di mercato più recenti.

Esploriamo le ragioni sottostanti per cui gli indicatori (indicators) ridisegnano i loro segnali (signals) e le implicazioni che ciò ha per le strategie di trading.

La differenza nei segnali tra questi due tipi di indicatori può essere significativa, quindi comprendere il loro comportamento è cruciale quando si programmano strategie di trading (trading strategies).

Un modo per influenzare il comportamento degli indicatori (indicators) è utilizzare il parametro shift (shift parameter), che permette di spostare l’output dell’indicatore avanti o indietro nel tempo.

Sperimentando con diversi valori del parametro shift (shift parameter), puoi perfezionare i tuoi indicatori (indicators) per allinearli meglio con la tua strategia di trading (trading strategy), aumentando così le tue possibilità di successo nel mercato.

E puoi verificare tali indicatori con l’aiuto dello strategy tester utilizzando il nostro Expert Advisor universale:

EA The xCustomEA: Universal Trading Advisor for iCustom Indicators. Custom Strategy Builder

Oppure nello strategy tester utilizzando il nostro Simulator:

Forex Tester Pad è un simulatore di trading Forex per lo strategy tester. Trading utilizzando indicatori.

Prefazione

Questo articolo è stato scritto su richiesta dei nostri partner.

Quando ordini la programmazione di Expert Advisor (Expert Advisor programming), puoi regolare il bar del segnale (signal bar) in tutti i miei advisor.

È comune trovare reclami online secondo cui alcuni Expert Advisors (Expert Advisors) non funzionano correttamente a causa dei loro indicatori (indicators).

Spiegherò questi segnali in dettaglio e dimostrerò il contrario: tutti gli indicatori disegnano (indicators draw), e devono semplicemente essere usati correttamente.

Esiste una versione video di questo articolo, ma prima di guardarla, consiglio di leggere la versione testuale per una comprensione più approfondita.

Shift (0,1,2…..) Numero di Barra (Candle)

Questo parametro rappresenta il numero della bar (Bar) da cui i tuoi indicatori (indicators) prenderanno un segnale.

Quando ordini un Expert Advisor (Expert Advisor), devi specificare i seguenti parametri di definizione del segnale: aprire un’operazione immediatamente dopo il segnale, oppure attendere che il segnale si formi su una bar chiusa (closed Bar) e aprire un’operazione solo all’apertura della bar successiva (next Bar).

A causa dei loro algoritmi, alcuni indicatori (indicators) hanno una definizione chiara: su quale bar (Bar) viene dato il segnale?

Se parliamo della chiarezza e della corretta esecuzione dell’ordine, allora l’operazione deve essere elaborata solo su una bar chiusa (closed Bar), cioè parametro shift=1.

Se è necessario aprire una DEAL immediatamente al verificarsi di un segnale sulla bar (Bar) corrente e l’indicatore (indicator) lo permette, è necessario impostare shift=0.

Expert Advisor

L’EA è scritto utilizzando il nostro template per la scrittura di un EA. Tutte le funzioni dell’advisor sono descritte in questa pagina: Funzioni dell’Advisor Forex.

Puoi scaricare il pacchetto dal link Signal Bar Pacchetto di Test

1. Indicatore Moving Average

L’indicatore standard del terminale MT4 include il periodo di media, i prezzi mediati e il tipo di media nelle impostazioni.

Strategia di Trading: Incrocio delle medie. L’intersezione della MA lenta e della MA veloce.

Codice della Strategia:

double ExampleMA=iMA(Symbol(),0,20,0,MODE_SMA,PRICE_CLOSE,shift); // Chiamata MA Example
double ExampleMA2=iMA(Symbol(),0,50,0,MODE_SMA,PRICE_CLOSE,shift); // Chiamata MA Example
double ExampleMA23=iMA(Symbol(),0,20,0,MODE_SMA,PRICE_CLOSE,shift+1); // Chiamata MA Example
double ExampleMA22=iMA(Symbol(),0,50,0,MODE_SMA,PRICE_CLOSE,shift+1); // Chiamata MA Example

if(ExampleMA23<ExampleMA22 && ExampleMA>ExampleMA2) Sig=1;
if(ExampleMA23>ExampleMA22 && ExampleMA<ExampleMA2) Sig=2;

     

Esempi di Lavoro con Shift = 0

Incrocio Indicatori - Numero di Bar per Indicatore Repaint: Shift della Bar da Usare per il Segnale?

Esempi di Lavoro con Shift = 1

Indicatore Moving Average 2 - Numero di Bar per Indicatore Repaint: Shift della Bar da Usare per il Segnale?

Spiegazione: Questo indicatore (indicator) non disegna (draw), permettendone l’uso con qualsiasi shift (shift).

Esempio Video:

Miniatura del video Forex

2. Indicatore Cross

Un indicatore (indicator) personalizzato basato sulla strategia di incrocio MA con funzionalità aggiuntive. Disegna in modo prominente con precisione. L’incrocio su 1 bar (Bar) disegna una freccia sul bar (Bar) 0 e la ridisegna continuamente.

Strategia di Trading: Trading delle Frecce

Codice della Strategia:

int Sig=0;
  if(shift!=-1)
  {
    double UP=iCustom(Symbol(),0,"cross",0,shift);
    double DN=iCustom(Symbol(),0,"cross",1,shift);
  }
  if(shift==-1)
    for(int i=1;i<=100;i++)
    {
      UP=iCustom(Symbol(),0,"cross",0,i);
      DN=iCustom(Symbol(),0,"cross",1,i);
      if(UP!=EMPTY_VALUE || DN!=EMPTY_VALUE) break;
    }

  if(UP!=EMPTY_VALUE){Sig=1;}
  if(DN!=EMPTY_VALUE){Sig=2;}

Esempi di Lavoro con Shift = 0

Indicatore Moving Average - Numero di Bar per Indicatore Repaint: Shift della Bar da Usare per il Segnale?

Esempi di Lavoro con Shift = 1

Indicatore Cross 1 - Numero di Bar per Indicatore Repaint: Shift della Bar da Usare per il Segnale?

Esempi di Lavoro con Shift = -1

Indicatore CurrencyPowerMeter - Numero di Bar per Indicatore Repaint: Shift della Bar da Usare per il Segnale?

Spiegazione: Questo indicatore (indicator) disegna in modo prominente, e lo sviluppatore ridisegna deliberatamente il segnale. Pertanto, è rischioso utilizzare questo indicatore (indicator) come indicatore di segnale (signal indicator).

Esempio Video:

Miniatura del video Forex

3. Indicatore CurrencyPowerMeter

Un indicatore (indicator) personalizzato che misura la forza delle valute. Questo indicatore (indicator) opera utilizzando oggetti, quindi shift (shift) è irrilevante. La strategia di trading (trading strategy) per questo indicatore (indicator) si basa sul prelievo del valore non dal buffer dell’indicatore (indicator buffer) ma dall’indicazione dell’oggetto sul grafico.

Strategia di Trading: Trading della differenza tra le forze delle valute

Codice della Strategia:

double EUR_HOUR[1];
  double GBP_HOUR[1];
  double AUD_HOUR[1];
  double NZD_HOUR[1];
  double USD_HOUR[1];
  double CAD_HOUR[1];
  double CHF_HOUR[1];
  double JPY_HOUR[1];

  double PervayaValuta;
  double VtorayaValuta;
  string note=" Impostazioni di Autenticazione ==";
  string username = "";
  string password = "";
  double trend;
  string DATATRend;

  trend=iCustom(Symbol(),0,"CurrencyPowerMeter",0,0);

  EUR_HOUR[0]=StringToDouble(ObjectDescription("CPMEUR_Str_h"));
  GBP_HOUR[0]=StringToDouble(ObjectDescription("CPMGBP_Str_h"));
  AUD_HOUR[0]=StringToDouble(ObjectDescription("CPMAUD_Str_h"));
  NZD_HOUR[0]=StringToDouble(ObjectDescription("CPMNZD_Str_h"));
  USD_HOUR[0]=StringToDouble(ObjectDescription("CPMUSD_Str_h"));
  CAD_HOUR[0]=StringToDouble(ObjectDescription("CPMCAD_Str_h"));
  CHF_HOUR[0]=StringToDouble(ObjectDescription("CPMCHF_Str_h"));
  JPY_HOUR[0]=StringToDouble(ObjectDescription("CPMJPY_Str_h"));

  if(StringSubstr(Symbol(),0,3)=="USD") PervayaValuta=USD_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="GBP") PervayaValuta=GBP_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="EUR") PervayaValuta=EUR_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="AUD") PervayaValuta=AUD_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="NZD") PervayaValuta=NZD_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="CAD") PervayaValuta=CAD_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="CHF") PervayaValuta=CHF_HOUR[0];
  if(StringSubstr(Symbol(),0,3)=="JPY") PervayaValuta=JPY_HOUR[0];

  if(StringSubstr(Symbol(),3,3)=="USD") VtorayaValuta=USD_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="GBP") VtorayaValuta=GBP_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="EUR") VtorayaValuta=EUR_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="AUD") VtorayaValuta=AUD_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="NZD") VtorayaValuta=NZD_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="CAD") VtorayaValuta=CAD_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="CHF") VtorayaValuta=CHF_HOUR[0];
  if(StringSubstr(Symbol(),3,3)=="JPY") VtorayaValuta=JPY_HOUR[0];

  if(PervayaValuta - VtorayaValuta > 0) return(1);
  if(PervayaValuta - VtorayaValuta < 0) return(2);
  return(0);

Esempi di Lavoro

Incrocio Indicatori - Numero di Bar per Indicatore Repaint: Shift della Bar da Usare per il Segnale?

Spiegazione: Questo indicatore (indicator) non ha buffer dell’indicatore (indicator buffers) ed è basato su oggetti. Pertanto, il bar del segnale (signal bar) non importa. Tali indicatori (indicators) non possono essere testati o ottimizzati e funzionano solo in tempo reale.

Esempio Video:

Miniatura del video Forex

4. Indicatore Fiji Trend

Un indicatore (indicator) personalizzato che lavora su segnali MA e ATR sotto forma di frecce. Non disegna (draw) l’indicatore, ma con un piccolo trucco, l’indicatore (indicator) prende i dati dai bar chiusi (closed Bars) ma posiziona una freccia sul bar (Bar) 0 attuale. È un’illusione di inganno.

Strategia di Trading: Trading sulle frecce dell’indicatore (indicator)

Codice della Strategia:

int Sig=0;

double DNSignal=iCustom(Symbol(),0,"Fiji Trend",3,shift); // Esempio di chiamata a un indicatore personalizzato
double UPSignal=iCustom(Symbol(),0,"Fiji Trend",2,shift); // Esempio di chiamata a un indicatore personalizzato
double DNTrend=iCustom(Symbol(),0,"Fiji Trend",1,shift); // Esempio di chiamata a un indicatore personalizzato
double UPTrend=iCustom(Symbol(),0,"Fiji Trend",0,shift); // Esempio di chiamata a un indicatore personalizzato

// Specifica i segnali per l'apertura:
if( UPSignal!=EMPTY_VALUE) Sig=1;
if( DNSignal!=EMPTY_VALUE) Sig=2;

Esempi di Lavoro con Shift = 0

Esempi di Lavoro con Shift = 1

Spiegazione: Questo indicatore (indicator) non disegna (draw). Tuttavia, posiziona i segnali utilizzando il trucco sopra menzionato. È uno dei pochi indicatori (indicators) che forniscono segnali ragionevolmente buoni.

Esempio Video:

Miniatura del video Forex

5. Indicatore Fisher

Un indicatore (indicator) personalizzato che opera su bar Hi-Lo (Hi-Lo Bars) e calcola i segnali basandosi sulle sue formule. Disegna come dimostrato dai test e ridisegna 3-5 bar (Bars) su bar chiusi (closed Bars), presentati sotto forma di istogramma.

Strategia di Trading: Trading dell’istogramma. Incrocio dell’istogramma con le linee 0.

Codice della Strategia:

int Sig=0;

double DNSignal=iCustom(Symbol(),0,"Fiji Trend",3,shift); // Esempio di chiamata a un indicatore personalizzato

double Fisher1=iCustom(Symbol(),0,"fisher",0,shift);
double Fisher2=iCustom(Symbol(),0,"fisher",0,shift);

if( Fisher1>0 && Fisher2>0 ){ Sig=1; }
if( Fisher1<0 && Fisher2<0 ){ Sig=2; }

// 1 - Acquista, 2 - Vendi

return(Sig);

Esempi di Lavoro con Shift = 0

Esempi di Lavoro con Shift = 1

Spiegazione: Questo indicatore (indicator) disegna, quindi non raccomando di prendere segnali da esso.

Esempio Video:

Miniatura del video Forex

6. Indicatore HMA Color

Un indicatore (indicator) personalizzato che opera su MA e calcola i segnali basandosi sulle sue formule.

Strategia di Trading: Trading sul Cambiamento di Colore

Codice della Strategia:

int Sig=0;

double HMARED=iCustom(Symbol(),0,"HMA Color",3,shift);
double HMAGREEN=iCustom(Symbol(),0,"HMA Color",1,shift);

double HMARED2=iCustom(Symbol(),0,"HMA Color",3,shift+1);
double HMAGREEN2=iCustom(Symbol(),0,"HMA Color",1,shift+1);

// Specifica i segnali per l'apertura:
if(HMAGREEN!=EMPTY_VALUE && HMAGREEN2==EMPTY_VALUE) Sig=1;
if(HMARED!=EMPTY_VALUE && HMARED2==EMPTY_VALUE) Sig=2;

Esempi di Lavoro con Shift = 0

Esempi di Lavoro con Shift = 1

Spiegazione: Questo indicatore (indicator) non disegna (draw). Tuttavia, posiziona segnali utilizzando il trucco sopra menzionato. È uno dei pochi indicatori (indicators) che forniscono segnali ragionevolmente buoni.

Esempio Video:

Miniatura del video Forex

7. Indicatore MACD

Indicatore standard del terminale MT.

Strategia di Trading: Trading sull’incrocio della linea del segnale e dell’istogramma

Codice della Strategia:

int Sig=0;

double MACD_SIGNAL1=iMACD(Symbol(),0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,shift); // Chiamata MACD Example

double MACD_SIGNAL2=iMACD(Symbol(),0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,shift+1); // Chiamata MACD Example

double MACD_MAIN1=iMACD(Symbol(),0,12,26,9,PRICE_CLOSE,MODE_MAIN,shift); // Chiamata MACD Example
double MACD_MAIN2=iMACD(Symbol(),0,12,26,9,PRICE_CLOSE,MODE_MAIN,shift+1); // Chiamata MACD Example

if(MACD_SIGNAL2<MACD_MAIN2 && MACD_SIGNAL1>MACD_MAIN1) Sig=1;
if(MACD_SIGNAL2>MACD_MAIN2 && MACD_SIGNAL1<MACD_MAIN1) Sig=2;

Esempi di Lavoro con Shift = 0

Esempi di Lavoro con Shift = 1

Spiegazione: Questo indicatore (indicator) non ridisegna (redraw) su 1 bar chiusa (closed Bar), quindi puoi usare liberamente shift=1.

Esempio Video:

Miniatura del video Forex

8. Indicatore ZIGZAG

Indicatore standard del terminale MT. Costruisce picchi e minimi basati sull’alta-bassa di un’area specifica.

Strategia di Trading: Trade sulla formazione di picchi e minimi. Non è raccomandato fare trading sull’indicatore (indicator) con posizioni. È una buona strategia di limitazione.

Codice della Strategia:

int Sig=0;

double PriceZZ1=GetExtremumZZPrice(Symbol(),0,1);
double PriceZZ2=GetExtremumZZPrice(Symbol(),0,2);

double priceUP, priceDN;

if(PriceZZ2>PriceZZ1) { priceUP=PriceZZ2; priceDN=PriceZZ1; Sig=2; }
if(PriceZZ2<PriceZZ1) { priceUP=PriceZZ1; priceDN=PriceZZ2; Sig=1; }

Esempi di Lavoro con Shift = 0

Spiegazione: Questo indicatore (indicator) disegna picchi e minimi, quindi shift (shift) è irrilevante. Le condizioni uniche della strategia (strategy) permettono un trading di successo su questo indicatore (indicator).

Esempio Video:

Miniatura del video Forex

9. Bars Work on Request

Opera sui bar standard (standard Bars) del terminale MT.

Strategia di Trading: Se il bar (Bar) è rialzista, apri un acquisto; se il bar (Bar) è ribassista, apri una vendita.

Codice della Strategia:

int Sig=0;

if(Open[shift] < Close[shift]) Sig=1;
if(Open[shift] > Close[shift]) Sig=2;

Esempi di Lavoro con Shift = 0

Esempi di Lavoro con Shift = 1

Spiegazione: Un esempio perfetto di come funziona il parametro shift (shift parameter), dimostrando come puoi fare trading con strategie (strategies) basate su questo parametro.

Esempio Video:

Miniatura del video Forex

Conclusioni

Questo articolo informativo fornisce esempi utili sull’uso di vari indicatori (indicators) con diversi valori del parametro shift (shift parameter).

Ogni indicatore (indicator) è unico; quindi, quando si crea un Expert Advisor (Expert Advisor), è necessario considerare il tipo di indicatore (indicator) e il suo segnale.

Prima di assumere un programmatore per creare un Expert Advisor (Expert Advisor), è importante prima testare il tuo indicatore (indicator) per eventuali problemi di ridisegno (redrawing).

Questo è cruciale poiché l’affidabilità e l’efficacia delle operazioni del tuo robot dipenderanno dall’accuratezza del tuo indicatore (indicator).

Pertanto, si consiglia di verificare e testare accuratamente il tuo indicatore (indicator) prima di procedere con la creazione del tuo Expert Advisor (Expert Advisor).

Advisor

L’EA è scritto utilizzando il nostro template per la scrittura di un EA.

Tutte le funzioni dell’advisor sono descritte in questa pagina: Funzioni dell’Advisor Forex.

Se desideri creare un avviso per il tuo indicatore (indicator), per favore leggi il nostro articolo:

Domande?

Se hai domande, per favore falle. Non vendiamo il maiale nel sacco.

Ognuno dei nostri prodotti può essere testato prima dell’acquisto.

Apprezziamo il tuo feedback e i tuoi desideri per i nostri prodotti e ci sforziamo di mantenere elevati standard di qualità.

Grazie per essere con noi!

Hai una domanda?

Leave a Reply

Your email address will not be published. Required fields are marked *

This post is also available in: English Українська Portuguese Español Deutsch Chinese Русский Français Italiano Türkçe 日本語 한국어


    Attendere, contattando ...

     

    Avviso di rischio:


    Le performance di trading passate non garantiscono i risultati futuri.

    La negoziazione di valuta estera con margine comporta un elevato grado di rischio e potrebbe non essere adatta a tutti gli investitori.

    Tieni presente che l'utilizzo dei robot di trading comporta un rischio notevole e potresti perdere più del tuo investimento iniziale.

    Ti invitiamo a procedere con cautela, a valutare attentamente la tua situazione finanziaria e a prendere in considerazione l'idea di rivolgerti a un professionista qualificato.

    Esclusione di responsabilità

    Questo sito utilizza i cookie per migliorare la tua esperienza. Utilizzando questo sito accetti la nostra Politica di Protezione dei Dati e Disclaimer.
    Leggi di più