Aiuto per la codifica - pagina 372

 
AtApi:
Grazie mladen! il problema in questo modo è che non rimuove realmente la stringa dall'array, ma cambia solo il valore della stringa in "remove" sia sul valore originale che su quello duplicato... quindi se voglio filtrarli in seguito rimuovo anche il valore originale... spero di essere stato chiaro...

Non lo fa

Ecco perché la condizione if (myArray != "remove ") è nell'ultima riga di quel codice. Solo i valori diversi da "remove" vengono copiati nel nuovo array dopo aver regolato la nuova dimensione dell'array (aggiungendo un nuovo elemento)

 

ok lo testerò e ti farò sapere!

sempre grazie dal profondo del mio cuore!

 
mladen:
Non funziona Ecco perché la condizione if (myArray != "remove") è nell'ultima riga di quel codice. Solo i valori diversi da "remove" vengono copiati nel nuovo array dopo aver regolato la nuova dimensione dell'array (aggiungendo un nuovo elemento)

Funziona benissimo mladen, grazie mille!

 

Mladen

Gli errori di nicetrader1.03 ea sono scomparsi.....quindi l'ho riportato al tester, non poteva fare trading ma dava gli errori, ho allegato parte dell'errore dal diario qui sotto:

Penso che questo sia il risultato delle funzioni di trailing stop che abbiamo aggiunto, perché prima faceva trading,,,, voglio solo perfezionare il modello per tutti noi qui.... gentilmente aiutatemi a far funzionare di nuovo il trailing stop con il modello.ho creato 3 variabili esterne per l'ordine trailing, Trailingstop, Trailingstart e Trailingstep.TrailingStart, che è la soglia di profitto che deve essere raggiunta prima che il trailing stop possa essere attivato; il TrailingStop, che è la quantità di pips che seguiremo dai nuovi massimi di profitto; e il TrailingStep, la quantità di nuovi pips che devono essere guadagnati prima che lo stop possa essere aumentato della quantità di guadagno.

mladen:
Questi avvertimenti sono stati rimossi: newnicetrader_1.03.mq4
File:
errorimage.png  212 kb
 
Mastercash:
Mladen

Gli errori di nicetrader1.03 ea sono scomparsi ..... quindi l'ho riportato al tester:

Penso che questo sia il risultato delle funzioni di trailing stop che abbiamo aggiunto, perché non facevo trading prima,,,, Voglio solo perfezionare il modello per tutti noi qui.... aiutatemi a far funzionare il trailing stop con il modello.TrailingStart, che è la soglia di profitto che deve essere raggiunta prima che il trailing stop possa essere attivato; il TrailingStop, che è la quantità di pip che seguiremo dai nuovi massimi di profitto; e il TrailingStep, la quantità di nuovi pip che devono essere guadagnati prima che lo stop possa essere aumentato della quantità di guadagno.

Errore 134 significa: non ci sono abbastanza soldi. La dimensione del lotto dell'ordine è troppo grande per il capitale del conto, non è il risultato di nessuna funzione di trading aggiunta, dato che non ho aggiunto alcuna funzione di trading a quell'EA - se hai aggiunto tali funzioni, per favore rivedile, dato che non ho idea di quali cambiamenti nel codice sono stati fatti da te

 

Come posso calcolare il profitto totale degli ordini attualmente aperti?

 
apprentice coder:
Come posso calcolare il profitto totale degli ordini attualmente aperti?

apprendista codificatore

Puoi fare qualcosa del genere (swap e commissioni inclusi, quindi il risultato è un profitto esatto):

double colectProfit()

{

double profitSoFar=0;

//

//

//

//

//

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

{

OrderSelect(i, SELECT_BY_POS,MODE_TRADES);

if (!TrailAllSymbols)

if (OrderSymbol()!=Symbol()) continue;

if (OrderMagicNumber() < magicNumberfrom) continue;

if (OrderMagicNumber() > magicNumberto) continue;

if (OrderType()==OP_BUY || OrderType()==OP_SELL)

profitSoFar += (OrderProfit()+OrderSwap()+OrderCommission());

}

return(profitSoFar);

}

 
mladen:
apprendista codificatore

Puoi fare qualcosa del genere (scambi e commissioni inclusi, quindi il risultato è un profitto esatto):

double colectProfit()

{

double profitSoFar=0;

//

//

//

//

//

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

{

OrderSelect(i, SELECT_BY_POS,MODE_TRADES);

if (!TrailAllSymbols)

if (OrderSymbol()!=Symbol()) continue;

if (OrderMagicNumber() < magicNumberfrom) continue;

if (OrderMagicNumber() > magicNumberto) continue;

if (OrderType()==OP_BUY || OrderType()==OP_SELL)

profitSoFar += (OrderProfit()+OrderSwap()+OrderCommission());

}

return(profitSoFar);

}

Capito

Stavo pensando a qualcosa nella linea, ma lo swap ha causato risultati sbagliati a volte. Grazie

 

Sì, ma inizia questo errore quando ho aggiunto il trailing stop che ho preso tempo per spiegare. Questo ea ha bisogno di trailing stp, per me è come quello che ho aggiunto che è la prima funzione nella parte superiore del codice, non funziona.

mladen:
L'errore 134 significa: non ci sono abbastanza soldi. La dimensione del lotto dell'ordine è troppo grande per il capitale del conto, non è il risultato di alcuna funzione di trading aggiunta, dato che non ho aggiunto alcuna funzione di trading a questo EA - se hai aggiunto tali funzioni, per favore rivedile, dato che non ho idea di quali cambiamenti nel codice siano stati fatti da te
 

Questo post per Mladen, salve, signore, questo è quello che ho ottenuto quando ho provato a complimentarmi con expert in meta editor, fisher m11 ea, cosa significa? Grazie!

Fisher M11 ea.mq4' Fisher M11 ea.mq4 1 1

stdlib.mqh' stdlib.mqh 1 1

stderror.mqh' stderror.mqh 1 1

lafunzione deve restituire un valore Fisher M11 ea.mq4 94 5

variabile 'cerrada' non usata Fisher M11 ea.mq4 78 8

variabile "price" non usata Fisher M11 ea.mq4 77 10

variabile 'ticket' non usata Fisher M11 ea.mq4 76 7

la dichiarazione di 'c' nasconde la dichiarazione globale alla linea 57 Fisher M11 ea.mq4 191 82

variabile 'i' non usata Fisher M11 ea.mq4 356 18

la dichiarazione di 'slippage' nasconde la dichiarazione globale alla linea 60 Fisher M11 ea.mq4 531 12

la dichiarazione di 'magic' nasconde la dichiarazione globale alla linea 14 Fisher M11 ea.mq4 532 28

il valore di ritorno di 'OrderSelect' dovrebbe essere controllato Fisher M11 ea.mq4 684 4

il valore di ritorno di 'OrderSelect' dovrebbe essere controllato Fisher M11 ea.mq4 791 4

non tutti i percorsi di controllo restituiscono un valore Fisher M11 ea.mq4 801 1

la dichiarazione di 'slippage' nasconde la dichiarazione globale alla linea 60 Fisher M11 ea.mq4 841 12

la dichiarazione di 'magic' nasconde la dichiarazione globale alla linea 14 Fisher M11 ea.mq4 842 28

il valore di ritorno di 'OrderSelect' dovrebbe essere controllato Fisher M11 ea.mq4 1010 4

non tutti i percorsi di controllo restituiscono un valore Fisher M11 ea.mq4 1020 1

il valore di ritorno di 'OrderSelect' dovrebbe essere controllato Fisher M11 ea.mq4 1093 4

il valore di ritorno di 'OrderSelect' dovrebbe essere controllato Fisher M11 ea.mq4 1187 3

la dichiarazione di 'slippage' nasconde la dichiarazione globale alla linea 60 Fisher M11 ea.mq4 1267 11

il valore di ritorno di 'OrderSelect' dovrebbe essere controllato Fisher M11 ea.mq4 1401 3

0 errore(i), 19 avviso(i) 1 20