[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 330

 
artmedia70:

L'indicateur ne peut pas ouvrir d'ordres. Ces choses sont gérées par l'EA. Si ce code appartient à l'indicateur, alors vous devez faire sortir les données dans son tampon, créé spécifiquement pour ces données. Lorsqu'il n'y a pas de signal, un zéro ou une valeur vide est écrit dans le tampon. Lorsqu'un signal arrive (comme dans votre exemple), au lieu de Alert() ; écrire la valeur dans le tampon.
Par exemple :
+1 pour Achat et
-1 pour Vente.
Ensuite, lisez les données du tampon dans l'Expert Advisor en utilisant iCustom() ;.

Ou écrire toutes ces conditions directement dans le conseiller expert.

Je suis désolé pour mon ignorance, mais comment faire pour que les données soient envoyées vers le tampon et comment les lire depuis le tampon - y a-t-il un exemple ?

"Lorsqu'il n'y a pas de signal, on écrit zéro ou une valeur vide dans le tampon et lorsqu'on reçoit un signal (comme dans votre exemple), au lieu de Alert(); on écrit la valeur dans le tampon."

Je n'ai jamais eu affaire à des indicateurs et c'est une jungle pour moi.

 
Pouvez-vous me dire comment déterminer la taille maximale d'une barre (c'est-à-dire un High-Low supérieur aux autres) parmi les trois dernières (sans zéro) ?
 
Timofei:
Pouvez-vous me dire comment déterminer la taille maximale d'une barre (c'est-à-dire un High-Low supérieur aux autres) parmi les trois dernières (sans zéro) ?
High(iHighest(Symbol(),0,MODE_HIGH,3,1)
Low(iLowest(Symbol(),0,MODE_Low,3,1)
 
todem:

pas de
 
Timofei:
Pouvez-vous me dire comment déterminer la taille maximale d'une barre (i.e. haut-bas supérieur aux autres) parmi les trois dernières (sans zéro) ?


La réponse est simple. Disons que X3 = iHigh[3]-iLow[3]...- ceci est pour le 3ème dernier, calculez de la même manière pour le 2ème et le 1er en écrivant 2 et 1. Vous aurez trois valeurs variables X3, X2, X1. Ensuite, ils sont comparés les uns aux autres - vous obtenez la taille maximale de la barre en valeurs absolues du prix de l'instrument, par exemple, X2 est supérieur à X1 et X3 - nous mettons sa valeur dans la variable Max et divisons Max par Point et le résultat sera "la taille maximale de la barre en pips des trois derniers (sans zéro)".

P.S. Max = max X2 ou X1 ou X3 - après leur comparaison ; REZULT = Max/Point ; Quelque chose comme ceci.

 

Bonjour !

Question :

Disons que j'ai écrit mon indicateur ("test123"), je l'appelle dans Expert Advisor via iCustom :

iCustom(Symbol(), Period(), "test123", 1, 1, 0, 1) ;

Puis-je vérifier si l'appel a abouti ? GetLastError() est zéro dans tous les cas, j'ai vérifié

 
Roger:
Peut-être parce que la portée est trop faible, seulement 4 secondes ? Il y a peu de ticks dans la barre à ce moment-là et le testeur peut ne pas atteindre l'intervalle fixé.


Oui, vous avez raison, j'ai corrigé certaines de mes affaires en augmentant la plage de temps. Et j'ai trouvé la raison pour d'autres, il s'avère qu'il n'y a pas assez de données dans l'historique (par exemple, la dernière barre d'une minute le 24.08.2011 était à 23.57 et ensuite l'échec après lequel je commence un nouveau jour immédiatement.

Merci !

 

1. Comment déterminez-vous le profit/la perte de la dernière transaction?

2. Dans le testeur, les résultats affichés incluent-ils le spread, ou dois-je soustraire le spread de chaque transaction ?

 
Pouvez-vous me dire pourquoi le champ "symbole,période" s'affiche lorsque vous appuyez sur la barre d'espacement sur le graphique ?
 
vitali_yv:
Pouvez-vous me dire pourquoi le champ "symbole,période" s'affiche lorsque vous appuyez sur la barre d'espacement sur le graphique ?

pour les programmeurs.

Ils peuvent passer d'une devise à l'autre, d'un intervalle de temps à l'autre ou d'une barre à l'autre.


Raison: