On many algo I see here, especially ETF's ones , the rebalancing / reallocating are done on specific calendar dates (e.g. daily, weekly or monthly), my gut feeling was that such balancing cycles arent efficient as they happen mechanically ignoring market conditions.
I found an intresting research that supports the notion of not using calendar rebalancing but an opportunistic rebalancing - that is the approach of looking frequently and balance only when you need to,
The main research findings are :
• Rebalancing not by calendar dates but by tolerance bands can increase returns by 0.5%. The best is to have 20% tolerance band and look frequently each 1,5 or 10 days if the 20% band was exceeded. This will capture the buy low / sell high opportunities. Regarding how often to look if the bands were exceeded - If class of assets is commonly down by +/- 20% then looking back 5 days is best returns/risk.
• Bands rebalancing are better for long term as there are going to be more volatile periods (e.g. balancing lot in trend periods adds costs of commissions)
• Rebalancing using the recommendation above (e.g. 20% tolerance band), the backtest shows that commission and tax costs for frequent balancing are insignificant - an average of additional 3 trades a year per class by applying this rebalancing strategy
Full research in: http://www.tdainstitutional.com/pdf/Opportunistic_Rebalancing_JFP2007_Daryanani.pdf