Come codificare? - pagina 215

 

Un po' di aiuto per la programmazione

Ciao a tutti,

Questo è il mio primo post!

Sto cercando da circa 3 mesi di programmare un EA che riconosca un particolare pattern di candele e apra un ordine di acquisto o vendita dopo quel pattern, ma sto fallendo miseramente!

Non so come postare immagini qui, quindi dovrò descriverlo.

Per un segnale di acquisto/commercio ho provato il programma:

Close[3] < Close[4],

Close[2] < Close[3],

High[2] < Open[3],

Basso[1] > Basso[2] e

Close[1] >= Open[3]

Per il segnale Sell / trade è l'opposto del Buy.

Probabilmente è molto semplice ma non riesco a farlo.

C'è una persona gentile e generosa là fuori che sarebbe disposta a programmare questo per me?

Grazie

 
Cgage2491:
Ciao a tutti,

Per un segnale Buy / trade ho provato il programma:

Close[3] < Close[4],

Close[2] < Close[3],

High[2] < Open[3],

Basso[1] > Basso[2] e

Close[1] >= Open[3]

Per il segnale Sell / trade è l'opposto del Buy.

Grazie

Ciao Cgage....

Senza il tuo codice non so quali siano le tue variabili ma puoi provare a modificare questo...potrebbe funzionare per te.

bool BuyCondition = false ;

bool SellCondition = false ;

//--------- BuyCondition ----------

se (Close[3] < Close[4] && Close[2] < Close[3] && High[2] Low[2] && Close[1] >= Open[3]) BuyCondition = true ; altrimenti BuyCondition = false;

Per il segnale / trade Sell è l'opposto del Buy.

//--------- SellCondition ----------

se (Close[3] > Close[4] && Close[2] > Close[3] && High[2] > Open[3] && Low[1]< Low[2] && Close[1] <= Open[3]) SellCondition = true ; altrimenti SellCondition = false;

Buona fortuna.

Robert

 
cosmiclifeform:
Ciao Cgage....

Senza il tuo codice non so quali siano le tue variabili, ma puoi provare a modificare questo... potrebbe funzionare per te.

bool BuyCondition = false ;

bool SellCondition = false ;

//--------- BuyCondition ----------

se (Close[3] < Close[4] && Close[2] < Close[3] && High[2] Low[2] && Close[1] >= Open[3]) BuyCondition = true ; altrimenti BuyCondition = false;

Per il segnale / trade Sell è l'opposto del Buy.

//--------- SellCondition ----------

se (Close[3] > Close[4] && Close[2] > Close[3] && High[2] > Open[3] && Low[1]< Low[2] && Close[1] <= Open[3]) SellCondition = true ; altrimenti SellCondition = false;

Buona fortuna.

Robert

Grazie per la risposta.

Ho provato qualcosa di simile, ho provato molte cose.

I problemi che ho avuto sono stati trade multipli per barra, trade su ogni barra, non riconoscere affatto il pattern, ecc.

Capisco il lato logico delle cose ma non so come programmarlo.

Ho provato a fare taglia e incolla da altri indicatori / EAs ma non riesco a fargli fare quello che voglio!

Fondamentalmente, se la logica della condizione di acquisto = vero allora apri un trade di acquisto e se la logica della condizione di vendita = vero allora apri un trade di vendita.

Qualsiasi aiuto è apprezzato.

 
Enforcer:
by OrderType( )

OP_BUY - posizione di acquisto,

OP_SELL - posizione di vendita,

OP_BUYLIMIT - comprare posizione limite in sospeso,

OP_BUYSTOP - posizione in attesa di stop all'acquisto,

OP_SELLLIMIT - limite di vendita in attesa di posizione,

OP_SELLSTOP - vendere stop in attesa di posizione.

for (int i = 0; i < OrdersTotal(); i++)

{

OrderSelect(i, SELECT_BY_POS, MODE_TRADES);

if(OrderType() == OP_BUY) {...do some thing....}

if(OrderType() == OP_SELL) {...do other thing....}

}

[/PHP]

Questa sopra è la tua soluzione. Devi contare gli ordini esistenti in modo che l'EA sappia che esistono e non continui a crearne altri

Cgage2491:

I problemi che ho avuto sono stati operazioni multiple per barra, operazioni su ogni barra, non riconoscere affatto il modello, ecc.

Vedi quello che ho detto sopra. Puoi anche provare in modo simile a questo:

[PHP]int i, ticket;

int totale = OrdiniTotali();

doppio totallongs=0, totalshorts =0;

for( i=0;i<totale;i++)

{

OrderSelect(i, SELECT_BY_POS );

if ( OrderComment() == ExpertName )

{

int type = OrderType();

if (( OrderSymbol() == Symbol() && (type == OP_BUY )) {totallongs=totallongs+1;}

if (( OrderSymbol() == Symbol() && (type == OP_SELL )) {totalshorts=totalshorts+1;}

if (( OrderSymbol() == Symbol() && (type == OP_BUYLIMIT || OP_BUYSTOP )) {totallongs=totallongs+1;}

if (( OrderSymbol() == Symbol() && (type == OP_SELLLIMIT || OP_SELLSTOP )) {totalshorts=totalshorts+1;}

}

}
 

Grazie ragazzi,

Molto meglio, ora non fa trading ad ogni barra.

Sono riuscito ad avvicinarmi a quello che volevo ma al momento non sta trovando il modello che cercavo.

Solo qualche ritocco logico, credo.

 

Indicatore percentuale di resistenza

Qualcuno ha o può codificare l'indicatore percentuale di resistenza?

 

Come trovare il massimo e il minimo di dove si trova il mouse?

Ciao Guru là fuori, vorrei un indicatore che mi mostri qual è il range della barra/periodo corrente di dove si trova il mio mouse e lo commenti sullo schermo.

Qualcuno può guidarmi per estrarre i valori che si trovano nella barra di stato di MT4 mostrando i valori High e Low.

Grazie in anticipo.

Saluti

Stardome

 
codersguru:
samahdi,

1- Posso vedere il codice e dirmi cosa vuoi fare?

2- Il numero magico è un numero che assegnate al vostro ordine(i) come riferimento che vi permette di distinguere i diversi ordini.

Dovresti aspettare la terza parte della lezione sugli expert advisor per saperne di più sulla codifica degli expert advisor.

Ciao,

Potreste aiutarmi ad aggiungere la funzione "Time to trade" a questo meraviglioso EA. Devo essere in grado di impostare il "time to trade" nell'EA. Vi prego di codificare questo per me. Ho allegato l'EA. Grazie.

File:
 

Plz aiutami a modificare questo EA!

newdigital:
Tutto ciò che so è che nella maggior parte dei casi non è di aiuto.

Ciao,

Potreste aiutarmi ad aggiungere la funzione "Time to trade" a questo meraviglioso EA. Devo essere in grado di impostare il tempo di negoziazione nell'EA. Per favore, codifica questo per me. Ho allegato l'EA. Grazie.

File:
 

Ottenere l'ordine originale dalla storia

Ciao a tutti,

È possibile ottenere il valore di stop loss originale per un ordine che è stato modificato più volte (es. trailing stop)?

Grazie,

Chris

Motivazione: