Chiedete! - pagina 138

 

Non hai seguito bene o non sono stato abbastanza chiaro

luxinterior:
Direttamente dal file di aiuto...

int iLowest( string symbol, int timeframe, int type, int count=WHOLE_ARRAY, int start=0)

Returns the shift of the least value over a specific number of periods depending on type.

Lux

Ciao Lux,

Grazie per il tuo input, ma questo non era quello che stavo cercando. Sono consapevole che questo restituisce il valore più basso e l'ho già incluso come parte del mio script.

Ho bisogno di sapere come codificare la differenza tra il massimo e il minimo di ogni barra all'interno di un timeframe o array di barre e poi prendere la più breve di queste barre e usare la sua altezza in pip come valore di take profit.

Grazie ancora in anticipo

 
Bill FX:
Ciao primajaya,

"CloseTrades_After_Account_Profit_Reached" è un EA (sul file allegato). Voglio combinare questo EA in un altro EA.

Grazie per il tuo aiuto!

Basta creare una nuova funzione secondo l'EA... e metterla nella funzione int start()...

Prova questo:

extern double My_Money_Profit_Target=300;

int start()

{

//Put The Close_Trade_Profit function just berfore return(0);

Close_Trade_Profit();

return(0);

}

void Close_Trade_Profit()

{

int Slippage=5;

int i;

if (AccountProfit()>= My_Money_Profit_Target)

{

for(i=OrdersTotal()-1;i>=0;i--)

{

OrderSelect(i, SELECT_BY_POS);

int type = OrderType();

bool result = false;

switch(type)

{

//Close opened long positions

case OP_BUY : result = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),Slippage,Pink);

break;

//Close opened short positions

case OP_SELL : result = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),Slippage,Pink);

}

if(result == false)

{

Sleep(3000);

}

}

Print ("Account Profit Reached. All Open Trades Have Been Closed");

return(0);

}

Comment("Balance: ",AccountBalance(),", Account Equity: ",AccountEquity(),", Account Profit: ",AccountProfit(),

"\nMy Account Profit Target: ",My_Money_Profit_Target);

}

 
primajaya:
Basta fare una nuova funzione secondo l'EA... e metterla nella funzione int start()...

Ciao primajaya,

C'è 1 errore " '}' - parentesi sbilanciate " quando metto questo:

: //Metti la funzione Close_Trade_Profit appena prima di return(0);

Close_Trade_Profit();

return(0);

}

void Close_Trade_Profit()

{

int Slippage=5;

int i;

if (AccountProfit()>= My_Money_Profit_Target)

{

for(i=OrdiniTotali()-1;i>=0;i--)

{

OrderSelect(i, SELECT_BY_POS);

int type = OrderType();

bool result = false;

switch(tipo)

{

//Chiude le posizioni lunghe aperte

caso OP_BUY : risultato = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),Slippage,Pink);

pausa;

//Chiude le posizioni corte aperte

caso OP_SELL : risultato = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),Slippage,Pink);

}

if(result == false)

{

Sleep(3000);

}

}

Print ("Account Profit Reached. All Open Trades Have Been Closed");

return(0);

}

Comment("Saldo: ",ContoSaldo(),", Equità del conto: ",Equità del conto(),", Profitto del conto: ",ContoProfitto(),

"Obiettivo di profitto del mio conto: ",My_Money_Profit_Target);

}

Cosa c'è di sbagliato?

Grazie per il tuo aiuto!

 

Dove da qui?

Ciao, ho prodotto del codice

int start()

{

//----

Tick++; // Contatore di tick

datetime time = MarketInfo("EURUSD",MODE_TIME); //conta ogni nuovo tick

Alert("*Tick No: ", Tick," *Price: ", //con valore di tick &

DoubleToStr(Close[0], Digits)," *Time: ", //time.

TimeCurrent());

return; // operatore di uscita start()

Ora ho bisogno di salvare i Tick 1, 2 e 3 (valore e tempo). Al prossimo Tick 1,2 e 3 di nuovo. Come faccio a salvare i dati per il calcolo successivo nel programma?

 
Bill FX:
Ciao primajaya,

C'è 1 errore " '}'

-

parentesi sbilanciate"

quando metto questo:

: //Mettere la funzione Close_Trade_Profit appena prima di return(0);

Close_Trade_Profit();

return(0);

}

void Close_Trade_Profit()

{

int Slippage=5;

int i;

if (AccountProfit()>= My_Money_Profit_Target)

{

for(i=OrdiniTotali()-1;i>=0;i--)

{

OrderSelect(i, SELECT_BY_POS);

int type = OrderType();

bool result = false;

switch(tipo)

{

//Chiude le posizioni lunghe aperte

caso OP_BUY : risultato = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),Slippage,Pink);

pausa;

//Chiude le posizioni corte aperte

caso OP_SELL : risultato = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),Slippage,Pink);

}

if(result == false)

{

Sleep(3000);

}

}

Print ("Account Profit Reached. All Open Trades Have Been Closed");

return(0);

}

Comment("Saldo: ",ContoSaldo(),", Equità del conto: ",Equità del conto(),", Profitto del conto: ",ContoProfitto(),

"Obiettivo di profitto del mio conto: ",My_Money_Profit_Target);

}

Cosa c'è che non va?

Grazie per il vostro aiuto!

Oh, cavolo... Sono sicuro che sei un principiante assoluto del codice ML4...

Temo che questo commento sia il problema..... basta cancellare questa linea...

://Mettere la funzione Close_Trade_Profit appena prima di return(0);

se c'è ancora un errore.........................................

Per favore carica il tuo primo EA... se lo desideri...

se vuoi tenerlo segreto... basta che mi mandi un PM...

 
primajaya:
Oh amico... Sono sicuro che sei totalmente principiante con la codifica ML4...

Temo che questo commento sia il problema..... basta cancellare questa linea...

://Mettere la funzione Close_Trade_Profit appena prima di return(0);

se c'è ancora un errore.........................................

Per favore, carica il tuo primo EA... se lo desideri...

se vuoi mantenere il segreto... basta che mi mandi un PM...

Ok, è fatta!

Grazie per il tuo aiuto!

 

Indi a 2 colori

Ciao a tutti,

L'indi in basso (Complex_Pairs1) ha solo un colore. Qualcuno potrebbe aiutarmi e cambiarlo con 2 colori. Blu per salire e rosso per scendere. Proprio come l'indi sul grafico (Execute Line).

Ho provato molto duramente a cambiare il codice da solo, ma senza successo.

Dopo la compilazione non ci sono stati errori, ma non succede nulla quando provo ad aprire l'indi.

Questo è probabilmente un pezzo di torta per tutti voi codificatori esperti, e spero di poter imparare da questo.

Grazie!

Klondyke

File:
 

Media mobile dei fusi orari

C'è un modo per calcolare la media mobile di un fuso orario diverso dal tuo? Per esempio, se il tuo orario è GMT+1, è possibile calcolare la media mobile a 40 giorni usando i prezzi di chiusura di GMT-7?

 

codice sorgente

Ciao a tutti,

Ho bisogno di un codice sorgente da aggiungere nel mio EA per limitare i tempi di utilizzo di una copia EA. Diciamo che darò il mio EA a qualcuno ma gli lascio solo usare il mio EA per 1 mese, quindi potreste darmi il codice sorgente e lo aggiungo al mio EA?

Grazie per il tuo aiuto,

 
Bill FX:
Ciao a tutti,

Ho bisogno di un codice sorgente da aggiungere nel mio EA per limitare i tempi di utilizzo di una copia EA. Diciamo che darò il mio EA a qualcuno ma gli lascio solo usare il mio EA per 1 mese, quindi potresti darmi il codice sorgente e lo aggiungo al mio EA?

Grazie per il vostro aiuto,

Per favore, vedi questo link:

https://www.mql5.com/en/forum/174194

Protezione dei programmi MQL4! | www.metatrader.info

https://www.mql5.com/en/forum/175498

https://www.mql5.com/en/forum/general