[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 - 5. - page 227
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
Chers collègues-professionnels, j'ai besoin de votre aide (pli-is). Je veux faire une fonction dans mon EA qui affiche une notification dans le coin arrière de l'écran au sujet de la tendance actuelle sur différents timeframes et le renversement à venir. J'utilise mes fonctions LinearRegression et Diverg à cette fin, mais je n'ai jamais travaillé avec la fonction Comment et je ne peux donc pas comprendre où j'ai fait une erreur. Quoi qu'il en soit, le code ci-dessous affiche uniquement le message "Trend W = Down" mais je veux qu'il m'informe sur d'autres TFs.
void UPDN ()
{
if(LinearRegression(Symbol( ), LR_TFr_1, 0, Diverg_Per_H1, 0) < 0) Comment("Trend H1 = Up")
if(Diverg(LR_TFr_1,0,Diver_Per_H1)<0) Comment("...!Turn at H1 = Down") ;
if(LinearRegression(Symbol( ), LR_TFr_2, 0, Diverg_Per_H4, 0) < 0) Comment("Trend H4 = Up")
if(Diverg(LR_TFr_2,0,Diver_Per_H4)<0) Comment("...!H4 trend reversal = Down")
if(LinearRegression(Symbol( ), LR_TFr_3, 0, Diver_Per_D1, 0) < 0) Comment("Trend D1 = Up")
if(Diverg(LR_TFr_3,0,Diver_Per_D1)<0) Comment("...!Pivot sur D1 = Down") ;
if(LinearRegression(Symbol( ), LR_TFr_4, 0, Diver_Per_W, 0) < 0) Comment("Trend W = Up") ;
if(Diverg(LR_TFr_4,0,Diver_Per_W)<0) Comment(" ;)
if(LinearRegression(Symbol( ), LR_TFr_1, 0, Diverg_Per_H1, 0) > 0) Comment("Trend H1 = Down")
if(Diverg(LR_TFr_1,0,Diver_Per_H1)>0) Comment("...!H1 trend reversal = Up") ;
if(LinearRegression(Symbol( ), LR_TFr_2, 0, Diver_Per_H4, 0) > 0) Comment("Trend H4 = Down")
if(Diverg(LR_TFr_2,0,Diver_Per_H4)>0) Comment("...!H4 trend reversal = Up") ;
if(LinearRegression(Symbol( ), LR_TFr_3, 0, Diver_Per_D1, 0) > 0) Comment("Trend D1 = Down")
if(Diverg(LR_TFr_3,0,Diver_Per_D1)>0) Comment("...!Pivot sur D1 = Up") ;
if(LinearRegression(Symbol( ), LR_TFr_4, 0, Diver_Per_W, 0) > 0) Comment("Trend W = Down") ;
if(Diverg(LR_TFr_4,0,Diver_Per_W)>0) Comment("...!Diverg to W = Up")
retour(0) ;
}
Les tableaux ne peuvent pas être passés à Comment(). Les tableaux doivent être imprimés élément par élément.
Les données de type double sont éditées avec 4 chiffres décimaux après le point. Pour imprimer des nombres avec une plus grande précision, utilisez la fonctionDoubleToStr().
Les types bool, datetime et couleur seront imprimés sous forme de nombres.
Pour produire des données de type date-heure sous forme de chaîne, utilisez la fonctionTimeToStr().
Pour diviser la sortie en plusieurs lignes, vous pouvez utiliser le caractère de saut de ligne "\n" ou "\r\n".
Voir égalementAlert() etPrint().
Merci, j'ai compris. J'ai besoin d'entrer des variables selon les résultats des fonctions LinearRegression et Diverg pour chaque TF et ensuite de les sortir avec un commentaire, peut être en plusieurs lignes.
Merci, j'ai compris. J'ai besoin d'entrer des variables selon les résultats des fonctions LinearRegression et Diverg pour chaque TF et ensuite de les sortir avec un commentaire, peut être en plusieurs lignes.
Il y a seulement une limitation en termes de longueur de ligne. Vous pouvez utiliser la fonction d'Alexander Pak. Si vous ne pouvez pas le trouver, je le chercherai moi-même.
Messieurs !
J'ai une question sur le passage d'un tableau par référence.
Le schéma de l'algorithme est le suivant :
Nous passons un tableau par référence d'une bibliothèque à une autre.
Nous le copions là en utilisant la fonction intégrée :
ArrayCopy.
Ensuite, le tableau passé par référence est utilisé
dans le premier module.
Mais pour une raison quelconque, une erreur se produit, et pas toujours.
C'est-à-dire que parfois le tableau est copié, parfois il ne l'est pas.
Quelle est la raison ?
L'entrée du journal est la suivante :
21:07:12 openHistory CADCHF,H1 :
2 plages de tableaux pour la fonction ArrayCopy (0 et 4)
C'est parce que tu as mal copié mon exemple. Regardez bien où est le i et où est le k.
J'ai corrigé le code selon le vôtre.
Lors du test, quatre ordres se sont fermés dans l'ordre où ils ont été définis au premier tick, le cinquième s'est fermé au tick suivant. Il y a probablement quelque chose d'autre qui ne va pas ici, car je l'ai testé plusieurs fois.
Je colle le code du programme et les journaux du testeur.
Sincèrement. Shurkin
Tu dois faire une boucle au départ. Travaillez à l'intérieur de la boucle. On peut tout y faire.
C'est un peu différent. Lorsque la connexion est perdue, le journal indique "Ping failed". Cela signifie qu'il y a des réponses, mais qu'elles ne sont pas documentées pour une raison quelconque.
Dans quelle mesure la charge du processeur et de la mémoire est-elle augmentée par le bouclage ?
Bonsoir ! Excusez-moi, je voudrais revenir sur un problème non résolu.
Acheter - Types incompatibles D:\TeleTRADE\experts/experts/clean.mq4 (102, 53)
Vendre' - types incompatibles D:\TeleTRADE\experts\clearlist.mq4 (102, 79)
Cette ligne ne compile pas.