Hi, when researching for algos, do you run them with SetBrokerageModel() or not? If you find an algo which performs well without SetBrokerageModel() but not with it, does it mean the algo needs more work or is it out the window?

I have an algo (5-min bars, Crypto, GDAX) which works well in backtest. As soon as I add the line SetBrokerageModel(BrokerageName.GDAX, AccountType.Cash); the algo performance goes down as -log(x). I imagine this is due to the 0.25% trading cost at GDAX (might be 0.1% now). I just don't know how to debug an algo, which performs well otherwise. What are the usual tricks? I've increased the frequency to 1h bars, same thing. With this algo in particular, it only became profitable once I went above 12h bars. It however, did not outperform buy & hold.

Any ideas of reducing trading costs? Can you post some examples of how you manage your trading? I always use SetHoldings("SPY", signal) where my signal is [0, 1].

I use C# and Python - happy with either but happier with Python.