小白量化《穿云箭集群量化》(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

相关文章

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

redis过期key的删除策略介绍

《redis过期key的删除策略介绍》:本文主要介绍redis过期key的删除策略,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录第一种策略:被动删除第二种策略:定期删除第三种策略:强制删除关于big key的清理UNLINK命令FLUSHALL/FLUSHDB命

SpringRetry重试机制之@Retryable注解与重试策略详解

《SpringRetry重试机制之@Retryable注解与重试策略详解》本文将详细介绍SpringRetry的重试机制,特别是@Retryable注解的使用及各种重试策略的配置,帮助开发者构建更加健... 目录引言一、SpringRetry基础知识二、启用SpringRetry三、@Retryable注解

MySQL 分区与分库分表策略应用小结

《MySQL分区与分库分表策略应用小结》在大数据量、复杂查询和高并发的应用场景下,单一数据库往往难以满足性能和扩展性的要求,本文将详细介绍这两种策略的基本概念、实现方法及优缺点,并通过实际案例展示如... 目录mysql 分区与分库分表策略1. 数据库水平拆分的背景2. MySQL 分区策略2.1 分区概念

Redis分片集群的实现

《Redis分片集群的实现》Redis分片集群是一种将Redis数据库分散到多个节点上的方式,以提供更高的性能和可伸缩性,本文主要介绍了Redis分片集群的实现,具有一定的参考价值,感兴趣的可以了解一... 目录1. Redis Cluster的核心概念哈希槽(Hash Slots)主从复制与故障转移2.

SpringBoot如何通过Map实现策略模式

《SpringBoot如何通过Map实现策略模式》策略模式是一种行为设计模式,它允许在运行时选择算法的行为,在Spring框架中,我们可以利用@Resource注解和Map集合来优雅地实现策略模式,这... 目录前言底层机制解析Spring的集合类型自动装配@Resource注解的行为实现原理使用直接使用M

Redis 内存淘汰策略深度解析(最新推荐)

《Redis内存淘汰策略深度解析(最新推荐)》本文详细探讨了Redis的内存淘汰策略、实现原理、适用场景及最佳实践,介绍了八种内存淘汰策略,包括noeviction、LRU、LFU、TTL、Rand... 目录一、 内存淘汰策略概述二、内存淘汰策略详解2.1 ​noeviction(不淘汰)​2.2 ​LR

基于.NET编写工具类解决JSON乱码问题

《基于.NET编写工具类解决JSON乱码问题》在开发过程中,我们经常会遇到JSON数据处理的问题,尤其是在数据传输和解析过程中,很容易出现编码错误导致的乱码问题,下面我们就来编写一个.NET工具类来解... 目录问题背景核心原理工具类实现使用示例总结在开发过程中,我们经常会遇到jsON数据处理的问题,尤其是

Deepseek使用指南与提问优化策略方式

《Deepseek使用指南与提问优化策略方式》本文介绍了DeepSeek语义搜索引擎的核心功能、集成方法及优化提问策略,通过自然语言处理和机器学习提供精准搜索结果,适用于智能客服、知识库检索等领域... 目录序言1. DeepSeek 概述2. DeepSeek 的集成与使用2.1 DeepSeek API

Redis的数据过期策略和数据淘汰策略

《Redis的数据过期策略和数据淘汰策略》本文主要介绍了Redis的数据过期策略和数据淘汰策略,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录一、数据过期策略1、惰性删除2、定期删除二、数据淘汰策略1、数据淘汰策略概念2、8种数据淘汰策略