art*_*omp 4 python plot graph pandas qstk
使用QSTK进行Georgia Tech的Coursera计算投资课程,Examples/EventProfiler/tutorial.py末尾的eventprofiler函数不会输出视频中显示的图表.(见下图.)
为第4周的练习生成的其他PDF是相同的空白,除了事件编号,这是正确的.创建PDF似乎是一种浪费,因为这些数字可能只是输出到终端.
我查看了图像上显示的index.py:2204的错误输出,但修复不明显.(关于pandas相关的github错误的类似(但不完全相同)问题的一些其他回溯将index.py放在健康的调用堆栈中.)
如果我有时间的话,我可能会深入研究eventprofiler代码,但我想我先问一下.Stack Overflow在QSTK上几乎没有任何内容,并且在5分钟的快速搜索中,大熊猫似乎没什么关系.
注意:我按照佐治亚州技术课程计算投资课程的quantsoftware wiki的指示安装了VirtualBox,Ubuntu和QSTK.到目前为止,我已经成功完成了所有作业,所以我认为我的设置应该没问题.
问题在于EventProfiler.
对于Ubuntu,默认安装在/usr/local/lib/python2.7/dist-packages/QSTK-0.2.8-py2.7.egg/QSTK/qstkstudy/EventProfiler.py中
在这段代码中:
if b_market_neutral == True:
df_rets = df_rets - df_rets[s_market_sym]
del df_rets[s_market_sym]
del df_events[s_market_sym]
Run Code Online (Sandbox Code Playgroud)
问题在于减法.df_rets最终充满了NaNs.不知道为什么,在底层系统中必然会发生一些变化.
它可以通过在for循环中为每个符号进行减法来修复,如下所示:
if b_market_neutral == True:
for sym in df_events.columns:
df_rets[sym] = df_rets[sym] - df_rets[s_market_sym]
del df_rets[s_market_sym]
del df_events[s_market_sym]
Run Code Online (Sandbox Code Playgroud)
您可以从此处下载带有修复程序的EventProfiler.py文件.重命名安装中的原始版本并替换为此版本.
根据你所提及的Endeavor的建议,我也将误差条的alpha值从0.1更改为0.6,以使它们更加明显:
if b_errorbars == True:
plt.errorbar(li_time[i_lookback:], na_mean[i_lookback:],
yerr=na_std[i_lookback:], ecolor='#AAAAFF',
alpha=0.6) #Changed alpha from 0.1 to 0.6 (Jose A Dura)
Run Code Online (Sandbox Code Playgroud)