Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 63
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Je vois, plus de questions alors :
Vous devez contrôler l'heure d'ouverture de la bougie avec la fonction : iTime
J'ai essayé de contrôler le temps d'ouverture d'un chandelier avec cette fonction : iTime
L'ordre s'ouvre à la bougie de 15 heures...... mais la bougie de 15 heures n'est souvent pas la première.
Avant cela, les chandeliers précédents avaient déjà été en contact avec 1.3000.
Et je veux que ce soit le premier chandelier qui a franchi 1.3000 à 15 heures, sans aucun autre chandelier.
Merci.
Parfois, les nouveaux venus sont déconcertés... exactement la logique, la simple logique humaine. et la programmation est plutôt linéaire. essayez de penser à vos conditions en une seule ligne.
Laissez-moi vous donner mon idée sous forme de graphique.
http://clip2net.com/s/5vbxUK
Et comment exprimer cette idée en une ligne ?
Merci.dans le temps, dans l'ordre inverse. C'est ainsi que le programme l'analyserait.
Désolé - je ne comprends pas bien votre intention.
J'apprécierais si vous pouviez écrire ce que cela pourrait donner sous forme de code...
Merci.
Bonjour à tous !
Je serais très reconnaissant à toute personne qui pourrait me dire comment coder une telle idée.
Le graphique TF 5
Actuellement, l'offre est à 1.3150
Il y a un niveau de prix - 1.3000.
Le prix baisse.
====================================
// Si le prix franchit 1.3000.
// Si le prix traverse d'abord 1.3000.
// Si le prix franchit pour la première fois 1.3000 et que le franchissement se situe dans la bougie de15 heures (c'est-à-dire 15:00,15:05.....15:55)
// Ouvrir un commerce.
===================================
Merci.il ne s'agit que d'une idée sans mise en œuvre complète
il ne s'agit que d'une idée sans mise en œuvre complète
Désolé - je ne comprends pas bien votre intention.
J'apprécierais si vous pouviez écrire ce à quoi cela pourrait ressembler sous forme de code...
Merci.
Le chemin vers le code est encore long, il faut comprendre le principe, l'algorithme.
Cela fait deux jours que je me débats et je n'arrive pas à comprendre. J'ai besoin de trouver le prix le plus bas des n dernières barres, mais pas à partir de la barre actuelle, mais à partir de la barre reçue par la fonction. La fonction renvoie l'indice de la barre à laquelle l'ordre a été ouvert. C'est à partir de cette barre qu'il faut remonter dans l'historique des n barres pour trouver le prix le plus bas. Voici mon code, qu'est-ce qui ne va pas ?
Chers utilisateurs du forum, je vous prie de bien vouloir m'aider.
if (TimeBar==Time[0]) return(0) ;
double MA1 = NormalizeDouble(iMA(NULL,TimeFrame_2,MA_Period_2,MA_Shift_2,MA_Method_2,Applied_Price_2,0),Digits) ; // où 0 est le décalage de la barre actuelle de la valeur spécifiée. nombre de périodes en arrière
//double MA21 = NormalizeDouble(iMA(NULL,timeframe_2,period_2,ma_shift_2,ma_method_2,applied_price_2,2),Digits) ;
double MA2 = NormalizeDouble(iMA(NULL,timeFrame_3,MA_Period_3,MA_Shift_3,MA_Method_3,Applied_Price_3,0),Digits) ;
//double MA31 = NormalizeDouble(iMA(NULL,timeframe_3,period_3,ma_shift_3,ma_method_3,applied_price_3,2),Digits)
double MA3 = NormalizeDouble(iMA(NULL,TimeFrame_4,MA_Period_4,MA_Shift_4,MA_Method_4,Applied_Price_4,0),Digits) ;
double OsMA = NormalizeDouble(iOsMA(NULL,TimeFrame_5,FastEMA_5,SlowEMA_5,SignalSMA_5,Applied_Price_5,0),Digits)
si (MaxOrders>b && Low[0]>=MathMax(MA1,MA2)&& Low[0]>MA3 && Ask>MathMax(MA1,MA2)+DeltaOpen*Point && Ask>MA3 && MA2<MA3 && MA1<MA3 && OsMA>0 && Trade)
{
if (OrderSend(Symbol(),OP_BUY,Lots,NormalizeDouble(Ask,Digits),Slippage,SL,TP, "Puria_1",Magic,0,Blue) ==-1) TimeBar=0 ;
else TimeBar=Time[0] ;
}
si (MaxOrders>s && High[0]<=MathMin(MA1,MA2) && High[0]<MA3 && Bid<MathMin(MA1,MA2)-DeltaOpen*Point && Bid<MA3 && MA1>MA3 && MA2>MA3 && OsMA<0 && Trade)
{
if (OrderSend(Symbol(),OP_SELL,Lots,NormalizeDouble(Bid,Digits),Slippage,SL,TP, "Puria_1",Magic,0,Red) ==-1) TimeBar=0 ;
else TimeBar=Time[0] ;
}
retour(0) ;
Dans ces conditions, le conseiller expert ouvre une transaction, disons, sur VENTE, la ferme sur un bénéfice, et ouvre immédiatement une autre transaction sur VENTE. Comment prescrire dans un EA, que lorsque le signal est reçu, une seule transaction doit s'ouvrir, c'est-à-dire un signal - une transaction.
Je vous remercie d'avance.