-100% drawdown when SetBrokerageModel()

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.



Update Backtest

Hi Alpha!

Somethings to consider.    Keep stats on how many trades the algorithm has made and the average/mean/mode profit per trade.   Compare that to brokerage commissions combined with slippage. Any algorithm that makes a bunch of trades, but only makes a few 'ticks/pips' per trade is most likely not going to be profitable in the real world because of slippage and commisions.  



Update Backtest


The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


This discussion is closed