@Satya,
I've learned that the pandas dataframe has what is called a resample method. It takes a dataframe (what comes out of the history method) and works its magic.
This converts days to weeks:
closes = history(126, "1d", "close_price").resample("1w")
And this would convert single minutes to 15 minute intervals
closes = history(390 * 30, "1m", "close_price").resample("15min")
Note that these would be a rolling 15 minute windows (a recalc on minute 1, 2, 3, etc. going back 15 minutes at each recalculation.)
If you want consistent on-the-hour 15 minute bars then you'll have to either monitor the time as it is presented on each minute bar, and trigger accordingly. Or you could set a few schedule_function methods to trigger on your 15 minute thresholds.