Aiuto per la codifica - pagina 31

 

Lavorando su Array multidimensionale, mi blocco su una cosa così semplice...

Ciao signori,

Sto solo cercando di ottenere una cella da un Array in una riga dello schermo (stesso risultato messaggio Alert), manca qualcosa è sicuro, ma tutto il giorno su di esso e non capisco perché ...

Aiuto sarebbe così buono ... ..

questo è:

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

//| !XTEST sur arrays.mq4 |

//| |

//| |

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

#proprietà copyright ""

#proprietà link ""

#proprietà indicator_chart_window

extern int Coin = 1 ;

extern int X_Col = 700 ;

extern int Y_Ligne = 30 ;

extern string FontCar = "Arial" ;

extern int TailCar = 14 ;

extern color Couleur = Lime ;

extern int X = 1;

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

//|funzione di inizializzazione dell'indicatore personalizzato |

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

stringa Tab1dim[2]

stringa Tab2dim[2,2]

stringa Tab3dim[2,2,2]

stringa Tab4dim[2,2,2,2];

// 5eme Dimension de tableau non autorisée . int Tab5dim[20,20,20,80,2];

int init()

{

//---- indicatori

string Tab1dim[2]={"tab1-c0","tab1C1"};

//----

return(0);

}

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

//|Funzione di deinizializzazione dell'indicatore personalizzata |

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

int deinit()

{

//----

ObjectDelete("R");

//----

return(0);

}

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

//|Funzione di iterazione dell'indicatore personalizzata |

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

int start()

{

//----

Tab1dim[2]={"tab1-c0","tab1C1"};

stringa affich=Tab1dim[0];

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//

ObjectCreate ("A1", OBJ_LABEL, 0, 0, 0 );

ObjectSet ("A1", OBJPROP_CORNER,Coin );

ObjectSet ("A1", OBJPROP_XDISTANCE,X_Col );

ObjectSet ("A1", OBJPROP_YDISTANCE,Y_Ligne );

ObjectSetText("A1",affich,TailCar, FontCar , Couleur );

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//

Allarme(affich);

//----

return(0);

}

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

Grazie in anticipo.

 

...

Prova così( l'inizializzazione dell'array è fatta in modo diverso):

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

//| !XTEST sur arrays.mq4 |

//| |

//| |

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

#property copyright ""

#property link ""

#property indicator_chart_window

extern int Coin = 1 ;

extern int X_Col = 10 ;

extern int Y_Ligne = 10 ;

extern string FontCar = "Arial" ;

extern int TailCar = 14 ;

extern color Couleur = Lime ;

extern int X = 1;

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

//| Custom indicator initialization function |

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

string Tab1dim[] = {"tab1-c0","tab1C1"};

string Tab2dim[2,2];

string Tab3dim[2,2,2];

string Tab4dim[2,2,2,2];

// 5eme Dimension de tableau non autorisée . int Tab5dim[20,20,20,80,2];

int init()

{

//---- indicators

string Tab1dim[2]={"tab1-c0","tab1C1"};

//----

return(0);

}

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

//| Custom indicator deinitialization function |

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

int deinit()

{

//----

ObjectDelete("A1");

//----

return(0);

}

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

//| Custom indicator iteration function |

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

int start()

{

//----

string affich=Tab1dim[0];

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//

ObjectCreate ("A1", OBJ_LABEL, 0, 0, 0 );

ObjectSet ("A1", OBJPROP_CORNER,Coin );

ObjectSet ("A1", OBJPROP_XDISTANCE,X_Col );

ObjectSet ("A1", OBJPROP_YDISTANCE,Y_Ligne );

ObjectSetText("A1",affich,TailCar, FontCar , Couleur );

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//

//----

return(0);

}

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

Ilevna:
Ciao signori,

Sto solo cercando di ottenere una cella da un Array in una riga dello schermo (stesso risultato messaggio Alert), manca qualcosa è sicuro, ma tutto il giorno su di esso e non capisco perché ...

Un aiuto sarebbe così buono... ..

questo è:

Grazie in anticipo.
 
mladen:
Prova in questo modo (l'inizializzazione dell'array è fatta in modo diverso) :

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

//| !XTEST sur arrays.mq4 |

//| |**************

Grazie mille, funziona bene, ma non capisco perché è necessario, perché normalmente potremmo dichiarare, o in ambito globale, o all'interno di una funzione, qualcosa come quello che hanno scritto nel manuale: double Tab2Dim[2*n-3]; oppure

int [] values =new int[3];

valori[0]=5;

values[1]=values[0]*2;

values[2]=values[1]*2;

ma è bello per il mio fine giornata, grazie signore.

 

...

Potete parzialmente superare questo problema con la funzione ArrayResize() (in questo modo potete avere array dimensionati dinamicamente)

Il problema è che ArrayResize() funziona solo per gli array a dimensione singola e la prima dimensione di un array (per esempio se avete array[][2], potete ridimensionarlo con ArrayResize() in qualcosa come questo array[anySize][2]). Ogni ulteriore dimensione (dagli array di seconda dimensione in su) deve essere di una dimensione costante nota al momento della compilazione

Ilevna:
Grazie mille, funziona bene, ma non capisco perché è necessario, perché normalmente potremmo dichiarare, o in ambito globale, o all'interno di una funzione, qualcosa come quello che hanno scritto nel manuale: double Tab2Dim[2*n-3]; oppure

int [] values =new int[3];

valori[0]=5;

values[1]=values[0]*2;

values[2]=values[1]*2;

ma è bello per il mio fine giornata, grazie signore.
 

Aiuto sul mio indicatore di banda

Ciao a tutti,

dopo aver provato un sacco di Band ind, come jband, tmaband ecc. alla fine ho preso la decisione di scrivere il mio indicatore di banda,

l'allegato troverete è il mio indicatore di banda, ma quando EA chiamarlo linea di banda bassa dà un divisore zero, ho guardato il mio codice non c'è divisore zeor in là,

Se avete un'idea o un'esperienza come questa, per favore fatemi aiutare a risolvere il problema.

grazie in anticipo....

File:
aband.gif  20 kb
 

...

Senza il sorgente (o senza il codice per chiamare l'indicatore personalizzato) è impossibile dire qualcosa. Se il tuo indicatore funziona, allora l'errore è nel tuo EA

kemal44:
Ciao a tutti,

Dopo aver provato un sacco di Band ind, come jband, tmaband ecc. alla fine ho preso la decisione di scrivere il mio indicatore Band,

l'allegato troverete è il mio indicatore di banda, ma quando EA lo chiama linea di banda bassa dà un divisore zero, ho guardato il mio codice non c'è nessun divisore zeor in là,

Se avete un'idea o un'esperienza come questa, per favore lasciatemi helpto risolvere il problema.

grazie in anticipo....
 

Ho bisogno di aiuto per codificare un EA con crossover MA

Ciao ragazzi,

Mi sto chiedendo se qualcuno potrebbe aiutarmi a codificare un MA crossover ea in modo da poterlo utilizzare quando il tempo sono lontano dal computer.

L'idea è questa.

Grafico a 1 minuto - 3 EMA e 8 SMA

Se 3 EMA incrocia sotto 8 SMA, vendi la coppia di valute con TP e SL preimpostati sui parametri.

Se 3 EMA incrocia sopra 8 SMA, compra la coppia di valute con TP e SL preimpostati sui parametri.

Non so se è possibile codificare una MA ea così semplice, ma apprezzerei molto se qualcuno potesse darmi una mano.

Grazie in anticipo!

 

...

Hai controllato questo thread: https: //www.mql5.com/en/forum/general?

jacktrader:
Ciao ragazzi,

Mi sto chiedendo se qualcuno può aiutarmi a codificare un MA crossover ea in modo da poterlo utilizzare quando sono lontano dal computer.

L'idea è questa.

Grafico a 1 minuto - 3 EMA e 8 SMA

Se 3 EMA incrocia sotto 8 SMA, vendi la coppia di valute con TP e SL preimpostati sui parametri.

Se 3 EMA incrocia sopra 8 SMA, compra la coppia di valute con TP e SL preimpostati sui parametri.

Non so se è possibile codificare una MA ea così semplice ma apprezzerei molto se qualcuno potesse darmi una mano.

Grazie in anticipo!
 
kemal44:
Ciao a tutti,

dopo aver provato un sacco di Band ind, come jband, tmaband ecc. alla fine ho preso la decisione di scrivere il mio indicatore di banda,

l'allegato troverete è il mio indicatore di banda, ma quando EA chiamarlo linea di banda bassa dà un divisore zero, ho guardato il mio codice non c'è divisore zeor in là,

Se avete un'idea o un'esperienza come questa, per favore lasciatemi aiutare a risolvere il problema.

grazie in anticipo....

QUI è il codice per la banda ind.

EA chiama il segnale medio e alto, ma la banda bassa è il problema per me,

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

//| IndicatorPlan.mq4 |

//| Copyright © 2007, MetaQuotes Software Corp. |

//| Piattaforma di trading MetaTrader 5 / MetaQuotes Software Corp. |

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

#property copyright "Copyright © 2007, MetaQuotes Software Corp."

#property link "http://www.metaquotes.net/"

//---- disegnare l'indicatore nella finestra principale

#proprietà indicator_chart_window

//---- numero di buffer dell'indicatore

#proprietà indicator_buffers 3

//---- colore dell'indicatore

#property indicator_color1 Gold

#proprietà indicator_color2 Magenta

#proprietà indicator_color3 BlueViolet

//---- PARAMETRI DI INGRESSO DELL'INDICATORE

extern int MBand_Period = 15;

extern int UpBand_Period = 15

extern int DnBand_Period = 15;

extern int ABand_Timeframe =15;

extern int shift =0;

//---- buffer di indicatori

double Ind_Buffer0[]

double Ind_Buffer1[]

double Ind_Buffer2[]

double Ind_Buffer3[]

double Ind_Buffer4[];

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

//|Funzione di inizializzazione personalizzata dell'indicatore |

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

int init()

{

IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS));

IndicatoreShortName("ABand "+ABand_Timeframe);

//---- definendo lo stile di esecuzione del grafico

SetIndexStyle(0, DRAW_LINE);

SetIndexLabel(0, "MBand "+MBand_Period);

SetIndexStyle(2, DRAW_LINE);

SetIndexLabel(2, "UpBand "+UpBand_Period);

SetIndexStyle(1, DRAW_LINE);

SetIndexLabel(1, "DnBand "+DnBand_Period);

//---- 3 buffer di indicatori sono utilizzati per il calcolo

IndicatorBuffers(5);

SetIndexBuffer(0, Ind_Buffer0);

SetIndexBuffer(1, Ind_Buffer1);

SetIndexBuffer(2, Ind_Buffer2);

SetIndexBuffer(3, Ind_Buffer3);

SetIndexBuffer(4, Ind_Buffer4);

//---- óñòàíîâêà íîìåğà áàğà, íà÷èíàÿ ñ êîòîğîãî áóäåò îòğèñîâûâàòñÿ èíäèêàòîğ

//---- Óñòàíîâêà ôîğìàòà òî÷íîñòè îòîáğàæåíèÿ èíäèêàòîğà

IndicatoreDigits(Digits);

//---- fine dell'inizializzazione

return(0);

}

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

//||funzione di iterazione dell'indicatore personalizzata

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

int start()

{

//---- Ïğîâåğêà êîëè÷åñòâà áàğîâ íà äîñòàòî÷íîñòü äëÿ äàëüíåéøåãî ğàñ÷òà

if(Bars < MBand_Period + UpBand_Period + DnBand_Period)

return(0);

//---- İÌÓËßÖÈß ÈÍÄÈÊÀÒÎĞÍÛÕ ÁÓÔÅĞÎÂ

if(ArraySize(Ind_Buffer0) < Bars)

{

ArraySetAsSeries(Ind_Buffer0, false);

ArraySetAsSeries(Ind_Buffer1, false);

ArraySetAsSeries(Ind_Buffer2, false);

ArraySetAsSeries(Ind_Buffer3, false);

ArraySetAsSeries(Ind_Buffer4, false);

//----

ArrayResize(Ind_Buffer0, Bars);

ArrayResize(Ind_Buffer1, Bars);

ArrayResize(Ind_Buffer2, Bars);

ArrayResize(Ind_Buffer3, Bars);

ArrayResize(Ind_Buffer4, Bars);

//----

ArraySetAsSeries(Ind_Buffer0, true);

ArraySetAsSeries(Ind_Buffer1, true);

ArraySetAsSeries(Ind_Buffer2, true);

ArraySetAsSeries(Ind_Buffer3, true);

ArraySetAsSeries(Ind_Buffer4, true);

}

//----+ ÂÂÅÄÅÍÈÅ ÑÒÀÒÈ×ÅÑÊÎÉ ÖÅËÎÉ ÏÅĞÅÌÅÍÍÎÉ ÏÀÌßÒÈ

int statico IndCounted;

//----+ Inserimento di variabili a virgola mobile

double Resalt0, Resalt1, Resalt2;

doppio prezzo;

//----+ Inserimento di variabili intere e ottenimento di barre calcolate

int limit, MaxBar,bar, counted_bars = IndicatorCounted();

int i,k;

//---- controllo di eventuali errori

if(counted_bars < 0)

return(-1);

//---- l'ultima barra calcolata deve essere ricalcolata

if(counted_bars > 0)

counted_bars--;

//---- definendo il numero della barra più vecchia,

// a partire dal quale saranno ricalcolate le nuove barre

limite = Bars - counted_bars - 1;

//---- che definisce il numero della barra più vecchia,

// a partire dal quale saranno ricalcolate le nuove barre

MaxBar = Bars - 1 - (MBand_Period + UpBand_Period + DnBand_Period);

//---- inizializzazione di zero

se(limite > MaxBar)

{

limite = MaxBar;

for(bar = Bars - 1; bar >= MaxBar; bar--)

{

Ind_Buffer0 = 0.0;

Ind_Buffer1 = 0.0;

Ind_Buffer2 = 0.0;

Ind_Buffer3 = 0.0;

Ind_Buffer4 = 0.0;

}

}

//----+ IL PRIMO CICLO DI CALCOLO DELL'INDICATORE

i=Bars-DnBand_Period;

if(counted_bars>DnBand_Period) i=Bars-counted_bars-1;

mentre(i>=0)

{

i=Bars-DnBand_Period;

if(counted_bars>DnBand_Period) i=Bars-counted_bars-1;

mentre(i>=0)

{

doppio min=1000000;

k=i+DnBand_Period-1;

mentre(k>=i)

{

prezzo=Resalt1[k];

if(min>prezzo) min=prezzo;

k--;

}

Ind_Buffer1=min;

i--;

}

}

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

{

// Qui codice del calcolo della variabile Resalt0

// basato sui valori del buffer UpBand[]

// e della variabile esterna0

Ind_Buffer3 =iMAOnArray(Ind_Buffer1,limit,DnBand_Period ,shift, ma_method,i);

}

//----+ IL SECONDO CICLO DI CALCOLO DELL'INDICATORE

{

i=Bars-UpBand_Period;

if(counted_bars>UpBand_Period) i=Bars-counted_bars-1;

mentre(i>=0)

{

doppio max=-1000000;

k=i+UpBand_Period-1;

mentre(k>=i)

{

prezzo=Resalt2[k];

if(max<prezzo) max=prezzo;

k--;

}

Ind_Buffer2=max;

i--;

}

}

//---- linea di segnale è una semplice media movimg

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

{

// Qui codice del calcolo della variabile Resalt0

// basato sui valori del buffer UpBand[]

// e della variabile esterna0

Ind_Buffer4 =iMAOnArray(Ind_Buffer2,limit,UpBand_Period,shift, ma_method,i);

}

//----+ IL CICLO PRINCIPALE DI CALCOLO DELL'INDICATORE

//---- linea di segnale è una semplice media mobile

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

{

// Qui codice del calcolo della variabile Resalt0

// basato sui valori del buffer UpBand[]

// e della variabile esterna0

Ind_Buffer0 =(Ind_Buffer2+Ind_Buffer1)/2;

}

return(0);

}

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

 

...

Puoi postare come stai usando la chiamata iCustom()?

kemal44:
QUI c'è il codice per la banda ind.

EA chiama il segnale medio e alto, ma la banda bassa è il problema per me,

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

//| IndicatorPlan.mq4 |

//| Copyright © 2007, MetaQuotes Software Corp. |

//| Piattaforma di trading MetaTrader 5 / MetaQuotes Software Corp. |

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

#property copyright "Copyright © 2007, MetaQuotes Software Corp."

#property link "http://www.metaquotes.net/"

//---- disegnare l'indicatore nella finestra principale

#proprietà indicator_chart_window

//---- numero di buffer dell'indicatore

#property indicator_buffers 3

//---- colore dell'indicatore

#property indicator_color1 Gold

#proprietà indicator_color2 Magenta

#proprietà indicator_color3 BlueViolet

//---- PARAMETRI DI INGRESSO DELL'INDICATORE

extern int MBand_Period = 15;

extern int UpBand_Period = 15

extern int DnBand_Period = 15;

extern int ABand_Timeframe =15;

extern int shift =0;

//---- buffer di indicatori

double Ind_Buffer0[]

double Ind_Buffer1[]

double Ind_Buffer2[]

double Ind_Buffer3[]

double Ind_Buffer4[];

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

//|Funzione di inizializzazione personalizzata dell'indicatore |

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

int init()

{

IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS));

IndicatoreShortName("ABand "+ABand_Timeframe);

//---- definendo lo stile di esecuzione del grafico

SetIndexStyle(0, DRAW_LINE);

SetIndexLabel(0, "MBand "+MBand_Period);

SetIndexStyle(2, DRAW_LINE);

SetIndexLabel(2, "UpBand "+UpBand_Period);

SetIndexStyle(1, DRAW_LINE);

SetIndexLabel(1, "DnBand "+DnBand_Period);

//---- 3 buffer di indicatori sono utilizzati per il calcolo

IndicatorBuffers(5);

SetIndexBuffer(0, Ind_Buffer0);

SetIndexBuffer(1, Ind_Buffer1);

SetIndexBuffer(2, Ind_Buffer2);

SetIndexBuffer(3, Ind_Buffer3);

SetIndexBuffer(4, Ind_Buffer4);

//---- óñòàíîâêà íîìåğà áàğà, íà÷èíàÿ ñ êîòîğîãî áóäåò îòğèñîâûâàòñÿ èíäèêàòîğ

//---- Óñòàíîâêà ôîğìàòà òî÷íîñòè îòîáğàæåíèÿ èíäèêàòîğà

IndicatoreDigits(Digits);

//---- fine dell'inizializzazione

return(0);

}

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

//||funzione di iterazione dell'indicatore personalizzata

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

int start()

{

//---- Ïğîâåğêà êîëè÷åñòâà áàğîâ íà äîñòàòî÷íîñòü äëÿ äàëüíåéøåãî ğàñ÷òà

if(Bars < MBand_Period + UpBand_Period + DnBand_Period)

return(0);

//---- İÌÓËßÖÈß ÈÍÄÈÊÀÒÎĞÍÛÕ ÁÓÔÅĞÎÂ

if(ArraySize(Ind_Buffer0) < Bars)

{

ArraySetAsSeries(Ind_Buffer0, false);

ArraySetAsSeries(Ind_Buffer1, false);

ArraySetAsSeries(Ind_Buffer2, false);

ArraySetAsSeries(Ind_Buffer3, false);

ArraySetAsSeries(Ind_Buffer4, false);

//----

ArrayResize(Ind_Buffer0, Bars);

ArrayResize(Ind_Buffer1, Bars);

ArrayResize(Ind_Buffer2, Bars);

ArrayResize(Ind_Buffer3, Bars);

ArrayResize(Ind_Buffer4, Bars);

//----

ArraySetAsSeries(Ind_Buffer0, true);

ArraySetAsSeries(Ind_Buffer1, true);

ArraySetAsSeries(Ind_Buffer2, true);

ArraySetAsSeries(Ind_Buffer3, true);

ArraySetAsSeries(Ind_Buffer4, true);

}

//----+ ÂÂÅÄÅÍÈÅ ÑÒÀÒÈ×ÅÑÊÎÉ ÖÅËÎÉ ÏÅĞÅÌÅÍÍÎÉ ÏÀÌßÒÈ

int statico IndCounted;

//----+ Inserimento di variabili a virgola mobile

double Resalt0, Resalt1, Resalt2;

doppio prezzo;

//----+ Inserimento di variabili intere e ottenimento di barre calcolate

int limit, MaxBar,bar, counted_bars = IndicatorCounted();

int i,k;

//---- controllo di eventuali errori

if(counted_bars < 0)

return(-1);

//---- l'ultima barra calcolata deve essere ricalcolata

if(counted_bars > 0)

counted_bars--;

//---- definendo il numero della barra più vecchia,

// a partire dal quale saranno ricalcolate le nuove barre

limite = Bars - counted_bars - 1;

//---- che definisce il numero della barra più vecchia,

// a partire dal quale saranno ricalcolate le nuove barre

MaxBar = Bars - 1 - (MBand_Period + UpBand_Period + DnBand_Period);

//---- inizializzazione di zero

se(limite > MaxBar)

{

limite = MaxBar;

for(bar = Bars - 1; bar >= MaxBar; bar--)

{

Ind_Buffer0 = 0.0;

Ind_Buffer1 = 0.0;

Ind_Buffer2 = 0.0;

Ind_Buffer3 = 0.0;

Ind_Buffer4 = 0.0;

}

}

//----+ IL PRIMO CICLO DI CALCOLO DELL'INDICATORE

i=Bars-DnBand_Period;

if(counted_bars>DnBand_Period) i=Bars-counted_bars-1;

mentre(i>=0)

{

i=Bars-DnBand_Period;

if(counted_bars>DnBand_Period) i=Bars-counted_bars-1;

mentre(i>=0)

{

doppio min=1000000;

k=i+DnBand_Period-1;

mentre(k>=i)

{

prezzo=Resalt1[k];

if(min>prezzo) min=prezzo;

k--;

}

Ind_Buffer1=min;

i--;

}

}

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

{

// Qui codice del calcolo della variabile Resalt0

// basato sui valori del buffer UpBand[]

// e della variabile esterna0

Ind_Buffer3 =iMAOnArray(Ind_Buffer1,limit,DnBand_Period ,shift, ma_method,i);

}

//----+ IL SECONDO CICLO DI CALCOLO DELL'INDICATORE

{

i=Bars-UpBand_Period;

if(counted_bars>UpBand_Period) i=Bars-counted_bars-1;

mentre(i>=0)

{

doppio max=-1000000;

k=i+UpBand_Period-1;

mentre(k>=i)

{

prezzo=Resalt2[k];

if(max<prezzo) max=prezzo;

k--;

}

Ind_Buffer2=max;

i--;

}

}

//---- linea di segnale è una semplice media movimg

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

{

// Qui codice del calcolo della variabile Resalt0

// basato sui valori del buffer UpBand[]

// e della variabile esterna0

Ind_Buffer4 =iMAOnArray(Ind_Buffer2,limit,UpBand_Period,shift, ma_method,i);

}

//----+ IL CICLO PRINCIPALE DI CALCOLO DELL'INDICATORE

//---- linea di segnale è una semplice media mobile

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

{

// Qui codice del calcolo della variabile Resalt0

// basato sui valori del buffer UpBand[]

// e della variabile esterna0

Ind_Buffer0 =(Ind_Buffer2+Ind_Buffer1)/2;

}

return(0);

}

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