When trades are joined due to "synchronization" (i.e. when there is a limit order for example where you do not get filled immediately, but rather are converted-to-market to stay in sync with the strategy) then we cannot attribute that particular signal to one single system ID, because synchronization applies globally to your account, and not to one particular strategy. (We would not be able to verify with regulators when they audit our TOS claims, in these cases.)
Similarly, options assignments and exercises are invisible to our software, and are instead "assumed" to take place based on expiration prices... but we have no ability to prove that they do take place when we are audited by regulators.
So, our goal here isn't to cheat you out of money, or to maximize our own revenue. It is to build software that works correctly as reliably as possible, and to keep everyone out of regulatory trouble.