Question about automatically running Agg Series in a strategy

I have built a strategy that uses a Breadth Composite based on the Nasdaq 100. I built variations on this composite to test whether SMA or EMA signals are better for entry and exit (careful to avoid curve fitting).

Two versions of this QQQ Breadth Composite are applied in the Hedge component to signal in-market and out-of-market (cash) periods. It all seems to be working great, producing a return about the same as what I was getting when running this approach OOS on another platform for the last decade.

However, Dan Parquette informed me that Aggregate Series don't automatically update each week. I would need to update them manually each weekend before the strategy updates.

So, rather than worrying about updating my Agg Series every Saturday morning, I tried creating a workaround for the manual update by making Buy Rules calling the Breadth Series involved. It seemed logical that this would resolve the need to update my Agg Series on Saturday morning each week manually.

My Buy Rule looks like this:

Close(0,GetSeries("QQQ_Breadth_Composite1"))

So, it is not an actual Buy Rule in the usual sense. There is no threshold for it to clear. It is just making the Agg Series update (if I'm not mistaken) by calling it.

Confoundingly, the annual return declines when I add this simple approach to automate the running of the Agg Series each week. My question is: Why would the backtest results decline by 4.2% annually when I include my Series-triggering Buy Rules?

There is no change to the strategy particulars; it is just a call to run the Hedge Exit and Hedge Entry series automatically. What am I missing here?

Thank you,
Chawasri

Hi Chawasri,

If Close(0,GetSeries("QQQ_Breadth_Composite1")) ever evaluates to zero, your Buy rule will fail.

Try;
Close(0,GetSeries("QQQ_Breadth_Composite1")) | True

It would also work without Close() and still causes the desired side effect: GetSeries("QQQ_Breadth_Composite1")

It is worth noting that Aggregate Series are updated on the fly when referenced directly (or via formula) in a screen or live or simulated strategy. So in your particular case, you may leave out this extra reference.

Aggregate Series that aren't referenced directly in a screen or strategy will not be updated, and any other usages of Aggregate Series would show a stale series. So to that extent, Aggregate Series aren't updated automatically.

Notable uses that do not cause Aggregate Series to be updated are universe rules, ranking system nodes, and 'advanced' usages in higher order functions, (specifically, loop and historical functions). These cases currently require this workaround of adding a reference to the rules of the screen or strategy.

1 Like

Yes, that worked! Thank you

Chawasri

Thank you, Aaron!

Does anyone know if this still works? Can’t seem to get it to work myself. The date in the “updated” column for my agg series does not change after I rebalance the live strategy.

It should still work. You may be seeing a cached version of the Aggregate Series. Try logging out/in and checking again.

Hmm, its still saying the old date. Would you mind checking if there is something wrong with how I’m referencing the Agg Series?

Live Strategy Trading System - Portfolio123

We use daily bars for market data. Since daily bars are only created after the trading day closes, the most recent data point is always from the previous trading day, not the current day.

The latest bar in the series is from September 19, 2025, which represents the last completed trading session. The data series is current and up-to-date.

1 Like

ya i ended up doing it manually, it was sept 18 before.