Candle.IsBullishOrBearish() never returns false (i.e. is never Bearish!)
I noticed that the above method never returns 'false' and so cannot indicate bearish signals. The source code is as follows:
/// Whether the candle is bullish or bearish.
/// <param name="candle">The candle which should be checked for the trend.</param>
/// <returns><see langword="true" /> if bullish, <see langword="false" />, if bearish, <see langword="null" /> - neither one nor the other.</returns>
public static bool? IsBullishOrBearish(this Candle candle)
if (candle == null)
throw new ArgumentNullException(nameof(candle));
var isWhiteOrBlack = candle.IsWhiteOrBlack();
if (candle.GetBottomShadow() >= candle.GetBody())
if (candle.GetTopShadow() >= candle.GetBody())
I'm guessing that the second case should return 'false' . It looks to me like the top case is looking for an inverted hammer (bullish), whereas the bottom case is looking for a shooting star (bearish). However shouldn't it also be looking at the other shadows in each case since we want a short shadow opposite the long shadows for both inverted hammer and shooting start right?? Am I missing something?