浅谈python量化 双均线策略(金叉死叉)


Posted in Python onJune 03, 2020

#小策略,策略逻辑是在金叉时候买进,死叉时候卖出,所谓金叉死叉是两条均线的交叉,当短期均线上穿长期均线为金叉,反之为死叉

浅谈python量化 双均线策略(金叉死叉)

#下面是策略代码及结构

# 导入函数库
from jqdata import *
# 初始化函数
def initialize(context):
  # 设定沪深300作为基准
 set_benchmark('000300.XSHG')
 # True为开启动态复权模式,使用真实价格交易
 set_option('use_real_price', True) 
 # 股票类交易手续费是:买入时佣金万分之三,卖出时佣金万分之三加千分之一印花税, 每笔交易佣金最低扣5块钱
 set_order_cost(OrderCost(open_tax=0, close_tax=0.001, \
        open_commission=0.0003, close_commission=0.0003,\
        close_today_commission=0, min_commission=5), type='stock')
 #华谊股票     
 g.security='300027.XSHE'
 #设置每天运行
 run_daily(handle)
 
def handle(context):
 security=g.security
 n5=5
 n20=20 
 # 获取股票的收盘价
 close_data = attribute_history(security, n20, '1d',"close",df=False)
 print(close_data)
 # 取得过去 ma_n1 天的平均价格
 ma_n5 = close_data['close'][-n5:].mean()
 # 取得过去 ma_n2 天的平均价格
 ma_n20 = close_data['close'][-n20:].mean()
 print(ma_n5,ma_n20)
 # 取得当前的现金
 cash = context.portfolio.available_cash
 
 # 如果当前有余额
 if ma_n5 > ma_n20:
  # 用所有 cash 买入股票,order_value是买卖价值
  order_value(security, cash)
  # 记录这次买入
  log.info("Buying %s" % security)

 # 如果n5日均线小于n20日均线,并且目前有头寸
 elif ma_n5 < ma_n20 and context.portfolio.positions[security].closeable_amount > 0:
  # 全部卖出,order_target是买卖数量
  order_target(security, 0)
  # 记录这次卖出
  log.info("Selling %s" % (security))

 # 绘制n5日均线价格
 record(ma_n5=ma_n5)
 # 绘制n20日均线价格
 record(ma_n20=ma_n20)

浅谈python量化 双均线策略(金叉死叉)

#整体结果在12-16年回测测试结果效益不错,阿尔法贝塔最大回撤也还行,难点是在策略和框架的使用和调用,这就是这次的双均线策略记录

补充知识:(多头、空头、金叉、死叉、卖出信号、买出信号)的python处理

1.指标概念

均值性指标:以平均数据作为参考的指标

随机性指标:以最高价最低价等为参考的指标

2.多头、空头、金叉、死叉、卖出信号、买出信号

多头:短期均线在长期均线上方

空头:短期均线在长期均线下方

金叉:短期均线向上穿越长期均线

死叉:短期均线向下穿越长期均线

买出信号:金叉 + 一定的条件

卖出出信号:死叉 + 一定的条件

3.Python实现:以KDJ为例

浅谈python量化 双均线策略(金叉死叉)

浅谈python量化 双均线策略(金叉死叉)

浅谈python量化 双均线策略(金叉死叉)

4.测试:筛选沪深股票中卖出信号的股票

浅谈python量化 双均线策略(金叉死叉)

以上这篇浅谈python量化 双均线策略(金叉死叉)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
《Python之禅》中对于Python编程过程中的一些建议
Apr 03 Python
Python的动态重新封装的教程
Apr 11 Python
python函数中return后的语句一定不会执行吗?
Jul 06 Python
PyQt5每天必学之关闭窗口
Apr 19 Python
python3爬取数据至mysql的方法
Jun 26 Python
Python基于sklearn库的分类算法简单应用示例
Jul 09 Python
Python3实现爬虫爬取赶集网列表功能【基于request和BeautifulSoup模块】
Dec 05 Python
对python3中, print横向输出的方法详解
Jan 28 Python
python配置文件写入过程详解
Oct 19 Python
如何在python中实现随机选择
Nov 02 Python
Pytorch之Variable的用法
Dec 31 Python
Python如何爬取b站热门视频并导入Excel
Aug 10 Python
Django用户登录与注册系统的实现示例
Jun 03 #Python
python 瀑布线指标编写实例
Jun 03 #Python
Django微信小程序后台开发教程的实现
Jun 03 #Python
python判断正负数方式
Jun 03 #Python
Python绘制动态水球图过程详解
Jun 03 #Python
解决numpy矩阵相减出现的负值自动转正值的问题
Jun 03 #Python
Django DRF路由与扩展功能的实现
Jun 03 #Python
You might like
php json相关函数用法示例
2017/03/28 PHP
Django 中 cookie的使用
2017/08/17 PHP
基于PHP的加载类操作以及其他两种魔术方法的应用实例
2017/08/28 PHP
javascript去除字符串中所有标点符号和提取纯文本的正则
2014/06/07 Javascript
js实现字符串转日期格式的方法
2015/05/20 Javascript
浅析node连接数据库(express+mysql)
2015/11/30 Javascript
谈谈AngularJs中的隐藏和显示
2015/12/09 Javascript
jQuery获取radio选中项的值实例
2016/06/18 Javascript
微信小程序实现人脸检测功能
2018/05/25 Javascript
jQuery创建折叠式菜单
2019/06/15 jQuery
Javascript类型判断相关例题及解析
2020/08/26 Javascript
用Python从零实现贝叶斯分类器的机器学习的教程
2015/03/31 Python
Python基础入门之seed()方法的使用
2015/05/15 Python
浅谈使用Python变量时要避免的3个错误
2017/10/30 Python
python+matplotlib绘制饼图散点图实例代码
2018/01/20 Python
python使用matplotlib绘制热图
2018/11/07 Python
Python Flask框架扩展操作示例
2019/05/03 Python
python自动化测试之如何解析excel文件
2019/06/27 Python
Python字符串处理的8招秘籍(小结)
2019/08/13 Python
详解numpy矩阵的创建与数据类型
2019/10/18 Python
python 实现一个反向单位矩阵示例
2019/11/29 Python
Python绘制二维曲线的日常应用详解
2019/12/04 Python
django rest framework使用django-filter用法
2020/07/15 Python
24个canvas基础知识小结
2014/12/17 HTML / CSS
联想瑞士官方网站:Lenovo Switzerland
2017/11/19 全球购物
宝拉珍选美国官网:Paula’s Choice美国
2018/01/07 全球购物
西海岸男士和男童服装:Johnnie-O
2018/03/15 全球购物
什么是事务?事务有哪些性质?
2012/03/11 面试题
sort命令的作用和用法
2013/08/25 面试题
音乐教师个人总结
2015/02/06 职场文书
幼师自荐信范文
2015/03/06 职场文书
讲座通知范文
2015/04/23 职场文书
2015年计生工作总结范文
2015/04/24 职场文书
Django程序的优化技巧
2021/04/29 Python
MySQL大小写敏感的注意事项
2021/05/24 MySQL
解决Windows Server2012 R2 无法安装 .NET Framework 3.5
2022/04/29 Servers