Aiuto per la codifica - pagina 175

 

ciao mladen,

1.tu menzioni la seconda forma, di da vecchie a nuove barre, stai dicendo questo stile: for (i=limit;i>=0;i--)?

Ho paura confuso, quindi chiedi un piccolo chiarimento.

2.chiedi anche, sono entrambi gli stili (se non consideri il repaint o no) fondamentalmente danno gli stessi segnali o valore numerico?

3. può un indicatore contenere entrambi gli stili di direzione del ciclo? come la parte centrale dell'indicatore è la seconda forma, ma la parte mtf è il primo stile di forma? qualsiasi contraddizione qui? o ancora può funzionare senza problemi?

4. la mancanza di alcune frasi return(0),(la frase return(0) è un must o necessaria?) sarà un problema per fermare l'indicatore o causare il repaintness? grazie

 
kenwa:
ciao mladen

1.si menziona la seconda forma, delle barre più vecchie a quelle più nuove, state dicendo questo stile: for (i=limit;i>=0;i--)?

ho paura confuso, quindi chiedi un piccolo chiarimento.

2.chiedi anche, sono entrambi gli stili (se non consideri il repaint o no) fondamentalmente danno gli stessi segnali o valore numerico?

3. può un indicatore contenere entrambi gli stili di direzione del ciclo? come la parte centrale dell'indicatore è la seconda forma, ma la parte mtf è il primo stile di forma? qualsiasi contraddizione qui? o ancora può funzionare senza problemi?

4. la mancanza di alcune frasi return(0),(la frase return(0) è un must o necessaria?) sarà un problema per fermare l'indicatore o causare la riverniciatura? grazie

1. sì

2. dipende dal calcolo fatto all'interno del loop - alcuni calcoli non possono essere fatti nella forma "da più recente a più vecchio" mentre tutti i calcoli possono essere fatti nella forma "da più vecchio a più nuovo

3. può ma vedi punto 2 - la prima forma è molto più sicura

4. return(0) non può causare o prevenire la riverniciatura - non ha nulla in comune con essa

 
mladen:
1. sì

2. dipende dal calcolo fatto all'interno del ciclo - alcuni calcoli non possono essere fatti nella forma "da più recente a più vecchio" mentre tutti i calcoli possono essere fatti nella forma "da più vecchio a più nuovo

3. può ma vedi punto 2 - la prima forma è molto più sicura

4. return(0) non può causare o impedire la riverniciatura - non ha niente in comune con essa

posso chiedere i) se la seconda forma può fare tutti i tipi di calcolo, perché non la seconda forma è più sicura? sono un po' confuso.

anche ii) vedo il codice che correggi il mio indicatore precedente prima sta usando (i=limit;i>=0;i--) la seconda forma che il mio inizio sta usando lo stile della prima forma, qualche ragione particolare usando il secondo stile? grazie.

 
kenwa:
posso chiedere i) se la seconda forma può fare tutti i tipi di calcolo, perché non la seconda forma è più sicura? sono un po' confuso. anche ii) vedo il codice che correggi il mio indicatore precedente prima sta usando (i=limit;i>=0;i--) la seconda forma che il mio molto inizio uno sta usando lo stile prima forma, qualsiasi motivo particolare utilizzando il secondo stile? grazie.

Quello che volevo dire è la forma del punto 1. Usate quella forma ed eliminerete un possibile errore da una direzione di calcolo sbagliata

 
mladen:
Quello che volevo dire è la forma del punto 1. Usate quella forma ed eliminerete un possibile errore da una direzione di calcolo sbagliata

ciao mladen,

se non ho capito male, vuoi dire che la seconda forma può adattare tutti i tipi di calcolo, ma è più sicura la prima forma che previene alcune direzioni di calcolo sbagliate?

Bene, se il mio indicatore di base parte utilizzare la seconda forma, e la mia parte mtf utilizzare la prima forma, è ok? o è meglio sia la stessa forma? (meglio la prima forma??)

quale forma? la prima o la seconda forma è meglio eliminare la possibilità di ridipingere? grazie per la vostra pazienza risponde alla mia richiesta.

 
kenwa:
ciao mladen,

se non ho capito male, vuoi dire che la seconda forma può adattare tutti i tipi di calcolo, ma è più sicura la prima forma che previene alcune direzioni di calcolo sbagliate?

Bene, se la mia parte di indicatore di base usa la seconda forma, e la mia parte mtf usa la prima forma, va bene? o è meglio la stessa forma per entrambi? (meglio la prima forma??)

quale forma? la prima o la seconda forma è meglio eliminare la possibilità di ridipingere? grazie per la tua pazienza risponde alla mia richiesta.

kenwa

per chiarire: questa è la forma molto migliore

(i=limite;i>=0;i--)

 

Ok e molte grazie - metterò insieme qualche altro risultato prima di tornare!

jeff

 

Aiutatemi a risolvere questo problema riguardante fantail vma

Ciao,

Sto cercando di imparare mql da diversi mesi. Stavo cercando di creare un EA basato sull'indicatore Fisher. Ma come sappiamo Fisher ridipinge, mi ha dato un momento difficile per creare questo EA. Ecco perché sono diventato demotivato e sono diventato occupato con i miei studi. Ora sto cercando di creare un altro EA basato su FANTAIL. Ma sto affrontando il problema di portare i valori dall'indicatore all'EA. Ho usato la funzione iCustom per farlo. Questo indicatore disegna 50 linee nel grafico. Avrò bisogno di alcuni dei valori di quelle linee.

Potete per favore mostrarmi un modo per ottenere quei valori in un EA? Grazie in anticipo. Scusa se sto facendo una domanda stupida.

L'indicatore:

File:
 

Ciao mladen, puoi aiutarmi a includere il supertrend in questo indicatore? (Naturalmente, il supertrend calcolato su ExtMapBuffer1)

#property indicator_separate_window

#property indicator_buffers 1

#property indicator_color1 DodgerBlue

extern double Beta1 = 1.0;

extern string Symbol2 = "GBPUSD";

extern double Beta2 = 1.4;

//--- buffers

double ExtMapBuffer1[];

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

//| Custom indicator initialization function |

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

int init()

{

//---- indicators

SetIndexStyle(0,DRAW_LINE);

SetIndexBuffer(0,ExtMapBuffer1);

IndicatorShortName(Symbol() + " " + Beta1 + " " + Symbol2 + " " + Beta2);

//----

return(0);

}

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

//| Custom indicator deinitialization function |

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

int deinit()

{

//----

//----

return(0);

}

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

//| Custom indicator iteration function |

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

int start()

{

int counted_bars=IndicatorCounted();

if(Bars<1) return(0);

int i = Bars-counted_bars -1;

while(i >=0) {

int iShift2 = iBarShift(Symbol2, 0, Time, false);

ExtMapBuffer1 = Close * Beta1 - iClose(Symbol2, NULL, iShift2) * Beta2;

i--;

}

return(0);

}

 
k3rn3l:
Ciao mladen, puoi aiutarmi a includere il supertrend in questo indicatore (naturalmente il supertrend calcolato su ExtMapBuffer1)

#property indicator_separate_window

#property indicator_buffers 1

#property indicator_color1 DodgerBlue

extern double Beta1 = 1.0;

extern string Symbol2 = "GBPUSD";

extern double Beta2 = 1.4;

//--- buffers

double ExtMapBuffer1[];

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

//| Custom indicator initialization function |

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

int init()

{

//---- indicators

SetIndexStyle(0,DRAW_LINE);

SetIndexBuffer(0,ExtMapBuffer1);

IndicatorShortName(Symbol() + " " + Beta1 + " " + Symbol2 + " " + Beta2);

//----

return(0);

}

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

//| Custom indicator deinitialization function |

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

int deinit()

{

//----

//----

return(0);

}

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

//| Custom indicator iteration function |

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

int start()

{

int counted_bars=IndicatorCounted();

if(Bars<1) return(0);

int i = Bars-counted_bars -1;

while(i >=0) {

int iShift2 = iBarShift(Symbol2, 0, Time, false);

ExtMapBuffer1 = Close * Beta1 - iClose(Symbol2, NULL, iShift2) * Beta2;

i--;

}

return(0);

}

Quale esattamente (a causa dei parametri da passare alla funzione iCustom())?

Motivazione: