¿XAUUSD tamaño de lote incorrecto en la cuenta denominada en GBP? - página 4

 
El personal del chat en vivo de FXCM son ABSOLUTOS MORONES.

Les estoy preguntando por qué el TICK_VALUE en XAUUSD y XAGUSD está regresando como un 0,01, su respuesta es:

"Porque lo redondeamos a 0,01$ - Ese es el valor de tick más pequeño..." - Ok... bueno, ¿cuál es el tamaño de lote más pequeño = 1,00 que equivale a 0,10$ ... así que pásame eso una vez más? ¿Cuál es el valor más pequeño de la garrapata? "0,01 dólares" ¡¡Son tan tontos!!
 
Perdón por escribir mucho aquí - Pero, ¿tendría esto sentido? ¿Alguien puede lanzarme una línea aquí cómo trabajaría con FXCM por el momento?

//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 podría ser 45.32 pips por ejemplo - 0.10 es $0.10 por tick 0.01 por 1.00 lote en fxcm)
 
DomGilberto:

Si eso es correcto, entonces cómo tiene esto sentido:

Posición actual abierta XAUUSD: 137,60 puntos al alza - abrir P & L £ 17,22 ... No soy un mago con los números, pero tengo 2 onzas troy abiertas que se supone que son £0.02 peniques por 0.01 tick...

137.60 * £0.02 = £2.750

1376.0 * £0.02 = £27.52

13760 * £0.02 = £275.2

Ninguno es correcto...

Eso es según lo que me dice este especialista de FXCM lol!?


¿Cómo puedes estar 137,60 puntos arriba? No hay punto decimal cuando se habla de puntos.

¿Quiere decir que la diferencia entre el precio de apertura de la orden y el precio actual es de 137,60? Si ese es el caso, significaría que debes haber abierto la operación a finales de agosto. ¿Es eso cierto?

Si no es así, por favor, muestre el precio de apertura de la orden, el precio actual y el beneficio actual.

Se le ha pedido numerosas veces que muestre el código de la declaración de impresión. A menos que me lo haya perdido, todavía no lo ha mostrado.

 
¿A qué código te refieres? La posición del XAUUSD es (y sí, tienes razón, no me refiero a los puntos - sólo mezcla de términos - simplemente estoy mirando la forma de tirar del número):

XAUUSD posición abierta : Precio abierto: 1297.22 -- Tamaño: 2.00 -- Precio actual: 1283.24 -- Moneda de plazo: $27.96 -- Moneda de depósito: £17.49.

Las impresiones también están en abajo - las he puesto para que sea más fácil de ver?

   //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


...
 

¿Lo has calculado tú mismo o viene del broker?

"Divisa a plazo: 27,96 dólares"

 
Viene del broker dentro de MT4 - cuando haces clic con el botón derecho en la orden abierta y la seleccionas...
 

Tengo una orden abierta ahora en XAGUSD con FXCM - El tamaño mínimo es de 50,00 lotes. De nuevo, el valor del tick es aparentemente 0.01 (hecho).

XAGUSD:

La entrada es 21,245 - El SL es 21,812 - El tamaño es 100,00 - El saldo de la cuenta en libras esterlinas es 3.840,51 - El riesgo aplicado a esta operación es el 1,5% del AccountBalance(). (+53 libras esterlinas más o menos en P y L abiertas).

50.00 Lotes en XAGUSD es $0.01 por 1 lote, así que $0.50 por tamaño de tick - 0.01. (TICK_SIZE me está diciendo que es "0,001" a pesar de que he comprobado que 50 lotes son 0,50 dólares por 0,01 con el personal de FXCM y lo he probado).

$0.50 / GBPUSD es el valor del tick...

-- Por lo tanto, basado en mi fórmula, estoy tímido 50 lotes en el tamaño de 100 lotes asignados a este comercio porque la configuración del servidor de FXCM está jodido. (en términos de Tick Value 0.001 || Tick Size: 0.001)...

Funciona así:

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

(SL)21,812 - (Entrada) 21,245 = 56,7

50,00 lotes = 0,50 $ / 1,59841 = 0,31 £ ( por 50,00 lotes)

150,00 = 0,93 £ por tick * 56,7 = 52,73 £ de riesgo en esta operación...

 
¿Puede alguien ayudar a sugerir una solución cuando el valor de la garrapata y el tamaño de la garrapata me dicen que es 0,001 y 0,001?
 
DomGilberto:
¿Alguien puede ayudar a sugerir una solución cuando el valor de la garrapata y el tamaño de la garrapata me dicen que es 0,001 y 0,001?
No es lo ideal, pero ¿no se puede calcular el valor del tick correcto utilizando las tasas de XAUUSD, GBPUSD y el TickValue de GBPUSD? Así que tu código comprueba si el Tick Value devuelto por MarketInfo() es probable que no sea válido y si lo es entonces lo calcula en su lugar, entonces para un Broker que es competente no necesita calcular el TickValue.

He visto algo similar hecho para calcular TickValues para usar en el Probador de Estrategias. . . idealmente codificarás una función que mira los pares del símbolo y tu moneda base y luego ejecuta el cálculo relevante.

. . esto es lo que estaba pensando cuando dije que había visto algo similar: https://www.mql5.com/en/forum/127798/page2#356736
 
Gracias :) - ¡Voy a comprobarlo ahora!

También, en su opinión, ¿es FXCM en el mal con la forma en que estoy viendo el valor de la garrapata? Ellos se empeñan en decir que es perfectamente normal? ¿No sabrán por qué lo están estropeando?