[ARCHIVE !] Toute question de débutant, pour ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 4. - page 33

 
Andrew1001:

Bonsoir. Veuillez m'indiquer où et ce que j'ai fait de mal !

Premièrement - veuillez insérer le code via le bouton approprié dans votre message.

Deuxièmement, il n'y a pas de fonction If dans MQL4.

int start()


{
int cnt, ticket, total, profit;
total = OrdersTotal();
if(total < 1)
{
ticket=OrderSend(Symbol(),OP_BUY,LotTrend,Ask,0,Ask-SL*Point,Ask+TP*Point,0,511,0,Green);
}
profit = OrderProfit();
If (OrderProfit < 0) /*если сработал стоплосс*/
{
ticket=OrderSend(Symbol(),OP_SELL,LotTrend,Bid,0,Bid+SL*Point,Bid-TP*Point,0,511,0,Red);
} /*открываем позицию в противоположном направлении*/
return;
}

Мне выдает такие ошибки:
'If' - function is not defined
'<' - left parenthesis expected
'{' - semicolon expected
ПОДСКАЖИТЕ ПОЖАЛУЙСТА что я сделал не так! 
 
Arles:

Bonjour à tous !

Il y a environ une semaine, j'ai commencé à apprendre la programmation et j'ai obtenu un résultat intéressant. Je ne sais pas si je peux lui faire confiance. Je viens de penser à un indicateur pendant longtemps et je viens juste de réussir à l'implémenter en code.


Cela semble bon dans l'ensemble. Il y a une question sur la différence entre le trade rentable maximum et le trade rentable moyen.

Essayez de l'exécuter sur différentes périodes : 2003, 2004, année.

J'ai eu des cas où la tendance est positive une année et négative l'année suivante. Vous ne pouvez pas le faire une année à la fois.

 
Andrew1001:

Bonsoir. S'il vous plaît, dites-moi où et ce que j'ai fait de mal !

int start()


{
int cnt, ticket, total, profit ;
total = OrdersTotal() ;
if(total < 1)
{
ticket=OrderSend(Symbol(),OP_BUY,LotTrend,Ask,0,Ask-SL*Point,Ask+TP*Point,0,511,0,Green) ;
}
profit = OrderProfit() ;
If (OrderProfit < 0) /*si le stop loss s'est déclenché*/
{
ticket=OrderSend(Symbol(),OP_SELL,LotTrend,Bid,0,Bid+SL*Point,Bid-TP*Point,0,511,0,Red) ;
} /*ouverture de la position dans la direction opposée*/
return ;
}

Je reçois ces erreurs :
'If' - la fonction n'est pas définie
'<' - parenthèse gauche attendue
'{' - point-virgule attendu
S'IL VOUS PLAÎT, dites-moi ce que j'ai mal fait!


1. (trivia) "Si" s'écrit avec un petit "si".

2. (l'essentiel) pour utiliser la fonction OrderProfit(), l'ordre lui-même sur lequel le profit est lu doit être sélectionné à l'aide de la fonction OrderSelect().

Pour savoir quel a été le résultat de la fermeture du dernier ordre, nous devons trouver le dernier ordre fermé.

 
abolk:


1. (anecdote) "Si" s'écrit avec un petit "si".

2. (le plus important) pour utiliser la fonctionOrderProfit(), l'ordre lui-même, dont le profit doit être lu, doit être sélectionné à l'aide de la fonction OrderSelect().

Pour savoir quel a été le résultat de la fermeture du dernier ordre, nous devons trouver le dernier ordre fermé.

Merci ! Pouvez-vous me dire comment faire !))
 
Arles:

Bonjour à tous !

Il y a environ une semaine, j'ai commencé à apprendre la programmation et j'ai obtenu un résultat intéressant. Je ne sais pas si je peux lui faire confiance. J'ai inventé cet indicateur il y a longtemps et ce n'est que maintenant que j'ai pu l'implémenter dans le code.


Ici, le testeur même stupidement faux compte, ou plutôt avec une erreur, ou quoi, si vous, en se référant aux résultats, la transaction en -22 négatif sera le minimum, alors vous, si je comprends tout correctement, ne peut pas être un drawdown absolu 4.00, vous avez déjà un commerce donne 20,00, oui, plus loin à aller, d'ailleurs, vous avez un drawdown 29049(63%), mais encore une fois, comment pourriez-vous obtenir si, si vous avez seulement deux transactions pour environ -20)) plus court juste quelque chose ne compte pas comme le testeur lui-même.
 

J'ai écrit une fonction pour déplacer tous les stops au même niveau, mais à la fin chacun des ordres ouverts se ferme à son propre stop loss, qui a été spécifié à l'ouverture, c'est-à-dire que je suppose que les stops ne sont déplacés nulle part, quel pourrait être le problème ?

void OrModSL(string period)//fonction pour déplacer le stop vers la fractale inférieure du graphique 15 minutes

{
if(period=="M15")//si period H1
{
for(int i=OrdersTotal()-1;i>=0;i--)
{
RefreshRates() ;
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderType()==OP_BUY)//si le dernier ordre d'achat est de type
{
OrderModify(OrderTicket(),OrderOpenPrice(),dnfrM15,OrderTakeProfit(),0,Blue) ;
}

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderType()==OP_SELL)
{
OrderModify(OrderTicket(),OrderOpenPrice(),upfrM15,OrderTakeProfit(),0,Blue);//si le dernier ordre vend
}
}

retour(0) ;


 

Bonjour !

Une fois de plus, je voudrais demander un exemple ou un lien pour montrer comment ajouter des informations à un fichier sans effacer le précédent, le pointeur de fichier est particulièrement intéressant (je ne l'ai jamais utilisé auparavant).

Merci.

 

Je ne sais pas où l'on peut apprendre à écrire des codes, y a-t-il un site web qui dit clairement et précisément quoi et comment écrire en code pour que le conseiller puisse passer des ordres, mettre des stops et des profits, etc. Je n'ai pas d'argent pour commander un conseiller, mais les idées me semblent très bonnes.

 
sting-igor:

Je ne sais pas où l'on peut apprendre à écrire des codes, y a-t-il un site web qui dit clairement et précisément quoi et comment écrire en code pour que le conseiller puisse passer des ordres, mettre des stops et des profits, etc. Je n'ai pas d'argent pour commander un conseiller, mais les idées me semblent très bonnes.



Je n'ai pas l'argent pour commander un EA, mais je pense que les idées sont très bonnes.
Raison: