3

我在 Visual Studio 2017 中编译了 QuantLib,并在 Release x64 下构建了该库。然后我按照这里的说明安装了 QuantLib Swig:https ://www.quantlib.org/install/windows-python.shtml

VS 中的目录设置如屏幕截图所示: 在此处输入图像描述

然后我使用 QuantLib 测试了一个普通的欧式选项,它运行时没有出现错误:

option = EuropeanOption(PlainVanillaPayoff(Option.Call,100),EuropeanExercise(Date(11,5,2021)))

但是我无法检查optionIDE 中的变量(我使用 Spyder)并看到错误:

Spyder was unable to retrieve the value of this variable from the console.

错误消息是:

cannot pickle 'SwigPyObject' object

我看到这个变量的值是EuropeanOption object of QuantLib.QuantLib module.

版本:

Python: 3.8
Quantlib: 1.19
QuantLib-SWIG: 1.19
boost: 1_74_0
Spyder: 4.1.4

非常感谢任何帮助。

4

1 回答 1

1

此处为 Spyder 维护者)不幸的是,并非所有 Python 对象都可以通过变量资源管理器进行探索。只能查看那些可腌制的,并且您在上面发布的错误消息说EuropeanOption不是。

此外,没有解决方法可以避免此问题,因为可腌制是 Python 对象的基本属性,Spyder 无法更改。

于 2020-10-13T15:40:16.110 回答