during live implementation of my algorithm I'm trying to get history of last 300000 SPY trade bars: 

self.History(["SPY"], 300000, Resolution.Minute).loc["SPY"]

I've got following error: 

The history request took too long to process. History requests have a 20 second timeout.

I've checked it more precisely and 20s time frame is enough only to get 150000 trade bars. I am blocked and I think the best would be to somehow make time limit dependent on the history length request. We're going more and more in the machine learning applications, so we need to access quite big data sets.