Nikolay Elin:
Нужно, чтоб советник открывал только лотом 0.03. Как исправить этот код?
Вот так:
double Lots() { /* double Lots; Lots=AccountFreeMargin()/10000*5; Lots=MathMin(15,MathMax(0.1,Lots)); if(Lots<0.1) Lots=NormalizeDouble(Lots,2); else { if(Lots<1) Lots=NormalizeDouble(Lots,1); else Lots=NormalizeDouble(Lots,0); }*/ return(0.03); }
double Lots()
{
return(0.03);
}
SidorOFF:
double Lots()
{
return(0.03);
}
Ну тогда уж так:
extern double Lot = 0.03; void start() { OrderSend (Symbol(),OP_BUY,Lots(Lot),Ask,-,-,-,-,-,-) }//EndStart double Lots(double lots) { return(lots); }После компиляции по строчкам где ошибка подставить в скобках Lot
Natalya Dzerzhinskaya:
Наталья, выше предложенные коды хороши тем, что не нужно лезть в основной код, и правиться очень быстро
Ну тогда уж так:
Vitaly Muzichenko:
Наталья, выше предложенные коды хороши тем, что не нужно лезть в основной код, и правиться очень быстро
Наталья, выше предложенные коды хороши тем, что не нужно лезть в основной код, и правиться очень быстро
Исправить то пару строк, добавить Lot в скобках и удобнее же когда Lot во внешних параметрах, а не принудительно.
Vitaly Muzichenko:
Вот так:
Спасибо Виталий. Работает.
Nikolay Elin:
Спасибо Виталий. Работает.
Спасибо Виталий. Работает.
Все варианты правильные, надо бы всем спасибо сказать))

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Есть код:
double Lots()
{
double Lots;
Lots=AccountFreeMargin()/10000*5;
Lots=MathMin(15,MathMax(0.1,Lots));
if(Lots<0.1)
Lots=NormalizeDouble(Lots,2);
else
{
if(Lots<1) Lots=NormalizeDouble(Lots,1);
else Lots=NormalizeDouble(Lots,0);
}
return(Lots);
}
Нужно, чтоб советник открывал только лотом 0.03. Как исправить этот код?