def _hist_data_req_to_args(self, req: object):
"""Convert marketdata.HistDataReq to IB arguments.
"""
assert req.DataType.upper() in IB_HIST_DATA_TYPES,\
'Invalid IB data type requested: %s' % req.DataType
contract = self._hist_data_req_to_contract(req)
endDateTime = pytz.UTC.normalize(
req.TimeEnd).strftime('%Y%m%d %H:%M:%S %Z')
durationStr = timedur_to_IB(req.TimeDur)
barSizeSetting = barsize_to_IB(req.BarSize)
whatToShow = req.DataType.upper()
useRTH = True if barSizeSetting in ('1 day', '1W', '1M') else False
formatDate = 2 # enforce UTC output
keepUpToDate = False
chartOptions = None
return (contract, endDateTime, durationStr, barSizeSetting, whatToShow,
useRTH, formatDate, keepUpToDate, chartOptions)
评论列表
文章目录