Détection de 5 chiffres - page 4

 
jjc:

Phy a publié une cotation MT4 pour le futur T-Note à 10 ans qui est coté à 5DP : https://www.mql5.com/en/forum/109552/page3#195885. Tout ce qui va jusqu'à 7DP existe potentiellement, c'est-à-dire qu'il s'agit d'un attribut d'un instrument financier largement négocié.

Je ne savais pas que CB avait relancé le fil de discussion "Qu'est-ce qu'un tick" ! Merci ! Des informations très utiles... :)
 
cameofx:

- J'ai une idée : étant donné que les paires basées sur le dollar américain ont une valeur de tick de 10,00 $US fixe [...

La valeur du tick n'est fixe que si votre devise de dépôt est l'USD (ou, de manière générale, si la devise de cotation du symbole correspond à votre devise de dépôt). Par exemple, si votre dépôt est en GBP, la valeur du tick de EURGBP est fixe alors que GBPUSD est flottante.

 
jjc:

La valeur du tick n'est fixe que si votre devise de dépôt est l'USD (ou, de manière générale, si la devise de cotation du symbole correspond à votre devise de dépôt). Par exemple, si votre dépôt est en GBP, la valeur du tick de EURGBP est fixe alors que GBPUSD est flottante.

Comment pouvons-nous "l'ancrer" si tout est relatif et flottant ? Voici ce que j'ai jusqu'à présent... :
int start()
  {
   double validPoint = validPoint(Point);
   int SL = Ask - 25 * validPoint;
   int TP = Ask + 25 * validPoint;
   
   int ticket = OrderSend(Symbol(),OP_BUY,1,Ask,3,SL,TP,"My order",1234,0,Green);
   Print("ticket = ", ticket);

   return(0);
  }
  
double  validPoint(double p){

   int digitPoint = 0; int dP = 0; double vP = 0.0;
   double anchor_value; 
   
   for(double i=1.0; i>p; i/=10){
         digitPoint ++;
         if(i * MarketInfo(Symbol(),MODE_TICKVALUE) > anchor_value)
         {vP = i; dP = digitPoint; }
   }
   return(vP);
}
digitPoint est censé être utilisé pour identifier combien de chiffre(s) après le point notre validPoint se produit.
anchor_value : je ne sais toujours pas comment le calculer ou si cela a un sens...

EDIT : la boucle était dans la mauvaise direction...
 
Ok, maintenant j'ai trouvé un exemple en négociant de l'or (XAUUSD). Ce n'est pas, certes, un exemple de changement spontané de la taille du tick, mais il montre l'implication qui m'a suffisamment préoccupé à l'époque pour me pousser à poster ici.


Le point est 0,01, la valeur du tick est 5,00, mais la taille du tick est 0,05.

Donc, afin d'avoir une formule universelle pour calculer la taille des positions et rapporter le risque, j'ai substitué...

MarketInfo(Symbole(),MODE_TICKVALUE)

par

(MarketInfo(Symbol(),MODE_TICKVALUE)*Point)/MarketInfo(Symbol(),MODE_TICKSIZE)

...dans les différentes formules que j'utilise.

Cela fonctionne à merveille, et j'ai maintenant des EA qui effectuent correctement la gestion des risques sur tous les instruments.

CB

J'ai cité le message de CB dans 'Qu'est-ce qu'un TICK', c'est intéressant, peut-être que cela devrait remplacer le simple appel à Tickvalue dans l'équation...

PS : 7Bit, je ne veux pas "détourner" votre fil de discussion... J'espère que cela ne vous dérange pas... :))

 
Hmm... soit personne ne pense que c'est important, soit je me suis un peu éloigné du sujet ..... Aidez-moi s'il vous plaît :(
 
quelqu'un d'autre que moi pense-t-il que cela vaut la peine ? Je pense que ce serait pratique pour nous tous si nous pouvions trouver une solution... ou dois-je poster un sujet séparé ? ... merci de me conseiller
 
cameofx:
Quelqu'un d'autre que moi pense-t-il que cela vaut la peine ? Je pense que ce serait pratique pour nous tous si nous pouvions trouver une solution... ou dois-je poster un sujet séparé ? ... merci de me conseiller

La seule chose pour laquelle MQL4 utilise les Pips est le codage de la valeur du Spread dans les demandes d'ordre. Tout le reste est spécifié en termes de taux. Une alternative à considérer est d'utiliser les différences de taux de change comme paramètres d'entrée pour T/P, S/L, etc. Par exemple, spécifiez 0.0050 pour un S/L de 50 Pip. Cela fonctionne indépendamment des chiffres, et ne nécessite qu'une mise à l'échelle de 100 lorsqu'on détecte "JPY" dans Symbol() comme devise de cotation. Cette méthode est viable pour les 21 paires majeures (toutes les combinaisons USD, EUR, GBP, JPY, CHF, CAD, AUD) et probablement aussi pour les paires mineures (que peu de personnes négocient en raison de spreads plus élevés). Si vous êtes vraiment soucieux d'être à l'épreuve des balles, vous pouvez fournir une chaîne de devises et un multiplicateur comme paramètres d'entrée (comme JPY et 100). Cela peut être étendu aux devises exotiques avec différents courtiers.

Je pense vraiment qu'il s'agit d'un point de détail pour la plupart des codeurs MQL4 ; lorsqu'ils réussissent à implémenter et à déboguer un algorithme de trading rentable, ils l'utilisent sur leur propre compte Live. Peu d'entre eux voudront le vendre ou le donner, car le marché s'adaptera probablement pour contrecarrer l'algorithme.

 
andydcoles:

La seule chose pour laquelle MQL4 utilise les Pips est le codage de la valeur du Spread dans les demandes d'ordre. Tout le reste est spécifié en termes de taux. Une alternative à considérer est d'utiliser les différences de taux de change comme paramètres d'entrée pour T/P, S/L, etc. Par exemple, spécifiez 0.0050 pour un S/L de 50 Pip. Cela fonctionne indépendamment des chiffres, et ne nécessite qu'une mise à l'échelle de 100 lorsqu'on détecte "JPY" dans Symbol() comme devise de cotation. Cette méthode est viable pour les 21 paires majeures (toutes les combinaisons USD, EUR, GBP, JPY, CHF, CAD, AUD) et probablement aussi pour les paires mineures (que peu de personnes négocient en raison de spreads plus élevés). Si vous êtes vraiment soucieux d'être à l'épreuve des balles, vous pouvez fournir une chaîne de devises et un multiplicateur comme paramètres d'entrée (comme JPY et 100). Cela peut être étendu pour les exotiques aussi avec différents courtiers.

Je pense vraiment que la plupart des codeurs MQL4 n'en font pas grand cas ; lorsqu'ils réussissent à implémenter et à déboguer un algorithme de trading rentable, ils l'utilisent sur leur propre compte réel. Peu d'entre eux voudront le vendre ou le donner, car le marché s'adaptera probablement pour contrecarrer l'algorithme.

Ceci. Personnellement, je ne travaille pas en pips, je travaille en points. Toutes les données de prix sont données en points. La différence entre deux valeurs de prix est en points. Mon stoploss et mon point de sortie sont tous en points... ils représentent un prix de marché spécifique. La notion de pips est intéressante, mais comme la plupart des personnes ici présentes peuvent en témoigner, dès que vous essayez de faire le lien entre la notion de pips et celle de points, vous perdez en rigueur et en robustesse, et pour quoi faire ?

Je n'ai jamais eu à faire face à un courtier qui change le nombre de chiffres significatifs dans le prix parce que j'ai codé toutes mes équations pour qu'elles soient cohérentes avec les spécifications de l'information sur le marché du courtier. Je ne pense pas au stoploss en termes de pips, pour moi c'est en termes de pourcentages et de prix et valeurs réels déterminés par le marché.

J'ai commencé ma vie sur le marché des changes en pensant aux pips, naturellement, puisque ce mantra est prédominant dans presque tous les documents en ligne et les sources éducatives que vous rencontrez. Mais une fois que j'ai commencé à me remettre en question et à remettre en question l'idée que les pips étaient une construction mentale nécessaire pour gérer mon trading, j'ai découvert que c'était plutôt une barrière qui étouffait ma créativité et mes options.

Un pip n'est pas quelque chose de fondamental pour le trading, c'est une béquille pour démarrer, mais si vous n'y revenez jamais et n'étudiez pas le but de son existence, vous vous privez de l'opportunité de dépasser le premier niveau de la courbe d'apprentissage du forex (c'est juste mon opinion, bien sûr).

 

C'est le plus grand sujet qui domine de loin ce forum. Je ne comprends pas et ne comprendrai probablement jamais. Qu'est-ce qu'un point ou un pépin ? Qui s'en soucie ? Une raison pour laquelle je commence à aimer la programmation est que si vous ne pouvez pas définir quelque chose, il devient presque impossible de le programmer IMO. Si un groupe de programmeurs doit passer par 3 pages de post pour définir un pip/point. Alors je ferais mieux de m'en tenir à l'écart pour le moment.

La définition semble importante pour un développeur qui veut programmer un programme commercial standard et qui veut que l'utilisateur ait la possibilité d'imputer exactement combien de dollars il veut risquer. Pour la plupart d'entre nous, nos objectifs de gestion de l'argent, combinés à des seuils de pertes optimaux, ne permettent pas une telle flexibilité.

Exemple : Je commence avec 2000$ et je veux risquer exactement 2% de ce capital. Cependant, le système que je viens d'optimiser a un stop loss de 130 points. Et le lot le plus bas avec lequel je peux travailler est de 10 000 où point = 1 $. Nous avons un vrai dilemme ici. Je vais devoir soit trouver un courtier qui propose des lots plus petits, soit attendre d'avoir plus d'argent pour trader. Et même dans ce cas, la seule chose que je peux contrôler est la taille du lot. Je ne serai presque jamais en mesure de faire correspondre exactement 2 % de mon bankroll avec le stop loss de mon système. Tout ce que je peux faire, c'est spécifier la taille du lot d'une manière indirecte.

 
ubzen:

Si un groupe de programmeurs passe par 3 pages de post pour définir un point/pip [...] Qu'est-ce qu'un point ou un pip ? Qui s'en soucie ?

... Pas tout à fait juste. C'est plutôt que tout le monde a une opinion différente, et les 3 pages consistent en beaucoup de réponses différentes de deux lignes.

Vous et Phillip faites tous deux une remarque très valable, à une exception près - mais une exception qui, je pense, est la raison pour laquelle 7bit a ouvert le sujet en premier lieu.

Si vous construisez un système pour que d'autres personnes l'utilisent, et pas seulement pour vous-même, alors la possibilité d'entrer des valeurs en pips est une considération majeure de facilité d'utilisation. Le parieur moyen sait ce qu'il entend par 50 pips, mais il doit réfléchir longuement et vérifier deux fois s'il veut dire une valeur de 0,005 plutôt que 0,0005 ou 0,05 ou autre. La possibilité d'entrer des paramètres en pips correspond à la façon dont la plupart des utilisateurs finaux pensent dans le monde du forex, et réduit les erreurs. Elle offre également la perspective de pouvoir utiliser les mêmes valeurs de paramètres sur des symboles à 2/3 et 4/5 chiffres. Je ne suis pas très exposé aux EA commerciaux de masse, mais je n'en ai jamais vu un où ces paramètres étaient saisis sous la forme d'un différentiel de prix plutôt que d'une valeur en pips.