打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
使用pyqt5 参数树来呈现量化回测结果

今天实现用参数树来呈现回测结果的小例子。

回测系统结果要展示的参数较多,使用参数树来呈现会比较清晰。

如下图所示:

import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5 import QtWidgets,QtCore
from pyqtgraph.parametertree import  ParameterTree
from pyqtgraph.parametertree import Parameter
from qtpy import QtCore
from qtpy.QtWebEngineWidgets import QWebEngineView

# 创建参数树的数据
params = [
{'name': '基本收益信息', 'type': 'group', 'children': [
{'name': '回测收益', 'type': 'float', 'value': 132.836, 'siPrefix': True, 'suffix': '%'},
{'name': '回测年化收益', 'type': 'float', 'value': 32.712, 'step': 0.1, 'siPrefix': True, 'suffix': '%'},
{'name': '基准收益', 'type': 'float', 'value': 48.261},
{'name': '基准年化收益', 'type': 'float', 'value': 14.096, 'step': 0.01},

]},
{'name': '风险指标', 'type': 'group', 'children': [
{'name': 'Beta', 'type': 'float', 'value': 0.4580},
{'name': '夏普比', 'type': 'float', 'value': 1.2993},
{'name': '最大回撤', 'type': 'float', 'value': 16.295, 'step': 10, 'siPrefix': True, 'suffix': '%'},
]},
]

class WidgetParams(QWidget):
def __init__(self):
super(WidgetParams, self).__init__()
self.initUI()

def initUI(self):
t = ParameterTree()
layout = QtWidgets.QHBoxLayout()

tree_widget = QtWidgets.QWidget()
tree_widget.setMinimumWidth(300)
layout.addWidget(tree_widget)


vLayout = QVBoxLayout()
tree_widget.setLayout(vLayout)
vLayout.addWidget(t)
## 创建参数对象树
     p = Parameter.create(name='params', type='group', children=params)
t.setParameters(p, showTop=False)
t.setHeaderLabels(["参数", "数值"])
self.web = QWebEngineView(self)
layout.addWidget(self.web)
#self.web.load(
        #   QUrl.fromLocalFile(self.plotly_pyqt5.get_plotly_path_product_vs_hs300()))

       self.setLayout(layout)

if __name__ == '__main__':
app = QApplication(sys.argv)
demo = WidgetParams()
demo.show()
sys.exit(app.exec_())

关于作者:魏佳斌,互联网产品/技术总监,北京大学光华管理学院(MBA),特许金融分析师(CFA),资深产品经理/码农。偏爱python,深度关注互联网趋势,人工智能,AI金融量化。致力于使用最前沿的认知技术去理解这个复杂的世界。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
pyqt5 -——基本功能(HelloWorld)
PyQt5快速入门(三)PyQt5基本窗口组件
Pyqt5+python2.7美观的登陆界面制作(二)
【第二节】PyQt5基本功能
PyQt5 GUI应用程序工具包入门(2)
Python PyQt5整理介绍
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服