[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 287

 
rid писал(а) >>

Tal correção não vai funcionar. Não será capaz de abrir o primeiro comércio. Porque a condição para abrir a primeira negociação em sua variante é fechar qualquer negociação anterior no take ou stop!

Ou seja, é um círculo vicioso.

Portanto, a lógica do trabalho deve ser mudada.

 
Deixe-me fazer-lhe uma pergunta. No 5º trinder, haverá algo como uma classe (OOP)?
 

Você pode me dar uma solução sobre como calcular o valor dos primeiros N dígitos de uma variável inteira?

Somente através de conversão em cordel?

 
goldtrader >> :

Você pode me dar uma solução sobre como calcular o valor dos primeiros N dígitos de uma variável inteira?

Em que sistema numérico ele está? Em decimal?

Somente através de conversão em cordel?

Não, claro que não.

 
TheXpert писал(а) >>

Dígitos em que sistema numérico? Decimal?

Sim, em decimal.

Faço-o: int -> double -> string -> Substr -> compare.

Funciona, mas parece de alguma forma estranho, rústico. Eu gostaria que fosse mais elegante ))))

 
goldtrader >> :

Sim, em decimal.

Faço-o: int -> double -> string -> Substr -> compare.

Funciona, mas parece de alguma forma distorcido e rústico. Eu gostaria que fosse mais elegante ))))

//+------------------------------------------------------------------+
//|                                                NElementsTest.mq4 |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, TheXpert"
#property link      "theforexpert@gmail.com"

int FirstN(int N, int value)
{
   int value_ = value;
   
   int length = 0;
   
   while( value_ != 0) 
   {
      value_ /= 10;
      length++;   
   }
   
   int toDivide = MathMax( length - N, 0);
   return ( value/NormalizeDouble(MathPow(10, toDivide), 0));
}

void Out(int N, int value)
{
   Print("Value = ", value, " , First ", N, " = ", FirstN( N, value));
}

int start()
{
   Out(5, 12345678);
   Out(1, 12345678);
   Out(6, 12345);
   Out(5, -1234567);

   return(0);
}
O MathPow é lento, seria uma boa idéia substituí-lo, mas deve ser mais rápido do que as cordas.
 
TheXpert писал(а) >>
O MathPow é lento, seria uma boa idéia substituí-lo, mas deve ser mais rápido que as cordas.

Acabo de começar a usar MathPow. Gostaria de esclarecer... Quando devo começar a substituir x^2 = x*x ? E vale a pena substituir se o grau for "nada bom"... ou "alto"...?

 
TheXpert писал(а) >>
MathPow -- a coisa é lenta, seria desejável substituí-la, mas deve ser mais rápida do que cordas.

Obrigado, Andrew!

É realmente programático!

[Deleted]  
Rosh >> :

Se o MetaTrader 4 tivesse sido "customizado para CDs", como você diz, ele não teria sido tão popular entre os comerciantes. Tais rumores só podem ser difundidos para justificar seu próprio software.

100 pontos! Há muita demanda no mercado, mas a oferta excede a demanda e é óbvio que as novas corretoras utilizam diferentes truques para atrair clientes e obter o maior rendimento deles.

 
DDFedor >> :

Acabo de começar a usar MathPow. Gostaria de esclarecer... Quando devo começar a substituir x^2 = x*x ? E vale a pena substituir se o grau for "nada bom"... ou "alto"...?

Tut. A expressão que você citou vale definitivamente a pena.

goldtrader >> :

>> Obrigado, Andrew!

Fico feliz em poder ajudar.