[Archive] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 2. - page 112

 

Bonsoir !

J'ai une question simple.

Pour quelle raison, l'EA, après l'initialisation, ne peut pas aller à start() ; ?

Peut-être quelqu'un a-t-il été confronté à un tel problème ?

De init() ; I exit return(0) ; .

Merci d'avance pour la réponse !

 
Et comment savez-vous qu'il "n'est pas allé à Start" ?
 
BBSL:

Bonsoir !

J'ai une question simple.

Pour quelle raison, l'EA, après l'initialisation, ne peut pas aller à start() ; ?

Peut-être quelqu'un a-t-il été confronté à un tel problème ?

De init() ; I exit return(0) ; .

Merci d'avance pour la réponse !

Pas de devis - pas de début. Des tiques sont nécessaires pour passer au départ + l'approbation des experts.
 

Salut à tous et profits !

J'ai un tel problème.

Sur mon ordinateur personnel, je fais une mise en page graphique. Comment le transférer sur un autre ordinateur - quel fichier doit être écrasé ?

Je ne peux pas utiliser la sortie consistant à copier l'ensemble du dossier MT4 puis à le copier sous un nouveau nom sur un autre ordinateur, car c'est trop compliqué. Ce qui est intéressant, c'est que si je laisse le dossier sur un autre ordinateur avec l'ancien nom, il n'y a rien de nouveau sur les graphiques...

Qui sait, à l'aide !

 

BBSL ,j'avais l'habitude d'écrire "start() ;" - c'est comme ça que tu l'as écrit ? Tu n'as pas besoin de deux points ici. Peut-être qu'il n'y a pas de crochets.

kiimar, l'avez-vous fermé ? Si oui, vous devez voir le code

 
BBSL:

Bonsoir !

J'ai une question simple.

Pour quelle raison, l'EA, après l'initialisation, ne peut pas aller à start() ; ?

Peut-être quelqu'un a-t-il été confronté à un tel problème ?

De init() ; I exit return(0) ; .

Merci d'avance pour la réponse !

La réponse est encore plus simple : la présence de l'opérateur return(0) à la fin du corps d'une fonction ne signifie pas que cet opérateur sera jamais exécuté.
 

Comment puis-je vérifier si un ordre est déclenché par TakeProfit ou StopLoss ? Merci pour votre réponse !

 
BBSL:

Pour quelle raison, l'EA, après l'initialisation, ne peut pas aller à start() ; ?

Peut-être que quelqu'un a été confronté à ce problème ?

Parfois, il y a des calculs complexes ou le chargement de l'historique dans init(), ou le terminal a beaucoup d'indicateurs et d'EAs qui suspendent le terminal ou...

mais si, pendant l'initialisation du code, le terminal interrompt le code, l'erreur suivante apparaîtra dans le journal : "....". délai d'attente en expert ...."

Si le journal ne montre aucune erreur, cela signifie que l'initialisation s'est déroulée avec succès. La fonction start() elle-même est facile à vérifier - écrivez start() : Print("new tick") dans la première ligne ;

 
Sayod ,sur quelle période de temps avez-vous négocié et avec quels paramètres ?
 
Jaguar1974:

Comment puis-je vérifier si un ordre est déclenché par TakeProfit ou StopLoss ? Merci pour la réponse !


Vérifier l 'historique des ordres, si le prix de clôture est égal au SL ou TP - alors ..., mais je pense qu'il serait plus facile de vérifier le profit d'un ordre fermé - si > 0 alors prendre sinon ...

voici un morceau de code similaire et significatif :

double history(){
int time = 0;double profit = 0;//обьявляем необходимые нам переменные куда мы положим интересующие нас характеристики ордера
for(int i = OrdersHistoryTotal();i>=0;i--){// Перебираем все закрытые ордера
  if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)){//если ордер с таким номером (i) в списке закрытых ордеров есть ( не путать с тикетом)
    if(OrderSymbol() == Symbol()){//если выбранный ордер был открыт по нашей валютной паре
      if(time<OrderCloseTime()){//(сравниваем его с хранящимся в пероеменной time) 
        time=OrderCloseTime();//если время закрытия ордера больше - ложим его в переменную
        profit=OrderProfit();//и заодно запоминаем прибыль ордера
      }
    }
  }
}
//по окончании этой процедуры в наших переменных будут сидет наибольшее время закрытия, и его профит. Или по нулям если история чистая.
//теперь мы можем выставлять условия в зависимости от результата процедуры
   
if(profit == 0 &&time == 0){//действия если история чистая

}
if(profit >= 0){//действия если последний ордер был прибыльным, или нулевым

}
if(profit <  0 ){//действия если последний ордер был убыточным

}
return(0);
}
Raison: