Graphique M1 : barres manquantes - page 4

 
DanLett:
mais alors comment répéter la demande d'ouverture d'un ordre, par exemple, s'il n'y a pas de barre 8 34 et ce qui s'ouvrirait à 8 35.... ? !
Définissez la fourchette, par exemple : n'ouvrez pas l'ordre à 34 minutes, mais de 33 à 35, par exemple.

((Minute()>=33) && (Minute()<=35))
 
DanLett:
S'ouvre-t-il ou non ?
 
DmitriyN:

Simplifié à l'extrême. Réglez votre temps d'une minute de plus que celui du serveur. Et exécutez-la :

Ce code ouvre-t-il vos commandes ?

Ça marche pour moi.

L'ensemble du code


int start()

{

//----

si ((OrdersTotal()==0 && Hour()==21) && (Minute()>=13))

OrderSend(Symbol(),OP_SELL,0.01,Bid,0,Ask+100*Point,Ask-100*Point,"DLSexp",123,0) ;

Print(GetLastError();

//----

retour(0) ;

}



Il donne toujours

2012.06.27 22:17:00 wesfsdf EURUSD,M1 : 0

PS wesfsdf le nom de l'EA)


 
DanLett:

tous les codes


int start()

{

//----

si ((OrdersTotal()==0 && Hour()==21) && (Minute()>=13))

OrderSend(Symbol(),OP_SELL,0.1,Bid,0,Ask+100*Point,Ask-100*Point,"DLSexp",123,0) ;

Print(GetLastError() ;

//----

retour(0) ;

}



Je l'ai tout le temps

2012.06.27 22:17:00 wesfsdf EURUSD,M1 : 0

PS wesfsdf le nom du conseiller expert)


Dans le testeur il n'y a pas d'erreurs, c'est clair, il faut regarder le log du réel (mieux vaut la démo d'abord, car le robot perd son sang froid, ne vous pressez pas avec le réel).
 
Je pense qu'il y a vraiment un problème avec le levier dans les lots, nous devons trouver quel levier est sur le testeur... comment faire ? !
 
DanLett:
Je pense qu'il y a vraiment un problème avec le levier dans les lots, nous devons trouver quel levier est sur le testeur... comment faire ? !


Essayez d'exécuter celui-ci. Vous avez peut-être des arrêts à faire après.

int start()
{
if (OrdersTotal()==0)

OrderSend(Symbol(),OP_SELL,0.01,Bid,0,0,0,"DLSexp",123,0);
Print(GetLastError());

return(0);

}
 
Putain de merde...
Où, dans la ligne OrderSend
, se trouvent le code de retour et l'analyse des erreurs ???
 
jartmailru:
Qu'y a-t-il à analyser, il y a une erreur de 130 - clairement.
 

J'ai compris mon erreur,

if(OrdersTotal()==0) J'avais 4 transactions ouvertes, donc il ne s'est pas ouvert :) merci beaucoup pour votre aide !

Une dernière question

Comment puis-je ouvrir une seule transaction avec cet EA ?

Exemple : ouvrir une transaction soit Acheter ou Vendre après avoir clôturé au TP ou au Sl puis ouvrir une autre transaction sous la condition,

c.-à-d. si la condition 1 : alors Acheter

si la condition 2 : alors Vendez et fermez-les exactement...

Mais que se passerait-il si mes transactions ouvertes plus tôt ne se clôturaient pas ?

 
DanLett:

Mais il ne ferme pas mes commandes précédemment ouvertes !

Et votre conseiller expert ne ferme pas les ordres - il n'a pas de mécanisme de fermeture. Vos ordres sont fermés par TP ou SL.
Si la condition OrdersTotal()=0, l'ouverture aura lieu s'il n'y a pas d'ordres, c'est-à-dire si leur nombre est égal à 0.
Si la condition OrdersTotal ()<2, l'ouverture sera, si le nombre d'ordres est inférieur à 2.