Японские свечи? Загадка.

 
Мне захотелоси описать в MQL4 для индикатора японские свечи, но возникли проблемы.
Например захотелось описать фигуру повешанного
Как известно для повешанного кокое тело (бычье или медвежье) не имеет значение главное это тень которая должна быть в 2е длинее тела
если цена открытия меньше цены закрытия (для бычьей свечи) то проблем нет, но если наоборот (для медвежьей свечи ), а сигнал обе свечи дают один и тотже
как быть?
ктонибуть пробовал описать японские свечи ?
 
в чем собственно проблема? в программирование или в понимании японских свечей?
 
в чем собственно проблема? в программирование или в понимании японских свечей?

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

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

Если нет разницы какая свеча - бычья или медвежья - томожно напримкр вот так MathAbs(Close[i]-Open[i]), если я правильно понял о чем ты.
 
Бычья - if(Close[i]>Open[i]){}

Медвежья - if(Close[i]<Open[i]){}
 
в чем собственно проблема? в программирование или в понимании японских свечей?

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

Если нет разницы какая свеча - бычья или медвежья - томожно напримкр вот так MathAbs(Close[i]-Open[i]), если я правильно понял о чем ты.

Спасибо !
 
Бычья - if(Close[i]>Open[i]){}

Медвежья - if(Close[i]<Open[i]){}

Я так пробовал.
С таким подходом получится слишком большой код, в котором будет много ошибок.
А в работе программа будет давать ложные сигналы.
 
а иначе никак.

Можно сделать отдельные функции, чтобы было наглядно и не ошибаться:

bool bearish(int i){
      if(Close[i]<Open[i]){
            return(true);
      }
      else{
            return(false);
      }
} 

bool bullish(int i){
      if(Close[i]>Open[i]){
            return(true);
      }
      else{
            return(false);
      }
} 



а затем вызывать их:

      if(bearish(i)){
             // свеча №i - медвежья 
      }
 
а иначе никак.

Можно сделать отдельные функции, чтобы было наглядно и не ошибаться:

bool bearish(int i){
      if(Close[i]<Open[i]){
            return(true);
      }
      else{
            return(false);
      }
} 

bool bullish(int i){
      if(Close[i]>Open[i]){
            return(true);
      }
      else{
            return(false);
      }
} 



а затем вызывать их:

      if(bearish(i)){
             // свеча №i - медвежья 
      }



Класно!!!
Примерно по такому принципу я и опишу всё
 
я юзаю часто
MathMax(Open[i],Close[i])
MathMin(Open[i],Close[i])

и их разницу если надо.

может поможет :)
Причина обращения: