Yes, trades are not needed when Objective != 0. At first glance I see nothing wrong with the Zorro code.

The #1 potential bug in machine learning R code is a neural.predict function that works with matrices, but not with vectors.