from serenitas.analytics import Portfolio, FxForward import logging logger = logging.getLogger(__name__) def get_forward_portfolio(date, conn, fund="SERCGMAST", **kwargs): sql_str = "SELECT dealid FROM spots where settle_date > %s and fund = %s" with conn.cursor() as c: c.execute(sql_str, (date, fund)) trade_ids = [tid for (tid,) in c] portf = Portfolio([FxForward.from_tradeid(tid) for tid in trade_ids], trade_ids) portf.value_date = date return portf