From c45c1a22e10a5f24b6bd5afd9803569bc0c43aa3 Mon Sep 17 00:00:00 2001 From: Eddie Hebert Date: Tue, 29 Oct 2013 13:17:58 -0400 Subject: [PATCH] BUG: Only localize benchmark index if it is naive. Check for whether or not the index's timezone is UTC or not before attempting to localize, since an already localized index throws an error when tz_localize is called. --- zipline/data/loader.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/zipline/data/loader.py b/zipline/data/loader.py index 2a0b91bd..a6ce5b7c 100644 --- a/zipline/data/loader.py +++ b/zipline/data/loader.py @@ -162,10 +162,12 @@ Fetching data from Yahoo Finance. # we have data,then we need to update if len(trading_days) - last_bm_date_offset > 1: benchmark_returns = update_benchmarks(bm_symbol, last_bm_date) - benchmark_returns = benchmark_returns.tz_localize('UTC') + if benchmark_returns.index.tz.zone != 'UTC': + benchmark_returns = benchmark_returns.tz_localize('UTC') else: benchmark_returns = saved_benchmarks - benchmark_returns = benchmark_returns.tz_localize('UTC') + if benchmark_returns.index.tz.zone != 'UTC': + benchmark_returns = benchmark_returns.tz_localize('UTC') try: fp_tr = get_datafile('treasury_curves.csv', "rb")