Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 738

ребята нужна помощь, можно ли такой код переделать с точки зрения профи по оптимальней 

if(AccountBalance()>=20)

{

  Lot=0.02;

}

if(AccountBalance()>=30)

{

  Lot=0.03;

}

if(AccountBalance()>=50)

{

Lot=0.05;

}

if(AccountBalance()>=70)

{

Lot=0.07;

}

if(AccountBalance()>=100)

{

Lot=0.10; 

Оператор switch?

korobok777:

ребята нужна помощь, можно ли такой код переделать с точки зрения профи по оптимальней 


Можешь просто умножить на 0,001 :)
vadynik:
Можешь просто умножить на 0,001 :)

но это тоже на гружена будет программа ,вы имеете виду

почему код не отображается в сообщение 

при вставке SRC 

vadynik:
Можешь просто умножить на 0,001 :)
if(Balans()>30)
Lot=Lot*0.001;

korobok777:
double StartLot=0.01;
if(MathMod(AccountBalance(),10)==0) Lot=StartLot*AccountBalance()/10;
evillive:

спасибо огромное ,буду разбираться
evillive:

Что-то Вы не то написали
korobok777:
Lot=NormalizeDouble(Balance*0.001,2);
Vinin:
Что-то Вы не то написали

Да, опечатка, поправил. Или принцип не тот? Смысл был в том, что если баланс делится на 10 без остатка, лот берём как произведение начального лота на 1/10 баланса. Не так? А как тогда?


Хотя Вадим тут проще написал, да )))