|
29 | 29 | from . import shared |
30 | 30 |
|
31 | 31 |
|
32 | | -def download(tickers, start=None, end=None, actions=False, threads=True, |
| 32 | +def download(tickers, start=None, end=None, actions=False, threads=True, ignore_tz=True, |
33 | 33 | group_by='column', auto_adjust=False, back_adjust=False, keepna=False, |
34 | 34 | progress=True, period="max", show_errors=True, interval="1d", prepost=False, |
35 | 35 | proxy=None, rounding=False, timeout=None, **kwargs): |
@@ -63,6 +63,9 @@ def download(tickers, start=None, end=None, actions=False, threads=True, |
63 | 63 | Download dividend + stock splits data. Default is False |
64 | 64 | threads: bool / int |
65 | 65 | How many threads to use for mass downloading. Default is True |
| 66 | + ignore_tz: bool |
| 67 | + When combining from different timezones, ignore that part of datetime. |
| 68 | + Default is True |
66 | 69 | proxy: str |
67 | 70 | Optional. Proxy server URL scheme. Default is None |
68 | 71 | rounding: bool |
@@ -140,12 +143,17 @@ def download(tickers, start=None, end=None, actions=False, threads=True, |
140 | 143 | ticker = tickers[0] |
141 | 144 | return shared._DFS[shared._ISINS.get(ticker, ticker)] |
142 | 145 |
|
| 146 | + if ignore_tz: |
| 147 | + for tkr in shared._DFS.keys(): |
| 148 | + if (shared._DFS[tkr] is not None) and (shared._DFS[tkr].shape[0]>0): |
| 149 | + shared._DFS[tkr].index = shared._DFS[tkr].index.tz_localize(None) |
| 150 | + |
143 | 151 | try: |
144 | | - data = _pd.concat(shared._DFS.values(), axis=1, |
| 152 | + data = _pd.concat(shared._DFS.values(), axis=1, sort=True, |
145 | 153 | keys=shared._DFS.keys()) |
146 | 154 | except Exception: |
147 | 155 | _realign_dfs() |
148 | | - data = _pd.concat(shared._DFS.values(), axis=1, |
| 156 | + data = _pd.concat(shared._DFS.values(), axis=1, sort=True, |
149 | 157 | keys=shared._DFS.keys()) |
150 | 158 |
|
151 | 159 | # switch names back to isins if applicable |
|
0 commit comments