Página 2 de 3

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 20:25
por Foréxitos
acabo de probar sin NormalizeDouble().... o sea solo con MathRound(Variable*100)/100 y tampoco.

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 20:33
por X-Trader
Foréxitos escribió: 09 May 2023 20:25 acabo de probar sin NormalizeDouble().... o sea solo con MathRound(Variable*100)/100 y tampoco.
Vaya, esto sí que es raro. ¿Con qué broker estás usando la MetaTrader?


Saludos,
X-Trader

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 20:34
por Foréxitos
Darwinex clasico real

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 20:50
por Foréxitos
Igualmente Alberto más allá del Broker... la idea es que se convierta con solo dos decimales lo que dé la sumatoria sin importar los decimales que esté dando la comisión en este caso.

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 21:06
por Gibranes
No entiendo cómo puede ser que el resultado sea igual a la comisión en la primera opción.
Si la comisión siempre es la misma, formatea la cadena antes de concatenar las variables.
Comisión= 0.07

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 21:10
por Foréxitos
Gibranes escribió: 09 May 2023 21:06 No entiendo cómo puede ser que el resultado sea igual a la comisión en la primera opción.
Si la comisión siempre es la misma, formatea la cadena antes de concatenar las variables.
Comisión= 0.07
Es menos.....

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 21:13
por Foréxitos
de hecho esto tampoco funciona...

Código: Seleccionar todo

#property copyright "Dos decimales por Foréxitos"
#property link "https://www.forexitos.com"
#property version "1.00"
#property strict
datetime DiaActual;
double Variable[];

int start()
   {
   if(DiaActual!=iTime(NULL, PERIOD_D1,0)){int s=OrderSend(Symbol(),OP_BUY,0.01,Ask,3,0,0,NULL,0,0,clrNONE);DiaActual=iTime(NULL, PERIOD_D1, 0);}
//:::::::::::::::::::::::::::::::::   TOTAL  :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
   ArrayInitialize(Variable,0);ArrayResize(Variable,400);
   for(int i=0;i<OrdersTotal();i++)
      {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)&&OrderSymbol()==Symbol()&&OrderType()==OP_BUY)
         {
         Variable[i]+=(MathRound(OrderProfit()*100)/100)+(MathRound(OrderCommission()*100)/100)+(MathRound(OrderSwap()*100)/100);
         Comment(MathRound(Variable[i]*100)/100);
         }
      }
   return(0);
  }

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 21:50
por Gibranes
En C# me da resultado correcto, sin usar valores aleatorios. 
Más allá no puedo investigar, ya que no tengo utilizo esa plataforma.

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 21:58
por Foréxitos
Gracias por el aporte Gibranes ;)

¿Alguien que tenga el MT4 y lo haya probado? o soy el único loco suelto...
quiero saber si les pasa lo mismo o no. Saludos.

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 22:34
por cdtrader
uff, mucho que leer y yo con poca energia.
que bueno leerte forexitos, veo que tu darwin no tiene movimiento pero si tiene saldo, me parecio raro.

que te parece esta idea:
creas un int y le das de valor el del double que quieres normalizar x 100,

luego a la hora de usarlo pones en el codigo ese int/100

Saludos

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 22:41
por Foréxitos
X-Trader escribió: 09 May 2023 20:33 Vaya, esto sí que es raro. ¿Con qué broker estás usando la MetaTrader?
Ahí probé el ultimo código que posteé en otro broker diferente (FBS real) y también no me funciona.
Deseo rotundamente inventar una función en MT4 que sea algo así: DoubleFormat() :-D

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 22:45
por cdtrader
en mi pc da bien el resultado con 2 decimales tanto en ejemplo comun como en con el mathround en darwinex

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 22:49
por Foréxitos
cdtrader escribió: 09 May 2023 22:34 uff, mucho que leer y yo con poca energia.
que bueno leerte forexitos, veo que tu darwin no tiene movimiento pero si tiene saldo, me parecio raro.

que te parece esta idea:
creas un int y le das de valor el del double que quieres normalizar x 100,

luego a la hora de usarlo pones en el codigo ese int/100

Saludos
waaaa.... excelente idea!!!! ya la estoy probando aunque va a ser medio difícil porque la variable es un memoria y siempre son double asi que voy a jugar mas que nada con el profit la comisión y el swap.... después te cuento.

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 22:52
por cdtrader
https://charts.mql5.com/36/31/eurusd-h1-darwinex.png

le puse descripcion para tener los 2 a la vez, pero dan bien si es lo que interprete

Re: Variable double de solo dos decimales

Publicado: 09 May 2023 22:54
por Foréxitos
cdtrader escribió: 09 May 2023 22:45 en mi pc da bien el resultado con 2 decimales tanto en ejemplo comun como en con el mathround en darwinex
uuuu listo, estoy nominado....jajajaja qué será, me tiene loco.