1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 自己做量化交易软件(3)通通量化分析框架构成1

自己做量化交易软件(3)通通量化分析框架构成1

时间:2021-06-22 12:06:24

相关推荐

自己做量化交易软件(3)通通量化分析框架构成1

自己做量化交易软件(3)通通量化分析框架构成1

通通股票量化分析框架采用模块化设计,每个模块存放在不同的py文件中。

通通股票量化分析框架下载:

/download/hepu8/10668509

运行python环境,可以在我的网盘下载绿色python软件,不用安装设置,解包就能运行,已经安装了常用软件包。用户根据自

己需要选择所需版本,hpython36是python3.6版本,hpython27是python2.7。

hpyton27下载网盘: /s/14TAGHiJzommKKIA9n2iGiw

hpyton36下载网盘: /s/112_IwCJg49c2P4TU3PFomw

用户不需要我们提供的绿色版本,也可参考下面我写的文章,重新构建自己的python环境。

自己做量化交易软件(1) 免费量化分析环境安装使用

/hepu8/article/details/81866694

下面介绍这些文件功能。

一、系统全局变量文件 HP_global.py

文件里面定义了全局变量。基本上每个模块都要引用。

#运行系统环境设置#G_os=1 windows,=2 linux, =3 mac oSglobal G_os #操作系统global G_pyver #Python版本global G_tk #tkinter命令global G_tk1 #tkinter命令global G_tk2 #tkinter命令global G_py2 #python2命令global G_py3 #python3命令#软件环境设置global G_name #软件名称global G_title #软件标题global G_winW #默认主窗口宽度global G_winH #默认主窗口高度global G_ver #软件版本号global G_user #用户名global G_ico #软件图标global G_login #用户登录标记global G_root #窗口根句柄global G_canvas #绘图canvasglobal G_figure #绘图figureglobal G_plot #绘图plotglobal tk #tkglobal ttk #ttk############################################软件参数global G_gtype #画面模式,暂用于显示指标图形个数global G_stock #当前股票代码global G_index #当前用户指标global G_df#当前股票代码数据global G_sday #分析开始日期global G_eday #分析结束日期global G_MA1#价格平均线周期global G_MA2#价格平均线周期global G_MA3#价格平均线周期global G_MA4#价格平均线周期global G_MA5#价格平均线周期global G_MA6#价格平均线周期global G_MAV1#成交量平均线周期global G_MAV2#成交量平均线周期

二、系统参数设置及初始化文件 HP_set.py

系统软件名称,用户,以及参数设置。基本上每个模块都要引用。

程序主要代码如下:

import platformfrom HP_global import *import pandas as pd#软件名称G_root=NoneG_name='聚宽证券分析研究平台'G_title='聚宽证券分析研究平台'G_ico='.\jk.ico'G_winW=1280G_winH=850G_ver=1.00G_user='18578755056'G_login=FalseG_tk='import tkinter as tk'G_tk1='from tkinter import *'G_tk2='from tkinter import ttk'G_os=1G_pyver=int(platform.python_version()[0:1])############################################软件参数G_gtype=3G_stock='000001.XSHE'G_df=NoneG_sday='-01-01'G_eday='-09-08'G_index='KDJ'G_MA1=5G_MA2=10G_MA3=20G_MA4=60G_MA5=120G_MA6=240G_MAV1=5G_MAV2=10#########################################操作系统类型def UseOS( ):sysstr = platform.system()if(sysstr =="Windows" or sysstr =="windows"):return 1elif(sysstr == "Linux"):return 2else:return 3def HP_init():#软件名称G_name='聚宽证券分析研究平台'G_title='聚宽证券分析研究平台'G_ver=1.00G_login=FalseG_tk='import tkinter as tk'G_tk1='from tkinter import *'G_tk2='from tkinter import ttk'G_pyver=int(platform.python_version()[0:1])G_os=UseOS( )if G_pyver==3:G_tk='import tkinter as tk'G_tk1='from tkinter import *'G_tk2='from tkinter import ttk'else:G_tk='import Tkinter as tk'G_tk1='from Tkinter import *'G_tk2='from Tkinter import ttk'

三、通通软件登录窗口文件 HP_Login.py

软件登录窗口,我们设计了聚宽用户的登录演示。如果软件登录成功,就进入主窗口。

聚宽数据包安装见我的第一篇文章。

from jqdatasdk import * #聚宽数据包x=auth(name,secret) #用户登录,name是用户名,secret是用户密码

下面是完整文件代码:

from jqdatasdk import * #聚宽数据包from PIL import Image, ImageTkfrom HP_global import *from HP_set import *from HP_MainPage import * class LoginPage(object): def __init__(self, master=None): HP_init()exec(G_tk)exec(G_tk1)self.w = 300self.h = 180self.root = master #定义内部变量root self.staIco = G_icoself.root.geometry('%dx%d' % (self.w, self.h )) #设置窗口大小 self.username = StringVar() self.password = StringVar() self.createPage() self.loop()def loop(self):self.root.resizable(False, False) #禁止修改窗口大小self.center() #窗口居中self.root.mainloop()def _quit(self):#结束事件主循环,并销毁应用程序窗口self.root.quit()self.root.destroy()def center(self):ws = self.root.winfo_screenwidth()hs = self.root.winfo_screenheight()x = int( (ws/2) - (self.w/2) )y = int( (hs/2) - (self.h/2) )self.root.geometry('{}x{}+{}+{}'.format(self.w, self.h, x, y))self.root.iconbitmap(self.staIco)def createPage(self): self.page = Frame(self.root) #创建Frame self.page.pack() Label(self.page).grid(row=0, stick=W) Label(self.page, text = '聚宽账户: ').grid(row=1, stick=W, pady=10)Entry(self.page, textvariable=self.username).grid(row=1, column=1, stick=E)self.username.set(G_user) Label(self.page, text = '聚宽密码: ').grid(row=2, stick=W, pady=10) Entry(self.page, textvariable=self.password, show='*').grid(row=2, column=1, stick=E) Button(self.page, text='登陆', command=self.loginCheck).grid(row=3, stick=W, pady=10) Button(self.page, text='退出', command=self._quit).grid(row=3, column=1, stick=E) def loginCheck(self): name = self.username.get() secret = self.password.get() try:x=auth(name,secret)except:x="error"#x='test'if x!='error' or x=='' :self.page.destroy() G_login=TrueMainPage(self.root) else: showinfo(title='错误', message='账号或密码错误!')G_login=False

四、通通软件主文件 HP_main.py

通通股票分析软件框架主程序代码如下:

# -*- coding: utf-8 -*-"""#功能:通通股票分析软件框架主程序#版本:Ver1.00#设计人:独狼荷蒲#电话:18578755056#QQ:2775205#百度:荷蒲指标#开始设计日期: -07-08#公众号:独狼股票分析#使用者请同意最后<版权声明>#最后修改日期:9月14日#主程序:HP_main.py"""from HP_global import *from HP_set import *from HP_Login import * if __name__ == "__main__":HP_init()exec(G_tk)exec(G_tk1)exec(G_tk2)G_root = tk.Tk()G_root.title(G_title) LoginPage(G_root)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。