Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Cercherò di spiegarmi:
Supponiamo che io abbia 3 sistemi diversi:
il sistema 1 funziona meglio sul grafico EUR/USD 1M.
il sistema 2 funziona meglio sul grafico EUR/USD 5M.
il sistema 3 funziona meglio sul grafico EUR/USD 1H.
Ora voglio che il mio expert advisor apra 1 posizione per grafico e non di più. In altre parole, voglio aprire 1 posizione solo per il sistema 1, 1 posizione per il sistema 2 e 1 per il sistema 3.
La soluzione precedente che hai scritto limita 1 posizione per simbolo, e ora voglio limitare 1 posizione per tipo di grafico...
. In altre parole, voglio aprire 1 posizione solo per il sistema 1, 1 posizione per il sistema 2 e 1 per il sistema 3.
OK
allora lavorate con MAGIC Number per sistema
#property link ""
#define MAGIC 01901
.
.
.
if ( ExistPosition() == False) {
OrderSend(Symbol(),op,Lots,pp,SLIPPAGE,ldStop,ldTake,lsComm,MAGIC,0,clOpen); // MAGIC = system 1
}
// if open 1 position only for system 1 MAGIC ?
bool ExistPosition() {
bool Exist=False;
for (int i=0; i<OrdersTotal(); i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==Symbol() && OrderMagicNumber()==MAGIC) Exist=True;
}
}
return(Exist);
}puoi postare i tuoi sistemi?
10x!
Non ho un sistema specifico. Era solo un esempio.
Sono nuovo di metaTrader e questa era una domanda di base che avevo ...
Appena scriverò qualcosa di buono lo caricherò qui per i commenti...
Come fare in modo che l'ea faccia trading una volta per candela?
Mi stavo chiedendo se c'è un pezzo di codice che posso aggiungere a un EA in modo che scambi solo una volta per candela.
Grazie in anticipo
Mi stavo chiedendo se c'è un pezzo di codice che posso aggiungere a un EA in modo che scambi solo una volta per candela. Grazie in anticipo
statico datetime timeprev;
if(timeprev==Time[0]) {
return(0); //eseguire solo sulla nuova barra
} else if (timeprev==0) {
timeprev=Time[0]; //non fare nulla se appena aggiunto al grafico
return(0);
} else {
timeprev=Time[0];
// elabora la barra qui
}
statico datetime timeprev;
if(timeprev==Time[0]) {
return(0); //eseguire solo sulla nuova barra
} else if (timeprev==0) {
timeprev=Time[0]; //non fare nulla se appena aggiunto al grafico
return(0);
} else {
timeprev=Time[0];
// elaborazione della barra qui
}Grazie ra300z
Visualizzare l'obiettivo percentuale?
Ciao
Sto cercando di visualizzare un obiettivo percentuale sotto forma di commento all'interno di un ea.
Ho questo pezzo di codice che visualizza il saldo corrente come commento:
"Obiettivo percentuale: " + Saldo del conto()"\n
All'inizio dell'ea ho il seguente:
extern int ProfitPercentage=25;
Ora quello che voglio fare è : AccountBalance * ProfitPercentage e visualizzare i risultati. es. $5675.69 * 25% = $1418.92 e visualizzare solo $1418.69.
Grazie in anticipo
ciao ragazzi....
1:come fare l'EA per scambiare solo un segnale a tempo...(quello che intendo è il codice)
per esempio ma cross EA... quando il ma cross up e con target 20 pip verrà chiuso ma quando il trend continuerà cercherà di aprire un altro trade dato che il fast ma è ancora sopra lo slow ma.it deve solo aprire un altro trade quando il ma cross down.
fast ma > slow ma = bisogno di un solo segnale di trading
fast ma < slow ma = anche bisogno di un solo segnale commerciale
2:c'è comunque la possibilità di mettere un ritardo sull'incrocio? So solo che pip seperation (qualunque cosa lo chiamino) significa che aspetterà forse 10-15 pip dopo l'incrocio per aprire solo un trade.
sono solo un principiante che cerca di imparare il linguaggio di mq4:)
Un modo sarebbe quello di fare in modo che l'EA guardi le letture storiche delle MA piuttosto che quelle attuali. In linea di principio sarebbe così:
if ( fast( past+1 ) slow( past ) )
then cmd = OP_BUY;
else if ( fast( past+1 ) >= slow( past+1 ) && fast( past ) < slow( past ) )
then cmd = OP_SELL;
else return;
// If processing reaches this point, then a trade decision of either OP_BUY
// or OP_SELL has been made, due to recognising a supporting MA crossing
// at "past" number of bars in history.
// Limit to only one trade in a direction
static int last_trade = -1;
if ( last_trade == cmd ) return;
last_trade = cmd;
// If processing reaches this point, then this processing is the first time
// that the supporting MA crossing is recognised.Che prenderebbe una decisione al numero "passato" di barre successive alla barra in cui si verifica l'incrocio, e permetterebbe un trade solo la prima volta che l'incrocio viene rilevato.
grazie fratello per il codice...