text: Title: Unexpected result from vbt.Portfolio.from_signals
  Body: From In [16] in /tests/notebooks/portfolio.ipynb
  ```python
  portfolio = vbt.Portfolio.from_signals(
      price, 
      entries=[True, False, True, True, True],
      exits=[False, True, False, False, True],
      size=[1, 2, 3, 4, 5], 
      size_type=SizeType.Cash, accumulate=False)
  print(portfolio.cash)
  ```
  the output is 
  ```python
  2020-01-01     99.0
  2020-01-02    101.0
  2020-01-03     98.0
  2020-01-04     98.0
  2020-01-05      5.0
  dtype: float64
  ```
  
  Notice that the last row (cash in hand) is 5. It should ideally be 98 since both entry and exit signals are true. 
  
  Additionally, when both signals are true, in **signals_order_func_nb** 
  ```python
  if size_type == SizeType.Shares:
              order_size = abs(size) - run_shares
  ```
  will also give an unexpected result when accumulate is True and there have been multiple buys before this condition.
  
  I think it makes most sense to do nothing when both signals are True.