自定义模块教程-demo模块

策略分享
新手专区
自定义模块
标签: #<Tag:0x00007f73eec863b0> #<Tag:0x00007f73eec86270> #<Tag:0x00007f73eec86130>

(iQuant) #1
克隆策略

我们这次终于提供了功能强大的自定义模块功能,让大家来常常鲜。

新建一个可视化策略

BQmodule1

拖拽一个自定义python模块

编辑自定义模块

设置参数

鼠标单击模块,在右边会出现灰色的面板,在面板里我们可以指定参数的作用,比如我们这里的a作为输入,test_1和test_2作为参数。

新建模块

鼠标右键模块,点击另存为模块,选中新建模块,然后单击下一步

BQmodule6

模块命名

设置模块信息

在这里我们可以设置模块的现实名称、文档描述、数据端以及模块参数的说明,并且能设置模块参数的类型。

下面的单选框很重要,如果单击共享模块,所有用户都可以看到和使用你的模块。

如果单击共享源代码,那么其他用户就可以看到这个模块的源代码

BQmodule9

调用模块

当我们更新完之后,我们需要重启内核,刷新当前游览器,于是我们就能看到新创建的模块了。

BQmodule10

因为我们有一个输入端,所以我们需要连接一个模块,这里我们随便算了一个证券列表模块:

然后我们点击运行模块,可以看到模块的输出信息:

查看源代码

In [3]:
print(M.feynman_demo.v5.m_sourcecode[0][1])
# Python 代码入口函数,input_1/2/3 对应三个输入端,data_1/2/3 对应三个输出端
def bigquant_run(a, 
                 test_1, 
                 test_2):
    # 示例代码如下。在这里编写您的代码
    print("test_1:"+test_1)
    print("test_2:"+test_2)
    return Outputs(data_1=None, data_2=None, data_3=None)


# 后处理函数,可选。输入是主函数的输出,可以在这里对数据做处理,或者返回更友好的outputs数据格式。此函数输出不会被缓存。
def bigquant_postrun(outputs):
    return outputs

总结:自定义模块能够帮你用户封装和重用自己的代码,也能够将自己的知识分享给别人,是一个非常有用的工具。