Comment trouver le moment de la barre où les moyennes mobiles se sont croisées ? (code à l'intérieur)
Bonjour à tous !
Ce n'est évidemment pas tout le code, mais c'est la partie principale avec laquelle je m'arrache les cheveux. Veuillez vérifier le code avec le "<<<<<<<<<<<<<". Ce sont les points sur lesquels je suis confus.
Merci RaptorUK - De la manière la plus gentille possible, cela n'explique rien pour moi ? En termes simples ?
Est-ce un forum où quelqu'un peut réellement m'aider autrement qu'en répétant les définitions des fonctions (que j'ai lues des centaines de fois dans la section "aide"...).
Après tout, je ne pense pas que ce que je demande (par rapport à certains fils de discussion ici !) soit suffisant pour justifier que quelqu'un fasse payer son temps... ?
Traduire en termes simples vous aidera... une fois, aujourd'hui, avec ce problème particulier... et prendra un peu de temps pour l'explicateur.
Si vous dites quels termes de la définition vous ne comprenez pas, peut-être que la prochaine fois vous pourrez résoudre vos propres problèmes, et après un certain temps, vous pourrez être l'un de ceux qui résolvent les problèmes des autres.
Si vous essayez d'étudier le problème vous-même, vous apprendrez également beaucoup plus. Par exemple, essayez ceci :
Alert(iHighest(Symbol(), 0, MODE_HIGH, iBarShift(Symbol(), 0, triggerBarTime, true), 0));
et tu verras quelle valeur est retournée par la fonction... (comme Raptor le dit, ce n'est pas un prix)... et tu comprendras probablement plus facilement la définition de la fonction.
Ce genre de choses vous aidera davantage que d'espérer que quelqu'un sur le forum ait le temps de tester votre code et de faire le même dépannage que vous devriez apprendre à faire vous-même.
"Des choses comme ça vous aideront plus que d'espérer que quelqu'un du conseil ait le temps de tester votre code et de faire le même dépannage que vous devriez apprendre à faire vous-même."
C'est quoi ce bordel... Je ne m'attendais pas à cela de la part de qui que ce soit !?
Votre message a permis d'éclaircir la situation - je vous en remercie.
Ce forum est vraiment drôle... Je n'avais pas l'intention de me défouler sur qui que ce soit ! Je voulais simplement obtenir des éclaircissements sur la façon d'identifier correctement la barre qui croise les EMA...
Jeez....
quand je lis la réponse de raptor il vous dit le problème exact que vous avez fait.
les prix sont stockés en tant que variables doubles, par exemple 1.12345
la fonction iHighest renvoie un entier (int), par exemple 1 ou 2 ou -100 ...., ce qui n'est clairement pas un prix.
Je ne sais pas ce que vous essayez de faire, mais la fonction iHighest n'est probablement pas celle que vous devriez utiliser.
Vous l'auriez découvert par vous-même si dans le metaeditor, vous cliquez sur iHighest dans votre code, puis appuyez sur F1... vous verrez qu'elle renvoie un entier (ce que Raptor vous a également dit)
Je ne connais pas la source de ta confusion. Si tu ne connais pas la différence entre les variables int et double, il te manque des connaissances de base essentielles, ce qui signifie que tu essaies de courir avant de savoir marcher et que tu veux que quelqu'un d'autre te porte :/.
EDIT : Vous ne vous attendiez pas à devoir faire votre propre dépannage avant de demander à quelqu'un d'autre ? !?
Les moyennes mobiles multiples ne se croisent pas au même moment.
Pourquoi postez-vous deux fois ? Votre question a déjà reçu une réponse.
Trouvez la première barre où elles étaient toutes dans le bon ordre.
int DIR = 0; for(int iBar = 0; iBar < Bar; iBar++){ double MA20 = ... iBar), MA5 = ... iBar); : if( MA20 > MA5 && MA5 > ...) DIR = -1; else if(MA20 < MA5 && MA5 < ...) DIR = +1; // All fanning up. else if (DIR != 0){ iBar--; break; } // Last one was cross. }
Je comprends la différence entre int et double...
après que les déclarations If soient vraies, je veux trouver la barre qui a traversé au point où les MA sont espacées. Je pensais que si j'utilisais
"triggerBarTime = Time[1] ;" - après les instructions "If", triggerBarTime pourrait être utilisé en conjonction avec iBarShift pour verrouiller la première barre de la plage qui m'intéresse ?
Ensuite, en utilisant le iHighest, je pourrais convertir cette information en un int et l'utiliser dans ma fonction d' ordre (Buy_Price) ?
Vous comprenez peut-être la différence entre int et double mais vous ne comprenez pas la différence entre un numéro de barre (int) et un prix (double).
iHighest vous permettrait de convertir votre date en un numéro de barre (int). Mais OrderSend ne prend qu'un prix (un double) ; cela n'a aucun sens d'ouvrir un ordre à 9.
Ah ! J'ai compris !
Merci beaucoup :) Je l'apprécie vraiment !
Merci d'avoir été patient avec moi - je ne voulais pas donner l'impression d'attendre de quelqu'un qu'il fasse quelque chose pour moi ; juste me donner quelques éclaircissements sur l'aide (appuyer sur F1 sur tout n'est pas toujours très clair pour moi) est tout ce que je voulais.
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Vous acceptez la politique du site Web et les conditions d'utilisation
Bonjour à tous !
J'espérais obtenir de l'aide pour mon code - je suis actuellement bloqué sur cette satanée partie !
Voici le processus que j'essaie d'écrire dans le code ci-dessous :
1) Si toutes les MA sont "en éventail" et croisées de sorte que le prix est au-dessus de toutes les moyennes mobiles et qu'elles indiquent un potentiel long.
2) Je veux ensuite connaître la barre exacte (en utilisant le temps) à laquelle les moyennes mobiles sont "écartées" au croisement des moyennes mobiles.
3) Si 1 et 2 sont vrais, j'attends alors que n'importe quelle barre redescende (dans le cas d'une position longue) et touche la 21 EMA.
4) De la première barre (où les MA se sont croisées et déployées en éventail) à la barre qui a maintenant touché la 21 EMA - je veux un ordre en attente OU au marché placé AU-DESSUS des sommets de cette fourchette (1 et 3).
5) Si le prix, à quelque moment que ce soit, CLOTURE en dessous de la 60 EMA, AVANT de déclencher l'ordre - alors l'ordre doit être annulé.
Ce n'est évidemment pas tout le code, mais c'est la partie principale avec laquelle je m'arrache les cheveux. Veuillez vérifier le code avec le "<<<<<<<<<<<<<". Ce sont les points sur lesquels je suis confus.
J'aurais VRAIMENT besoin de l'aide de quelqu'un - ce serait vraiment apprécié !
Merci d'avance !