小白量化《穿云箭集群量化》(2)量化策略编写(1)

2024-01-10 01:59

本文主要是介绍小白量化《穿云箭集群量化》(2)量化策略编写(1),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

小白量化《穿云箭集群量化》(2)量化策略编写(1)
穿云箭集群量化平台本身就是Python的IDE,可以不用PyCharm、Spyder、Vs CODE等开发工具,可以学习和编写运行Python代码及程序。支持各种源码级别的开源量化平台,以及数据源。
穿云箭集群量化采用中文关键字和中文变量编写Python程序和策略。
编辑器操作快捷键
shift+Tab 增加4个空格
Ctrl+Tab 减少4个空格
alt+# 增加#号
alt+~ 减少#号
alt+1 减少4个空格
alt+2 增加4个空格
alt+3 增加#号
alt+4 减少#号
alt+5 开关弹出提示窗口
alt+6 查找/替换
alt+7 单色
alt+8 彩色
alt+9 中
alt+0 英
alt+ - 字缩小
alt+ + 字放大
穿云箭集群量化

支持各种金融模块,例如TA-LIB金融库。同时支持大智慧、通达信、同花顺、东方财富等股票指标公式和文化财经麦语言指标公式系统,并支持多因子指标公式系统。多因子指标公式系统能同时对数千只股票瞬间同步计算,并能获取指标值排序功能。支持Alpha101等自编因子公式,任意创造新的因子公式。
在这里插入图片描述
穿云煎量化策略开始,必须导入下列模块,其他模块根据用户需要增加。

策略名='回测_MACD自动交易'
import pandas as pd
import time
import HP_tdx as htdx   #小白量化行情模块
import HP_global as hg   #建立高级全局数据域hg
from HP_formula import *  #小白量化公式模块
from HP_factor import *  #小白量化因子公式及Alpha公式模块
import HP_formula as gs  #小白量化公式模块
import HP_quant as hpq   #穿云箭量化模块
from HP_quant import *  #穿云箭量化模块

量化策略单线程运行流程,见下图。
在这里插入图片描述
量化策略多线程运行流程,见下图。
在这里插入图片描述
穿云箭量化平台是本地化平台,平台以小白量化一代和小白量化二代为金融模块,加自研很多扩展模块等,由自研中文Python实时控制研究学习平台的中文Python IDE构成。
我们不提供数据,但是支持用户爬虫采集数据,以及通过第三方提供数据。软件平台服务器只用于正式软件认证,不会获取用户的任何数据。
软件委托,用户可以采用券商提供交易API,或模拟键盘鼠标操作方式,实现自动交易。
软件可以借用小白量化二代提供的实时行情库获取行情,以及EASYTRADER进行模拟和实盘交易。
量化平台的构成是以Python中文IDE和小白量化金融模块,通过Tkiner GUI设计的软件系统。
一般用户账户信息在context中,data是软件利用小白量化实时行情准备好的实时数据,
用户可直接使用其中的行情数据。
如果用户不使用行情数据,可以关闭行情采集功能。需要用户自主获取行数据,任何方式都允许获取数据,例如爬虫网站,外挂其他行情软件采集行情。此时,用户需要增加data数据维护和更新程序,确保策略在运行时,有最新实时行情数据可用。
initialize函数是用户在策略运行初始化期间的函数,策略根据其中用户设置进行策
略初始化。例如设置股票池,设置佣金,设置用户账户,设置行情源运行模式,用户不
设置时,会采用默认方式初始化策略,软件设置永远以用户策略设置优先。
例如:用户不设置股票池,会使用软件窗口中导入的股票池。
在initialize函数中,可以设置行情服务器地址,委托功能初始化,函数最后部分可
以进行选股生成股票池功能。

def initialize(context):#context.istest=True    context.zh=''      #账户context.zhlx='模拟'   #账户类型,2个汉字context.firstcash=200000.00  #初始现金context.cash=context.firstcash   #现金context.portfolio.available_cash=context.firstcash  #可用现金set_maxdays(365) #设置行情K线数量,默认20.       # 设置我们要操作的股票池g.stocks=hpq.get_universe()  #获取软件穿口上股票池hpq.log.info('----策略环境信息-----')print('量化模块版本: ',hpq.ver)print('量化模块最后修改日期: ',hpq.mdate)print('svrip: ',hpq.svrip)print('svrport: ',hpq.svrport)print('\n----开始运行策略-----\n')print('策略名:'+策略名)qhcsj2=time.strftime('%Y%m%d %H:%M:%S',time.localtime(time.time()))print('开始运行时间:'+qhcsj2)# 设定指数为基准set_benchmark((1,'000001'))# 开启动态复权模式(真实价格)set_option('use_real_price', True)set_times(25)  #设置多少圈读一次持仓#pop_universe([(1,'600861'),(0,'000517')])  #需要删除的股票代码池 hg.seemsg=True  #是否允许输出内部信息g.zzs=-0.05  #止损幅度hg.hqsl=2  #行情源数量

上面是策略初始化函数介绍。
下篇介绍运行策略函数,技术分析主要采用仿股票公式写算法,这样简洁,与股票软件计算的数值一致 并且k件计算买卖点。
好了,欢迎继续关注我的博客。

超越自己是我的每一步!我的进步就是你的进步!

这篇关于小白量化《穿云箭集群量化》(2)量化策略编写(1)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/589172

相关文章

服务器集群同步时间手记

1.时间服务器配置(必须root用户) (1)检查ntp是否安装 [root@node1 桌面]# rpm -qa|grep ntpntp-4.2.6p5-10.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarchntpdate-4.2.6p5-10.el6.centos.x86_64 (2)修改ntp配置文件 [r

HDFS—集群扩容及缩容

白名单:表示在白名单的主机IP地址可以,用来存储数据。 配置白名单步骤如下: 1)在NameNode节点的/opt/module/hadoop-3.1.4/etc/hadoop目录下分别创建whitelist 和blacklist文件 (1)创建白名单 [lytfly@hadoop102 hadoop]$ vim whitelist 在whitelist中添加如下主机名称,假如集群正常工作的节

Hadoop集群数据均衡之磁盘间数据均衡

生产环境,由于硬盘空间不足,往往需要增加一块硬盘。刚加载的硬盘没有数据时,可以执行磁盘数据均衡命令。(Hadoop3.x新特性) plan后面带的节点的名字必须是已经存在的,并且是需要均衡的节点。 如果节点不存在,会报如下错误: 如果节点只有一个硬盘的话,不会创建均衡计划: (1)生成均衡计划 hdfs diskbalancer -plan hadoop102 (2)执行均衡计划 hd

在JS中的设计模式的单例模式、策略模式、代理模式、原型模式浅讲

1. 单例模式(Singleton Pattern) 确保一个类只有一个实例,并提供一个全局访问点。 示例代码: class Singleton {constructor() {if (Singleton.instance) {return Singleton.instance;}Singleton.instance = this;this.data = [];}addData(value)

搭建Kafka+zookeeper集群调度

前言 硬件环境 172.18.0.5        kafkazk1        Kafka+zookeeper                Kafka Broker集群 172.18.0.6        kafkazk2        Kafka+zookeeper                Kafka Broker集群 172.18.0.7        kafkazk3

如何编写Linux PCIe设备驱动器 之二

如何编写Linux PCIe设备驱动器 之二 功能(capability)集功能(capability)APIs通过pci_bus_read_config完成功能存取功能APIs参数pos常量值PCI功能结构 PCI功能IDMSI功能电源功率管理功能 功能(capability)集 功能(capability)APIs int pcie_capability_read_wo

一种改进的red5集群方案的应用、基于Red5服务器集群负载均衡调度算法研究

转自: 一种改进的red5集群方案的应用: http://wenku.baidu.com/link?url=jYQ1wNwHVBqJ-5XCYq0PRligp6Y5q6BYXyISUsF56My8DP8dc9CZ4pZvpPz1abxJn8fojMrL0IyfmMHStpvkotqC1RWlRMGnzVL1X4IPOa_  基于Red5服务器集群负载均衡调度算法研究 http://ww

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群 华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错过这个机会。赶紧去看看吧! 什么是华为云Flexus X实例 华为云Flexus X实例云服务是新一代开箱即用、体

kubernetes集群部署Zabbix监控平台

一、zabbix介绍 1.zabbix简介 Zabbix是一个基于Web界面的分布式系统监控的企业级开源软件。可以监视各种系统与设备的参数,保障服务器及设备的安全运营。 2.zabbix特点 (1)安装与配置简单。 (2)可视化web管理界面。 (3)免费开源。 (4)支持中文。 (5)自动发现。 (6)分布式监控。 (7)实时绘图。 3.zabbix的主要功能

laravel框架实现redis分布式集群原理

在app/config/database.php中配置如下: 'redis' => array('cluster' => true,'default' => array('host' => '172.21.107.247','port' => 6379,),'redis1' => array('host' => '172.21.107.248','port' => 6379,),) 其中cl