XAUUSD : mauvais dimensionnement de lot sur un compte libellé en GBP ? - page 4

 
L'équipe de chat en direct de FXCM est composée d'ABSOLUTE BLOODY MORONS !

Je leur demande pourquoi le TICK_VALUE sur XAUUSD et XAGUSD est retourné comme 0.01, leur réponse est :

"Parce que nous arrondissons à 0,01 $ - C'est la plus petite valeur de tick..." - Ok... bien, quelle est la plus petite taille de lot = 1,00 ce qui équivaut à 0,10 $ ... alors faites-moi passer ça encore une fois ? Quelle est la plus petite valeur de tick ? 0,01 $, ils sont tellement stupides !
 
Désolé d'écrire des tas de choses ici - mais cela aurait-il un sens ? Quelqu'un peut-il me dire comment je pourrais travailler avec FXCM pour le moment ?

//get our sellstop price from below the ma and our takeprofit based on our r:r ratio.
      
      double pips_to_ssl = SellStopPrice - sellPrice;

      double sell_tp_price = sellPrice - (pips_to_ssl*RewardRatio);

      double sell_takeprofit_price = NormalizeDouble(sell_tp_price, Digits);
      
      double loss_for_1_lot1 = pips_to_ssl / ( 0.10 / MarketInfo( Symbol(), MODE_BID ) * ts ); //<<< ?????????
         
      double LotSize_Sell = MathFloor( risk_amount / loss_for_1_lot1/ Lot_Step) * Lot_Step ;
(pips_to_ssl pourrait être 45.32 pips par exemple - 0.10 est $0.10 par tick 0.01 par 1.00 lot sur fxcm)
 
DomGilberto:

Si c'est correct, comment cela peut-il avoir un sens ?

Position actuelle ouverte XAUUSD : 137.60 points en hausse - ouvert P & L £17.22 ... Je ne suis pas un magicien des chiffres mais j'ai 2 onces troy ouvertes, ce qui est supposé être £0.02 pence par 0.01 tick...

137.60 * £0.02 = £2.750

1376.0 * £0.02 = £27.52

13760 * £0.02 = £275.2

Aucun n'est correct...

C'est ce que me dit ce spécialiste de FXCM lol !?


Comment pouvez-vous avoir 137,60 points de plus ? Il n'y a pas de point décimal quand on parle de points.

Voulez-vous dire que la différence entre le prix d'ouverture de l'ordre et le prix actuel est de 137.60 ? Si c'est le cas, cela signifie que vous avez dû ouvrir la transaction à la fin du mois d'août. Est-ce exact ?

Si non, veuillez indiquer le prix d'ouverture de l'ordre, le prix actuel et le bénéfice actuel.

Il vous a été demandé à plusieurs reprises de montrer le code de l'instruction d'impression. A moins que je ne l'aie manqué, vous ne l'avez toujours pas montré.

 
De quel code parlez-vous ? La position XAUUSD est (et oui, vous avez raison, je ne parle pas de points - juste un mélange de termes - je regarde simplement la façon de tirer le nombre à travers) :

XAUUSD position ouverte : Prix d'ouverture : 1297.22 -- Taille : 2.00 -- Prix actuel : 1283.24 -- Devise de terme : 27.96$ -- Devise de dépôt : 17.49£.

Les tirages sont également en dessous - je les ai mis pour que ce soit plus facile à voir ?

   //Lot calculation - Facilitates Notional and Lots within MT4 - As well as find the tick value relative to the account denomination.   
   double risk_amount = AccountBalance( )*RiskPercent/100;
   double Lot_Step = MarketInfo(Symbol(), MODE_LOTSTEP);
   double ts = MarketInfo(Symbol(), MODE_TICKSIZE);
   double tv = MarketInfo(Symbol(), MODE_TICKVALUE);
   double minlot = MarketInfo(Symbol(), MODE_MINLOT);
         
          
//+-------------------------------------------------------------------------------------+
//| Order Buy Function                                                                  |
//+-------------------------------------------------------------------------------------+   

//Place a pending buystop if no orders exists. Pending or otherwise.
if(direction==0)
{ 
      
      //Get Highest Price in our lookback range and set buy price above it.
      int iTBT = iBarShift(NULL,60, triggerBarTime, true),
      iHH = iHighest(NULL,60, MODE_HIGH, iTBT + CandlesBeforeBiasObtained, 0);
      double Buy_Here = High[iHH] + Buy_Pad;
      double buyPrice= NormalizeDouble(Buy_Here,Digits);
         Print(" buyPrice: ", buyPrice );
            
              2013.11.11 22:36:4 2009.07.27 17:00  V1 - XAUUSD XAUUSD,H1:  buyPrice: 959.79


      double BuyStopPriceMath = MA - ATR;
         Print(" MA - ATR: ", MA, " - ", ATR, " = ", BuyStopPriceMath);
     
              2013.11.11 22:36:4 2009.07.27 17:00  V1 - XAUUSD XAUUSD,H1:  MA - ATR: 952.0315 - 2.7714 = 949.2601
 

      double BuyStopPrice = NormalizeDouble(BuyStopPriceMath,Digits);
         Print(" BuyStopPrice: ", BuyStopPrice);
              
              2013.11.11 22:36:4 2009.07.27 16:00  V1 - XAUUSD XAUUSD,H1:  BuyStopPrice: 949.3

      //get our buystop price from below the ma and our takeprofit based on our r:r ratio.
      
      double pips_to_bsl=buyPrice-BuyStopPrice;
         Print(" pips_to_bsl formula: ", buyPrice, " - ", BuyStopPrice, " = ", pips_to_bsl);  
              
              2013.11.11 22:36:4 2009.07.27 16:00  V1 - XAUUSD XAUUSD,H1:  pips_to_bsl formula: 959.75 - 949.3 = 10.45
      
      double loss_for_1_lot = pips_to_bsl / ts * tv ;
         Print(" loss_for_1_lot formula: ", pips_to_bsl, " / ", ts, " * ", tv ," = ", loss_for_1_lot );

              2013.11.11 22:36:4 2009.07.27 16:00  V1 - XAUUSD XAUUSD,H1:  loss_for_1_lot formula: 10.45 / 0.01 * 0.01 = 10.45

      double LotSize_Buy = MathFloor( risk_amount / loss_for_1_lot/ Lot_Step) * Lot_Step ;
         Print(" LotSize_Buy: ( ", risk_amount, " / ", loss_for_1_lot, " / ", Lot_Step, " ) * ", Lot_Step); 

              2013.11.11 22:47:4 2009.07.27 16:00  V1 - XAUUSD XAUUSD,H1:  LotSize_Buy: ( 78.1668 / 10.45 / 1 ) * 1


...
 

Avez-vous calculé cela vous-même, ou cela vient-il du courtier ?

"Monnaie à terme : 27,96 $ "

 
Il provient du courtier dans MT4 - lorsque vous faites un clic droit sur l'ordre ouvert et que vous le sélectionnez...
 

J'ai maintenant un ordre ouvert sur XAGUSD avec FXCM - La taille minimum est de 50.00 lots. Encore une fois, la valeur du tick est apparemment de 0,01 (fait).

XAGUSD :

L'entrée est à 21.245 - Le SL est à 21.812 - La taille est de 100.00 - Le solde du compte en GBP est de £3,840.51 - Le risque appliqué à ce trade est de 1.5% du AccountBalance(). (+53£ à prendre ou à laisser dans le P & L ouvert).

50,00 lots sur XAGUSD est de 0,01 $ par 1 lot, donc 0,50 $ par tick - 0,01. (TICK_SIZE me dit que c'est "0.001" même si j'ai vérifié que 50 lots est $0.50 par 0.01 avec le personnel de FXCM et que je l'ai testé).

0.50$ / GBPUSD est la valeur du tick...

-- Par conséquent, sur la base de ma formule, j'ai 50 lots de moins que la taille de 100 lots allouée à cette transaction parce que les paramètres du serveur FXCM sont nuls. (en termes de Tick Value 0.001 || Tick Size : 0.001)...

Le résultat est le suivant :

Risque (£) : £57.60 (1.5% de £3,840.51)

(SL)21.812 - (Entry) 21.245 = 56.7

50.00 lots = $0.50 / 1.59841 = £0.31 ( par 50.00 lots)

150.00 = £0.93 par tick * 56.7 = £52.73 risque sur ce trade...

 
Quelqu'un peut-il suggérer une solution lorsque la valeur du tick et la taille du tick me disent qu'il s'agit de 0,001 et 0,001 ?
 
DomGilberto:
Quelqu'un peut-il suggérer une solution lorsque la valeur du tick et la taille du tick me disent 0.001 et 0.001 ?
Ce n'est pas idéal, mais ne pouvez-vous pas calculer la valeur de tick correcte en utilisant les taux de XAUUSD, GBPUSD et la valeur de tick de GBPUSD ? Ainsi, votre code vérifie si la valeur Tick retournée par MarketInfo() est susceptible d'être invalide et si c'est le cas, il la calcule à la place, alors pour un courtier compétent, il n'a pas besoin de calculer la valeur Tick.

J'ai vu quelque chose de similaire pour le calcul des TickValues à utiliser dans le Strategy Tester ... idéalement, vous coderez une fonction qui regarde les paires du symbole et de votre devise de base, puis exécute le calcul approprié ....

. ... c'est à cela que je pensais quand j'ai dit que j'avais vu quelque chose de similaire : https://www.mql5.com/en/forum/127798/page2#356736
 
Merci :) - Je vais le vérifier maintenant !

De plus, à votre avis, est-ce que FXCM est dans l'erreur avec la façon dont je vois la Tick Value ? Ils sont catégoriques, ils disent que c'est parfaitement normal ? Vous ne sauriez pas pourquoi ils se trompent, n'est-ce pas ?
Raison: