Chiedete! - pagina 155

 

aiuto per codificare SL e TP

Ciao ragazzi,

Ho un problema con un ea che sto cercando di utilizzare su un live ac con fxcm bt,

il problema è che non permette di piazzare l'SL e il TP con l'ordine a mercato,

quindi ho bisogno di un codice per ritardare in qualche modo questo di qualche secondo,

qualsiasi aiuto su questo sarebbe molto apprezzato

grazie in anticipo

File:
 
mallet52:
Ciao ragazzi,

Ho un problema con un ea che sto cercando di utilizzare su un live ac con fxcm bt,

il problema è che non permette di piazzare l'ordine sl e tp con l'ordine a mercato,

quindi ho bisogno di un codice per ritardare in qualche modo questo di qualche secondo,

qualsiasi aiuto su questo sarebbe molto apprezzato.

grazie in anticipo

Puoi usare la funzione "sleep" tra ogni ordine di chiusura o modifica dell'ordine. Per esempio:

Sleep(5000);

Questo è un ritardo di 5 secondi (il parametro sleep è in milisecondi).

Saluti,

Marcel.

 

ADX e MACD CrossOver

I membri anziani possono scrivere un codice per un crossover del MACD e dell'ADX in una finestra separata e per mettere una linea verticale tratteggiata quando lo fa. Si spera, diciamo una verde per l'acquisto e una rossa per la vendita. Inoltre, un allarme sonoro quando lo fa.

Grazie mille.

 

aiuto necessario per codificare il ritardo per SL e TP

Ciao ragazzi,

Ho ancora problemi a far funzionare il mio ea con fxcm bt, mi dicono che ho un problema con l'ea che piazza sl e tp nello stesso momento in cui mette un ordine a mercato,

Mladen ha gentilmente ricodificato questo ea per fargli accettare i prezzi a 5 cifre e ora è venuto fuori questo problema,

Sarebbe bello se qualcuno potesse codificare il ritardo nell'ea che è necessario per me, o spiegarlo in dettaglio (dato che non ho alcuna conoscenza su come codificare) e ci proverò io stesso, così non dovrò continuare a disturbare tutti gli altri.

grazie in anticipo

e a tutti coloro che mi hanno aiutato in passato

 

Ecco la mia ea che ho dimenticato di aggiungere nell'ultimo post

File:
 

...

Il modo in cui deve essere codificato non è quello di usare il ritardo (il ritardo non aiuta in casi come questi) ma di dividere il piazzamento di un nuovo ordine in due parti
: 1. Piazzamento di ordini senza stop loss e/o take profit

2.

Piazzamento di stop loss e/o take profit in un passo separato (quando e solo quando un ordine è già stato accettato). Piazzare

stop loss e/o take profit in un passo separato (quando e solo quando un ordine è già accettato)

__________________________________

Ora, Phoenix EA sta facendo questa operazione in 10 posti separati e tutti avrebbero bisogno di essere riscritti (o la logica dell'EA che piazza gli ordini dovrebbe essere riscritta per poter controllare rigorosamente i potenziali errori, e così via, e così via...) In questo momento non ho il tempo di fare la riscrittura completa (richiederebbe più tempo per farla bene), quindi non posso prometterti che lo farò .

saluti

mladen

mallet52:
Ciao ragazzi,

Ho ancora problemi a far funzionare il mio ea con fxcm bt, mi dicono che ho un problema con l'ea che piazza sl ant tp nello stesso momento in cui mette un ordine a mercato,

Mladen ha gentilmente ricodificato questo ea in modo che accettasse i prezzi a 5 cifre e ora si è presentato questo problema,

Sarebbe bello se qualcuno potesse codificare il ritardo nell'ea che è necessario per me, o spiegarlo in dettaglio (dato che non ho alcuna conoscenza su come codificare) e ci proverò io stesso, così non dovrò continuare a disturbare tutti gli altri.

grazie in anticipo

e a tutti coloro che mi hanno aiutato in passato

 

Originale Mov. Ave da mettere in una finestra separata

Ho provato a cambiare l'unica linea di codice originale per la media mobile che viene fornita con MetaTrader 4 e metterla in una finestra separata, ma quando lo faccio non mostra tutte le opzioni che vorrei avere con il codice originale, cioè come [ Ma metodo 'semplice'] e applicare a 'close' o open ecc...

Cosa sto facendo di sbagliato?

Grazie mille.

 

...

Non stai facendo nulla di sbagliato

Metatrader, per ora (sta per essere cambiato nella versione 5) non permette questi inserimenti di parametri "descrittivi" negli indicatori personalizzati (quindi, gli indicatori non-built-in).

newcoder:
Ho provato a cambiare l'unica linea di codice originale per la media mobile che viene fornita con MetaTrader 4 e metterla in una finestra separata, ma quando lo faccio non mostra tutte le opzioni che vorrei avere con il codice originale, cioè come [ Ma metodo 'semplice'] e applicare a 'close' o open ecc...

Cosa sto facendo di sbagliato?

Grazie mille.
 

Rapido ringraziamento a mladen

Grazie per avermi aiutato mladen, il tuo aiuto è molto apprezzato,

Ho provato a mandarti un pm ma non ci riesco per qualche motivo

comunque, grazie ancora

 

Frequenza degli avvisi degliindicatori personalizzati

Sono nuovo di mq4 e sto cercando di creare una visualizzazione sullo schermo quando c'è un crossover per i miei MACD personalizzati. Di seguito è riportato il mio codice, ma gli avvisi continuano a comparire ogni pochi minuti.

Come posso codificarlo per visualizzare gli avvisi solo una volta ogni ora? O un avviso per barra?

//--------------------------

int start()

{

stringa MACD1="";

colore colt9;

double MACDM_S10 = iCustom(NULL, PERIOD_H1, "MACD", 8,17,9, MODE_MAIN, 0);

double MACDS_S10 = iCustom(NULL, PERIOD_H1, "MACD", 8,17,9, MODE_SIGNAL,0);

double MACDM_S11 = iCustom(NULL, PERIOD_H1, "MACD", 8,17,9, MODE_MAIN, 1);

double MACDS_S11 = iCustom(NULL, PERIOD_H1, "MACD", 8,17,9, MODE_SIGNAL,1);

if ((MACDM_S11 < MACDS_S11 && MACDM_S10 < MACDS_S10)) { MACD1="IN UPTREND"; colt9=LimeGreen; }

if ((MACDM_S11 > MACDS_S11 && MACDM_S10 > MACDS_S10)) { MACD1="IN DOWNTREND"; colt9=Rosso; }

if ((MACDM_S11 > MACDS_S11 && MACDM_S10 < MACDS_S10)) { MACD1="NUOVO INCROCIO ALTO"; colt9=VerdeLime; }

if ((MACDM_S11 MACDS_S10)) { MACD1="NUOVO INCROCIO DOWN"; colt9=Rosso; }

stringa MACD2="";

colore colt14;

double MACDM_L10 = iCustom(NULL, PERIOD_H1, "MACD", 12,26,9, MODE_MAIN, 0);

double MACDS_L10 = iCustom(NULL, PERIOD_H1, "MACD", 12,26,9, MODE_SIGNAL,0);

double MACDM_L11 = iCustom(NULL, PERIOD_H1, "MACD", 12,26,9, MODE_MAIN, 1);

double MACDS_L11 = iCustom(NULL, PERIOD_H1, "MACD", 12,26,9, MODE_SIGNAL,1);

if ((MACDM_L11 < MACDS_L11 && MACDM_L10 < MACDS_L10)) { MACD2="IN UPTREND"; colt14=LimeGreen; }

if ((MACDM_L11 > MACDS_L11 && MACDM_L10 > MACDS_L10)) { MACD2="IN DOWNTREND"; colt14=Rosso; }

if ((MACDM_L11 > MACDS_L11 && MACDM_L10 < MACDS_L10)) { MACD2="NUOVO INCROCIO ALTO"; colt14=LimeGreen; }

if ((MACDM_L11 MACDS_L10)) { MACD2="NUOVO INCROCIO DOWN"; colt14=Rosso; }

if(MACD1=="NUOVO INCROCIO ALTO"&&MACD2=="IN UPTREND")

Alert(Symbol()," - ", "H1:"," MACD MAIN UPTREND MOVEMENT"," at ", Bid, " - ",TimeToStr(CurTime(),TIME_SECONDS));

if(MACD1=="NEW DOWN CROSSING"&&MACD2=="IN DOWNTREND")

Alert(Symbol()," - ", "H1:"," MACD MAIN DOWNTREND MOVEMENT"," at ", Bid, " - ",TimeToStr(CurTime(),TIME_SECONDS));

if(MACD2=="NUOVO INCROCIO ALTO"&&MACD1=="IN UPTREND")

Alert(Symbol()," - ", "H1:"," MACD," MAIN TREND CHANGE TO UPTREND"," at ", Bid, " - ",TimeToStr(CurTime(),TIME_SECONDS));

if(MACD2=="NEW DOWN CROSSING"&&MACD1=="IN DOWNTREND")

Alert(Symbol()," - ", "H1:"," MACD," MAIN TREND CHANGE TO DOWNTREND"," at ", Bid, " - ",TimeToStr(CurTime(),TIME_SECONDS));

return(0);

}

Motivazione: