Hi There,
It is my understanding that when using the Algorithm Framework, Holdings will be implicitly Liquidated simply when an AlphaModel Insight signal duration has been met.
I have been playing around with the code already provided in the Bootcamp: Algorithm Framework.
I tried modifying the Insight timedelta() argument (within the alpha model) and then, when that failed within the PortfolioConstructionModel as an argument passed to the EqualWeightingPortfolioConstructionModel.
This is how I modified the AlphaModel Insight timedelta() from 1 to 22:
return Insight.Group([Insight.Price(ordered[0]['symbol'], timedelta(22), InsightDirection.Up)
And this is how I modified the duration within the PortfolioConstruction model when the above failed to yield a result:
self.SetPortfolioConstruction(EqualWeightingPortfolioConstructionModel(rebalancingParam = timedelta(22)))
Both of these modifications resulted in the same number of trades as the original algorithm Insights, which were emitted daily.
Can you see what I am doing wrong? Is my understanding of Insight duration misguided? How should I stop the churn of daily trading?
Thanks in advance!