自己做量化交易软件(3)通通量化分析框架构成1
自己做量化交易软件(3)通通量化分析框架构成1
通通股票量化分析框架采用模块化设计,每个模块存放在不同的py文件中。
通通股票量化分析框架下载:
https://download.csdn.net/download/hepu8/10668509
运行python环境,可以在我的网盘下载绿色python软件,不用安装设置,解包就能运行,已经安装了常用软件包。用户根据自
己需要选择所需版本,hpython36是python3.6版本,hpython27是python2.7。
hpyton27下载网盘: https://pan.baidu.com/s/14TAGHiJzommKKIA9n2iGiw
hpyton36下载网盘: https://pan.baidu.com/s/112_IwCJg49c2P4TU3PFomw
用户不需要我们提供的绿色版本,也可参考下面我写的文章,重新构建自己的python环境。
自己做量化交易软件(1) 免费量化分析环境安装使用
https://blog.csdn.net/hepu8/article/details/81866694
下面介绍这些文件功能。
一、系统全局变量文件 HP_global.py
文件里面定义了全局变量。基本上每个模块都要引用。
#运行系统环境设置
#G_os=1 windows,=2 linux, =3 mac oS
global 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 #绘图canvas
global G_figure #绘图figure
global G_plot #绘图plot
global tk #tk
global 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 platform
from HP_global import *
import pandas as pd#软件名称
G_root=None
G_name='聚宽证券分析研究平台'
G_title='聚宽证券分析研究平台'
G_ico='.\jk.ico'
G_winW=1280
G_winH=850
G_ver=1.00
G_user='18578755056'
G_login=False
G_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=3
G_stock='000001.XSHE'
G_df=None
G_sday='2018-01-01'
G_eday='2018-09-08'
G_index='KDJ'
G_MA1=5
G_MA2=10
G_MA3=20
G_MA4=60
G_MA5=120
G_MA6=240
G_MAV1=5
G_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, ImageTk
from 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
#百度:荷蒲指标
#开始设计日期: 2018-07-08
#公众号:独狼股票分析
#使用者请同意最后<版权声明>
#最后修改日期:2018年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)
自己做量化交易软件(3)通通量化分析框架构成1相关推荐
- 自己做量化交易软件(1)通通量化分析环境安装使用
自己做量化交易软件(1) 通通量化分析环境安装使用 (独狼荷蒲 QQ:2775205) 一.安装python Anaconda包含有超过720个关于科学,数据,工程和数据分析的Python和R包,如果 ...
- 自己做量化交易软件(4)通通量化分析框架构成2
自己做量化交易软件(4)通通量化分析框架构成2 通通股票量化分析框架采用模块化设计,每个模块存放在不同的py文件中. 我们接着上一篇介绍. 五.基础窗口画面框架 HP_view.py HP_view. ...
- 自己做量化交易软件(9通通量化框架的雏形建立
自己做量化交易软件(9通通量化框架的雏形建立 前面我们做了各种学习尝试,现在开始逐步搭建一个通通量化框架.我做了一部分工作,但是很多朋友有python知识,也想自己能快速搭建程序.因此我放出了全部的开 ...
- 自己做量化交易软件(10)通通量化AI框架的数据获取与格式
自己做量化交易软件(10)通通量化AI框架的数据获取与格式 我与2018年07月08日开始学习python编程和设计通通量化AI框架,到昨天晚上2018年10月30日,基本框架已经完成.能够显示K线图 ...
- 自己做量化交易软件(6)通通量化历史交易回测设计1
前面我们介绍的通通量化软件的一些程序设计. 自己做量化交易软件(1)通通量化分析环境安装使用 https://blog.csdn.net/hepu8/article/details/81866694 ...
- 自己做量化交易软件(15)通通量化AI框架的选股器设计1
自己做量化交易软件(15)通通量化AI框架的选股器设计 前面我们学会了单只股票的分析,回测功能.下面我们开始设计选股器和量化分析的功能. 在设计选股器之前,我们先要学习一些python基本操作技巧. ...
- 自己做量化交易软件(11)通通量化AI框架的核心--框架结构
自己做量化交易软件(11)通通量化AI框架的核心–框架结构 既然我说了要开源通通量化AI框架,就算大家得到了代码,也不清楚怎么去改进和修改.因此我在最后完善框架的空闲,逐步介绍框架的核心设计思想,大家 ...
- 自己做量化交易软件(5)通通量化中创作的布林指标BOLL线
自己做量化交易软件(5)通通量化中创作的布林指标BOLL线 我们读者下载了通通量化演示框架的源代码.在这个代码中没有发现BOLL指标线的算法和绘图函数,我在这篇文章中,假设用户自己创作了新指标BOLL ...
- 自己做量化交易软件(12)通通量化AI框架的使用1-与通通AI对话聊天
自己做量化交易软件(12)通通量化AI框架的使用1-与通通AI对话聊天 到今天为止,通通AI量化框架基本完成了.下来要做的工作是进行完善,另外打算做macbook版本软件,我对macbook不熟悉,有 ...
最新文章
- python iter 迭代函数 简介
- 华为防火墙安全区域介绍
- 关于OpenCV的Mat画图问题
- linux oracle手动启动两个实例
- 信息学奥赛C++语言:高个子的人数
- [收藏转载]明星软件工程师的十种特质
- python-django-redis拒绝连接问题解决_20191121
- 《研磨设计模式》builder生成器模式(golang)
- 【基础篇】Navicat让MySQL数据库可视化
- FOC电机控制之SVPWM原理与实现
- 【概念学习】联邦学习的三个类别+【论文阅读】异步联邦学习
- Win10声卡驱动正常但没声音怎么办?驱动人生解决办法
- 实用的科技论文写作短语
- 易烊千玺代言雀巢咖啡;美国食品科技公司获3.5亿美元C轮融资;都乐“菠萝废物”开发皮革替代品...
- Re-ID Driven Localization Refinement for Person Search
- 献给和我一样迷茫的人们,9天准备笔试上岸中科大MPM工程硕士的心路历程(8820字)
- unity生成二维码
- 新式 AIMD 拥塞控制
- java 确认邮箱地址的可达性
- selenium实现自动播放音乐
热门文章
- siRNA-S-S-PEG-LMWP|M-MSN-siRNA介孔二氧化硅修饰RNA(齐岳RNA功能化修饰)
- Ubuntu运行sudo apt-get update 出现 无法下载http://ppa.launchpad.net....没有数字签名 N: 无法认证来自该源的数据
- CentOS:安装Docker
- DXF笔记:线型CENTER的格式及绘制思想
- JavaScript 王者归来
- NPM型的生态就是热带雨林型的生态——WebCell前端框架作者水歌访谈实录
- 如何把mkv文件转换成mp4?
- 旭日x3----ROS2-foxy版本 安装navigation2
- Morgan IT 笔试面试汇总
- 我的世界1.8正版服务器大全,我的世界1.8.1服务器地址大全 我的世界1.8.1服务器ip大全...