Comment coder ? - page 150

 

Bonjour, j'utilise un expert qui doit pouvoir renvoyer un ordre d' achat ou de vente s'il y a un problème pour ouvrir l'ordre si le serveur est déconnecté, occupé ou autre. Ce matin, il aurait dû ouvrir un ordre mais n'a pas pu le faire parce que la plateforme était déconnectée. Dans le code actuel, il est configuré pour attendre 3 secondes puis réessayer, ce qu'il a fait mais il n'a essayé que 3 fois puis a arrêté d'essayer d'envoyer l'ordre. Mon ea ne scalpe pas mais il s'agit plutôt d'un trade à moyen terme, je n'ai donc que 1-3 trades par semaine par paire. Comment puis-je le coder pour qu'il attende 10 secondes avant de réessayer et qu'il continue à essayer d'envoyer l'ordre jusqu'à ce qu'il passe, j'aimerais avoir la possibilité d'ajuster dans le code le nombre de secondes d'attente avant de réessayer et le nombre de fois qu'il essaie.

J'ai joint un extrait de code pour que quelqu'un puisse voir ce qui pourrait être modifié. Merci d'avance pour votre aide !

Mike

RefreshRates() ;

int ticket=OrderSend(Symbol(),OP_BUY,ManagedLotSize(),Ask,Slippage,sl,tp, "Expert" + " - " + Period(),MagicNumber,0,Lime) ;

si(ticket<0)

{

Print("Erreur lors de l'ouverture d'un ordre BUY : ",GetLastError()) ;

Sleep(3000) ; //---- attendre 3 secondes

}

else

{

pause ;

}

}

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))

{

Print("Ordre BUY ouvert : ",OrderOpenPrice()) ;

}

sinon

{

Print("Erreur lors de l'ouverture de l'ordre BUY : ",GetLastError()) ;

}

}

void ManageSell()

{

double tp,sl ;

if (TakeProfit==0) { tp=0 ; } else { tp=Bid-TakeProfit*Point ; }

if (StopLoss==0) { sl=0 ; } else { sl=Bid+StopLoss*Point ; }

for (int i = 1 ; i <=5 ; i++) //---- Boucle si requote

{

RefreshRates() ;

int ticket=OrderSend(Symbol(),OP_SELL,ManagedLotSize(),Bid,Slippage,sl,tp, "Expert" + " - " + Period(),MagicNumber,0,Red) ;

if(ticket<0)

{

Print("Erreur lors de l'ouverture de l'ordre SELL : ",GetLastError()) ;

Sleep(3000) ; //---- attendre 3 secondes

}

else

{

pause ;

}

}

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))

{

Print("Ordre SELL ouvert : ",OrderOpenPrice()) ;

}

sinon

{

Print("Erreur lors de l'ouverture de l'ordre SELL : ",GetLastError()) ;

}

 

Utilisez le fichier include OrderReliable.

Lux

Dossiers :
 

Salut kevin07,

Je vais tester la nouvelle version du signal d'alerte nonlagzigzag à l'ouverture du marché dimanche. Merci encore pour votre travail. Vous et les autres ici qui donnent leur temps et leur expertise pro bono sont ce qui fait que beaucoup d'entre nous sont des traders plus performants. Je vous ferai part de mes résultats avec le nouvel indi.

Meilleures salutations, Tom.

 

aide pour corriger cet indicateur

Bonjour à tous, lorsque j'essaie de compiler cet indicateur, cette erreur apparaît, pouvez-vous la corriger ?

merci

Dossiers :
 
zombie333:
Bonjour à tous, quand j'essaye de compiler cet indicateur, cette erreur m'apparaît, est-ce que je peux la corriger s'il vous plaît ?

Ne vous inquiétez pas, il ne s'agit pas d'erreurs, mais seulement d'avertissements. Ils ont mis toute la bibliothèque dans l'indicateur, mais n'ont utilisé qu'une partie.

 
Roger09:
Ne vous inquiétez pas, ce ne sont pas des erreurs, ce sont seulement des avertissements. Ils ont mis toute la bibliothèque dans l'indicateur, mais n'ont utilisé qu'une partie.

Merci Roger de m'avoir expliqué ce que cela signifie,

mais pourquoi il n'apparaît pas quand je le place sur le graphique ?

Pouvez-vous le vérifier s'il vous plaît ?

 

Si vous l'avez placé dans le répertoire /experts/indicateurs puis compilé, redémarrez votre terminal et regardez dans Navigator/Custom Indicators.

 
Roger09:
Si vous le placez dans le répertoire /experts/indicateurs puis le compilez, redémarrez votre terminal et regardez dans Navigator/Custom Indicators.

Non, Roger, c'est ce que je veux dire,

Dossiers :
 

Lorsque vous démarrez votre indicateur, les importations de DLL devraient être autorisées.

 
Roger09:
Lorsque vous démarrez votre indicateur, les importations de DLL devraient être autorisées.

Merci Roger ,, maintenant ça marche ,,

Raison: