浅谈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实现的使用telnet登陆聊天室实例
Jun 17 Python
Python中scatter函数参数及用法详解
Nov 08 Python
Python实现矩阵转置的方法分析
Nov 24 Python
python随机取list中的元素方法
Apr 08 Python
django2用iframe标签完成网页内嵌播放b站视频功能
Jun 20 Python
对numpy中的数组条件筛选功能详解
Jul 02 Python
python用pandas数据加载、存储与文件格式的实例
Dec 07 Python
Python函数中参数是传递值还是引用详解
Jul 02 Python
Python计算两个矩形重合面积代码实例
Sep 16 Python
Python StringIO如何在内存中读写str
Jan 07 Python
Python调用Windows命令打印文件
Feb 07 Python
Python多线程 Queue 模块常见用法
Jul 04 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
超神学院:天使彦公认最美的三个视角,网友:我的天使快下凡吧!
2020/03/02 国漫
丧钟首部独立剧集《丧钟:骑士与龙》北美正式开播,场面血腥
2020/04/09 欧美动漫
输入值/表单提交参数过滤有效防止sql注入的方法
2013/12/25 PHP
php过滤所有恶意字符(批量过滤post,get敏感数据)
2014/03/18 PHP
php实现的太平洋时间和北京时间互转的自定义函数分享
2014/08/19 PHP
php给图片加文字水印
2015/07/31 PHP
两种php去除二维数组的重复项方法
2015/11/04 PHP
WordPress中查询文章的循环Loop结构及用法分析
2015/12/17 PHP
详解thinkphp中的volist标签
2018/01/15 PHP
TextArea 控件的最大长度问题(js json)
2009/12/16 Javascript
解决遍历时Array.indexOf产生的性能问题
2012/07/03 Javascript
javascript动画浅析
2012/08/30 Javascript
排序算法的javascript实现与讲解(99js手记)
2014/09/28 Javascript
jquery实现鼠标滑过显示二级下拉菜单效果
2015/08/24 Javascript
jQuery simpleModal插件的使用介绍
2016/08/30 Javascript
使用js获取伪元素的content实例
2017/10/24 Javascript
JS/HTML5游戏常用算法之碰撞检测 像素检测算法实例详解
2018/12/12 Javascript
详解微信小程序开发(项目从零开始)
2019/06/06 Javascript
[03:42]2014DOTA2西雅图国际邀请赛 Navi战队巡礼
2014/07/07 DOTA
Python3.X 线程中信号量的使用方法示例
2017/07/24 Python
Tensorflow分类器项目自定义数据读入的实现
2019/02/05 Python
python实现批量注册网站用户的示例
2019/02/22 Python
python文档字符串(函数使用说明)使用详解
2019/07/30 Python
印尼在线精品店:Berrybenka.com
2016/10/22 全球购物
Speedo速比涛中国官方网站:全球领先泳装运动品牌
2018/04/24 全球购物
英国最大的宠物商店:Pets at Home
2019/04/17 全球购物
山海经纬软件测试笔试题和面试题
2013/04/02 面试题
高三英语教学反思
2014/01/13 职场文书
初中生操行评语大全
2014/04/24 职场文书
社保委托书怎么写
2014/08/02 职场文书
校外活动方案
2014/08/28 职场文书
务虚会发言材料
2014/12/25 职场文书
小学班长竞选稿
2015/11/20 职场文书
爱国之歌(8首)
2019/09/29 职场文书
Oracle设置DB、监听和EM开机启动的方法
2021/04/25 Oracle
React Native项目框架搭建的一些心得体会
2021/05/28 Javascript