Почему не компилирует ?

 

Помогите пожалуйста, почему редактор не хочет компилировать и что нужно исправить (учусь)

int init()
{
return(0);
}

int start()
{
double
ABC= 0.0150;
Buy=(Close-Open);
Sell=(Open-Close);
if (Buy>=ABC)
{
Alert("Свеча вверх")
}
else (Sell>=ABC)
{
Alert("Свеча вниз")
}
return(0);
}
int deinit()
{
return(0);

 

Ошибка то какая пишется!?

Проверьте парность скобок для начала, а то код как месиво выглядит, могли пропустить

 
Не могу понять в чем дело, вот картинка
 

ну так все понятно пишет. Переменные то надо определять.

не просто

Buy=(Close-Open); а

double Buy=(Close-Open);

Кстати Close и Open это массивы, т.ч. нужно указывать какой элемент массива (бар) интересует. Например Close[1] возвращает значение close последней закрытой свечи

 

Т.е. чтобы все это было ориентированно на последний бар как надо написать ?

double Buy=(Close[1]-Open[1]) ?

 
Теперь выдает такую картинку
 
Последний бар нулевой
 
BGD:

Т.е. чтобы все это было ориентированно на последний бар как надо написать ?

double Buy=(Close[1]-Open[1]) ?

вот как нужно

int start()
{
double
ABC= 0.0150,
Buy=(Close[0]-Open[0]),
Sell=(Open[0]-Close[0]);
if (Buy>=ABC)
{
Alert("Свеча вверх");
}
else 
{
Alert("Свеча вниз");
}
}
 
BGD:
Теперь выдает такую картинку
после ELSE не может быть условия
 
Techno, Ваш вариант скомпилировался, вот только как тогда сделать чтобы он сообщал если появилась свеча вниз ?Т.е. (open-close)>=0.0150 ?
 
Получается так ?
Причина обращения: