не могу получить алерт

 

Добрый день!

int LAST =100,OP=100, MIN=100,ZAKR1=100, N=1;

int W6 = MIN + OP*N/100;

if (LAST >= W6)
{ int W7 = MIN;
if (LAST <= W7)

{int OSL201 = W7; Alert ("CИГНАЛ ВНИЗ "); }}

Не могу получить алерт

вначале цена была равна w6 (1 условие) и дала формулу w7 потом равна w7 (2 условие)

заранее благодарю за подсказку. Дмитрий

 
А можно получить полный код?
 

Вы его и не получите в такой схеме. W6 > W7 так сказать для всех OP*N/100 не равных 0. Вот и судите сами, как одно и тоже выражение одновременно может быть и больше большего и меньше меньшего?

Пересмотрите подход к организации проверок внимательней, чтобы избежать логических ошибок.

 

// ФОРМУЛА 1.0

// "цена с опена пошла вверх и превысила значение W6 если она после этого пойдет вниз ибудет ниже W7 должен прозвучать
// алерт . Простая последовательность действий результат не дает ..засунуть внутрь первой формулы тоже не получилось
//(см выше)

double LAST=100, OP=100, MIN=100, N=1; // Исходные значения для теста манипулирую присваивая LAST=100 или LAST=101

W6 = MIN + OP*N/100;
if (LAST >= W6)
{MIN1 = MIN; }


// ФОРМУЛА 2.0

W7 = MIN1;
if (LAST <= W7)
{OSL201 = W7; Alert ("Cигнал ");}

 

Пора бригаду телепатов вызывать.

 
dimmi2000:

// ФОРМУЛА 1.0

// "цена с опена пошла вверх и превысила значение W6 если она после этого пойдет вниз ибудет ниже W7 должен прозвучать
// алерт . Простая последовательность действий результат не дает ..засунуть внутрь первой формулы тоже не получилось
//(см выше)

double LAST=100, OP=100, MIN=100, N=1; // Исходные значения для теста манипулирую присваивая LAST=100 или LAST=101

W6 = MIN + OP*N/100;
if (LAST >= W6)
{MIN1 = MIN; }


// ФОРМУЛА 2.0

W7 = MIN1;
if (LAST <= W7)
{OSL201 = W7; Alert ("Cигнал ");}


Я извиняюсь,сам начинающий,но может конструкция подойдёт

if ((Close[2]<Level && Close[1]>Level)||(Close[2]>Level && Close[1]<Level) && Notice==true && LastTime!=Time[0])
{
PlaySound("news.wav");
// Alert("Level ":" Symbol=",Symbol()," Period=",Period());
Print( TimeToStr(Time[0],TIME_SECONDS));
LastTime = Time[0];
}

Причина обращения: