Your code can indeed not open a trade at the same bar because you're using an entry distance. This adds something to the price. So the price can never met this condition immediately and enter a trade.

For opening 3 trades at one bar, you had to use an absolute entry limit, not a distance. Your current code can only open 2. The 3 trades on bar 807 are apparently caused by your enumeration code that also writes never entered trades. Write only open and closed trades -> see TradeIsOpen and TradeIsClosed.