Python Quantlib将Quantlib Date转换为datetime

时间:2017-07-13 17:52:09

标签: python datetime matplotlib quantlib quantlib-swig

我有一个在quantlib的日期格式中定义的日期列表。如何将这些转换为日期时间格式。我问的原因是,我想绘制它,我收到了以下错误:

  

TypeError:float()参数必须是字符串或数字,而不是'日期'

执行以下操作时:

var video = document.querySelector('YOUR_VIDEO_SELECTOR');

video.addEventListener('load', function() {
    var tracks = video.textTracks[0];
    tracks.mode = 'showing';
});

日期如下所示:

plt.plot(dates,rates, linewidth=2.0) # Without date plotting works out.

1 个答案:

答案 0 :(得分:6)

没有预定义的转换,因此您必须从QuantLib日期中提取信息并使用它来构建datetime实例。例如,定义类似

的内容
def ql_to_datetime(d):
    return datetime.datetime(d.year(), d.month(), d.dayOfMonth())

之后您可以将ql_to_datetime(d)用于单个日期,或[ ql_to_datetime(d) for d in dates ]作为列表。 (当然,您也可以定义另一个列表的功能。)

在最新版本的QuantLib-Python中,

更新,添加了预定义的转换。您现在可以说d.to_date()来转换日期,或者[d.to_date() for d in dates]来表示列表。