Come codificare? - pagina 68

 

Altezza della barra precedente

Salve,

Puoi per favore dare il codice per la barra precedente.

Questo può essere usato nell'EA per limitare il piazzamento degli ordini quando la barra precedente è più di una certa altezza.

Cordiali saluti,

SIDDESH

 

Plz correggere il mio codice (EMA di base, STOC ecc.)

ciao... im nuovo qui n nuovo alla codifica mql4... ho costruire alcuni codici basati su condizioni specifiche... spero che voi ragazzi mi può aiutare a correggere se c'è qualche errore...

ok... cominciamo

1) INCROCIO EMA

COMPRARE se:

- EMA 5 > EMA 18

- entrambe le linee sono al rialzo

- differenza tra il prezzo attuale e quello precedente per EMA5 >= 10pips

Attualmente sto usando questo:

double EMA5 = iMA(NULL, 0, 5, 0, MODE_EMA, PRICE_CLOSE, 0);

double EMA5_prev = iMA(NULL, 0, 5, 0, MODE_EMA, PRICE_CLOSE, 1);

double EMA18 = iMA(NULL, 0, 18, 0, MODE_EMA, PRICE_CLOSE, 0);

double EMA18_prev = iMA(NULL, 0, 18, 0, MODE_EMA, PRICE_CLOSE, 1);

if (EMA5 > EMA18) {

if ( EMA5 - EMA5_prev >= 10 && EMA18 > EMA_prev) {

Order = BUY;

}

}

[/CODE]

2) RSI

double RSI = iRSI(NULL, 0, 18, PRICE_CLOSE, Current + 0);

double RSI_prev = iRSI(NULL, 0, 18, PRICE_CLOSE, Current + 1);

if (RSI > 50 && RSI > RSI_prev) {

Order = BUY;

}

[/CODE]

3) STOCH

Buy when the Oscillator (either %K or %D) falls below a specific level (e.g., 20) and then rises above that level. Sell when the Oscillator rises above a specific level (e.g., 80) and then falls below that level

[code]

double STOCH_K = iStochastic(NULL, 0, 5, 3, 3, MODE_SMA, 0, MODE_MAIN, 0);

double STOCH_D = iStochastic(NULL, 0, 5, 3, 3, MODE_SMA, 0, MODE_SIGNAL, 0);

if (STOCH_K < 20 || STOCH_D < 20) {

Order = BUY;

}

* i think i've skipped the red one.. dont know how to do that part..

Buy when the %K line rises above the %D line and sell when the %K line falls below the %D line

[code]

double STOCH_K = iStochastic(NULL, 0, 5, 3, 3, MODE_SMA, 0, MODE_MAIN, 0);

double STOCH_D = iStochastic(NULL, 0, 5, 3, 3, MODE_SMA, 0, MODE_SIGNAL, 0);

if (STOCH_K > STOCH_D) {

Order BUY;

} else

if {STOCH_K < STOCH_D) {

Order SELL;

}

4) Nella codifica Stoc, MODE_MAIN indica per cosa? MODE_SIGNAL indica per cosa?

5) come mettere l'auto close e l'auto on timer per l'EA?

es: impostare l'apertura alle 8 del mattino e la chiusura alle 5 del pomeriggio

6) come mettere l'EA disabilitato su un altro grafico quando si apre una posizione?

per esempio usare un EA su 2 coppie (GU e EJ) quando viene aperto un post su GU poi disabilitare EA su EJ..

scusate se questa domanda è piuttosto elementare... spero che voi ragazzi possiate insegnarmi... thx

 

Uno stoploss difficile - potete aiutarmi con questo?

Ho messo insieme un EA a cavallo del trend. Quando il profitto raggiunge un certo livello, voglio spostare lo stoploss per una parte dei lotti aperti, a quel livello di profitto. Lascerei stare il resto dei lotti (o sposterei lo stoploss per il resto fino al break even).

Non sto usando un Take Profit.

Come faccio a codificare questo?

Grazie,

Grande essere

 
Big Be:
... Quando il profitto raggiunge un certo livello, voglio spostare lo stoploss per una PARTE dei lotti aperti, a quel livello di profitto. ..

Come faccio a codificare questo?

Grazie,

Grande essere

Non puoi farlo a meno che tu non abbia posizioni multiple: ci può essere un solo SP/TP per posizione. Ma puoi chiudere una parte di una posizione: basta mettere il numero di lotti che vuoi chiudere nella funzione OrderClose(..).

Quello che puoi anche fare (dipende dal tuo broker) è di mettere uno stop pendente (hedge) per la parte che vuoi: poi più tardi dovrai fare un comando o una funzione "CloseBy".

 

#domanda sull'importazione

Ciao a tutti

ho bisogno di calare questa funzione API in MT4

int GetMouseMovePoints(

UINT cbSize // dimensione della struttura MOUSEMOVEPOINT

LPMOUSEMOVEPOINT lppt, // puntatore al punto di spostamento del mouse corrente

LPMOUSEMOVEPOINT lpptBuf, // buffer per memorizzare i punti

int nBufPoints, // quanti punti può contenere il buffer

DWORD resolution // risoluzione dei punti

);

per favore ditemi la clausola #import

grazie

 
DooMGuarD:
ciao a tutti

Ho bisogno di calare questa funzione API in MT4

int GetMouseMovePoints(

UINT cbSize // dimensione della struttura MOUSEMOVEPOINT

LPMOUSEMOVEPOINT lppt, // puntatore al punto di spostamento corrente del mouse

LPMOUSEMOVEPOINT lpptBuf, // buffer per memorizzare i punti

int nBufPoints, // quanti punti può contenere il buffer

DWORD resolution // risoluzione dei punti

);

per favore dimmi la clausola #import

grazie

Spostato la tua domanda in questo thread.

 

Un trade per barra?

So che questo è stato trattato prima, ma qualcuno può mostrarmi del codice per permettere solo 1 trade per barra?

Grazie.

 

Michel,

grazie.

Avevo paura di questo.

Ora devo imparare il "divertimento con i numeri magici".

Grande essere

 

Domanda!!!

Come faccio a codificare questo?

Se i precedenti 6 trade erano in perdita, ho provato questo, e non funziona!!!

int MTL;

extern MaxTradeLoss=6;

int start()

{

for(int b=0;b<MaxTradeLoss;b++)

{

if(OrderSelect(b,SELECT_BY_POS,MODE_HISTORY)==true)

{

if(OrderSymbol()==Symbol() && OrderProfit()<0)

{

MTL++;

}

}

}

MTL=0;

return(0);

}

 
Dan7974:
Come faccio a codificare questo?

Se i precedenti 6 trade erano in perdita, ho provato questo, e non funziona!!!

int MTL;

extern MaxTradeLoss=6;

int start()

{

for(int b=0;b<MaxTradeLoss;b++)

{

if(OrderSelect(b,SELECT_BY_POS,MODE_HISTORY)==true)

{

if(OrderSymbol()==Symbol() && OrderProfit()<0)

{

MTL++;

}

}

}

MTL=0;

return(0);

}

la tua affermazione MTL=0; imposta praticamente MTL a zero, indipendentemente da ciò che ha contato nel ciclo "for". Quella linea dovrebbe essere prima del ciclo "for" e non dopo.