Preguntas de un "tonto" - página 163

 

Urain ha descrito la función anteriormente.

Obtiene la hora de la barra del marco temporal deseado en función de la fecha.

 

¿Pueden decirme por qué obtengo valores diferentes al calcular el tamaño de los lotes en diferentes CC?

Por ejemplo: 1DC - fondos disponibles: 10000, lote mínimo 0.01 calculado 100% de los fondos disponibles obtener tamaño de lote 79.37

2DC - fondos libres: 10000, min.lot 0.01 calculado el 100% de los fondos disponibles obtener el tamaño del lote 7.96.

Lo que no tengo en cuenta, ¿por qué el tamaño del lote es diferente?

 
pusheax:

¿Pueden decirme por qué obtengo valores diferentes al calcular el tamaño de los lotes en diferentes CC?

Por ejemplo: 1DC - fondos disponibles: 10000, lote mínimo 0.01 calculado 100% de los fondos disponibles obtener tamaño de lote 79.37

2DC - fondos libres: 10000, min.lot 0.01 calculado el 100% de los fondos disponibles obtener el tamaño del lote 7.96.

Lo que no tengo en cuenta, ¿por qué el tamaño del lote es diferente?


Hay empresas de corretaje donde 1 lote = 10000 unidades de la moneda base (por ejemplo, Insta). Consulte el pliego de condiciones de los contratos.
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте - Документация по MQL5
 
pusheax:

¿Pueden decirme por qué obtengo valores diferentes al calcular el tamaño de los lotes en diferentes CC?

Por ejemplo: 1DC - fondos disponibles: 10000, lote mínimo 0.01 calculado 100% de los fondos disponibles obtener tamaño de lote 79.37

2DC - fondos libres: 10000, min.lot 0.01 calculado el 100% de los fondos disponibles obtener el tamaño del lote 7.96.

Lo que no tengo en cuenta, ¿por qué el tamaño del lote es diferente?

¿Número de carteles?
 
Silent:
¿Número de caracteres?
¿Qué tiene que ver el número de dígitos? No es ni siquiera un orden de magnitud de diferencia. Es la diferencia de 0,23 lotes. ¿Y la pareja es exactamente la misma? ¿Y el precio de apertura?
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
 
sumkin75:
¿Qué tienen que ver los carteles de llamada con esto? Ni siquiera es cuestión de un orden de magnitud de diferencia. Es la diferencia de 0,23 lotes. ¿Y la pareja es exactamente la misma? ¿Y el precio de apertura?

Esto se llama mini o microreal.

Algunos operadores simplemente dan lotes fraccionarios, otros cambian el tamaño del contrato, por lo que un lote de 0,01 en una cuenta regular se convierte en 1 lote en una cuenta microrreal.

Se trata de las llamadas cuentas de céntimo.

Puedes obtener el valor así:

SymbolInfoDouble(_Symbol,SYMBOL_TRADE_CONTRACT_SIZE);
 
sumkin75:
¿Qué tienen que ver los carteles de llamada? Ni siquiera es cuestión de un orden de magnitud de diferencia. Es sólo la diferencia de 0,23 lotes. ¿Y la pareja es exactamente la misma? ¿Y cuál es el precio de apertura?

Sí, ¡me has dado una buena pista!

¿Sigo haciendo esto?

g_d_ContractSize = SymbolInfoDouble(s_Symbol,SYMBOL_TRADE_CONTRACT_SIZE);//Tamaño del contrato 10000-Insta, 100000-otros

g_d_ContractSizeDiv = 100000/g_d_ContractSize;//Diferencia

y luego multiplicar g_d_ContractSizeDiv por el tamaño del lote?

 
¿Pueden decirme si existe una función lista para dividir por miles, por ejemplo: de 1000000 a 1 000 000?
 
pusheax:
¿Sabes si existe una función que divida un número en miles, como 1000000 a 1 000 000?

Así que entiendo que necesitas una división visual, entonces necesitas convertir el número en cadena. Y luego haz lo que tengas que hacer con la cuerda.

La función que quieres no está, pero puedes crearla tú mismo fácilmente usando la función StringSubstr().

Funciones de cadena

Eso es más o menos:

string FormatInteger(ulong val)
  {
   string temp=IntegerToString(val),res="";
   int len=StringLen(temp);
   int i=len-3;   
   while(i>=0)
     {
      res=" "+StringSubstr(temp,i,3)+res;
      i-=3;      
     }
   if(len%3!=0)res=" "+StringSubstr(temp,0,len%3)+res;  
   return(res);  
  }
void OnStart()
  {
   Print(FormatInteger(10000000));   
  }
 
Urain:

Así que entiendo que necesitas una división visual, entonces necesitas convertir el número en cadena. Y luego haz lo que tengas que hacer con la cuerda.

La función que quieres no está, pero puedes crearla tú mismo fácilmente usando la función StringSubstr().

Funciones de cadena

Eso es todo:

Gracias, intentaré añadirlo.