I'm writing a statistical arbitrage algo but have run into a problem: to ensure the algo can run over a longer period of time, it is necessary to periodically update the universe of "unit portfolios" (combination of securities that make up the long/short positions) to remove security combinations that are no longer tradable and add new combinations.
At the moment, the event driven architecture in Quantopian is not suitable for a program that works through a large number of combinations of securities, looking for cointegrated, mean reverting and tradable unit portfolios, so I have an external program for that purpose. My idea is that I could have the Quantopian algo read a csv file from a dropbox on a weekly basis to update the universe.
However, it seems the fetch_csv method can only be called in the initialize method and other file read methods, for example pandas.read_csv, are not allowed at all.
Is there some way to update the security universe from an external source during algo execution?