如何用Python写一个双均线策略

同花顺Supermind量化交易 Python基础编程--函数 在Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。我们以自定义一个求绝对值的abs_my函数为例: 阅读详情

766cd6275afe626d3db860017e9d7b72.png

(永久免费,扫码加入)

本篇是量化系列的内容,已经购买小册的不要看了。

我的小册:(小白零基础用Python量化股票分析小册) ,原价199,限时特价39,满100人涨10元。

双均线策略应该是所有的股票软件,股票网站都必备的一个策略。无论是在同花顺,还是券商软件都有这个策略。我们简单介绍一下这个策略的来龙去脉,以及如何写这个策略的信号。

1.什么是双均线策略

两条移动平均线(Moving Average, MA):一条短期均线和一条长期均线。这两条线通常是基于不同时间段的股票收盘价计算出来的平均值。

短期均线:这通常是近期(如10天或20天)的移动平均线,反映了股票短期价格走势。

长期均线:这是基于较长时间段(如60天或100天)的移动平均线,展示了股票的长期趋势。

策略的核心原则:

金叉:当短期均线从下向上穿过长期均线时,这通常被视为买入信号。这表明短期趋势正在转向上升,可能预示着价格上涨。

死叉:当短期均线从上向下穿过长期均线时,这通常被认为是卖出信号。这意味着短期趋势开始下降,可能预示着价格下跌。

股票上行就是金叉买,死叉卖,因为不涉及做空,对于A股只有买入和平仓 比较简单。其他的市场是有做空机制,会更复杂一些。

2. 如何写双均线策略的信号

解释了规则之后,我们来实际用Python代码写一下这个策略,我们还是用创业板的头牌特锐德2023 从1月到12月的数据来演示:

18bceed659b72d7a49bc532f06aae2b8.png

我们来导入数据,写一下代码:

a4a26fc8a7b0bfe43d7408dee33df260.png

计算5日和10日均线的值

039b085bbc94214b5ac5bd0d8494281b.png

直接用rolling函数计算均线值,其实也可以用talib计算(这个我们会放在进阶教程里面讲),接着我们来写一下信号:

18f7bac42766b25e94c2fd0ebdb0bfaf.png

首先我们把策略信号Signal 初始化为空值

做多需要有2个条件:

1a67827c8ba62411afca0e5504bed00e.png

比如上图,红色表示5日均线快线,蓝色表示10日均线 慢线

当天的5日快线大于10日慢线的时候(表示股价开始上行),同时我们要确认前一天的K线 5日快线低于10日慢线的,满足这2个条件,我们才能认为是要开仓的信号,然后我们在隔天的开盘下单买入,或者晚上用前一天的收盘价买入。

在量化领域 习惯用long 表示多头,即买入。

平仓也需要2个条件:

1c9cfd4db0e7c0f23b677e494c51b5ce.png

上图,红色表示5日均线快线,蓝色表示10日均线 慢线

当天的5日快线低于10日慢线的时候(表示股价开始下行),同时我们要确认前一天的K线 5日快线大于在10慢线的,满足这2个条件,我们才能认为是要平仓的信号,然后我们在隔天的开盘下单平仓,或者晚上用前一天的收盘价平。

在量化领域 习惯用short 表示空头,即卖出,运算上面的代码,我们打印出来看一下信号:

fac3787c06f6fa3c7aa5672e358ed586.png

1). 特锐德  2023-11-30  19.17  18.990000  19.015000     NaN221  特锐德  2023-12-01  18.93  19.034000  18.990000     1.0

解读一下,12月1号 ma-fast 19.034 大于 ma-slow 18.99 ,而前一天 11月30号 ma-fast 18.99 是小于ma-slow 19.01 ,所以当天收盘之后,我们的策略发出了1的信号,就是做多;

2). 特锐德  2023-12-05  18.63  18.944000  18.903000     NaN224  特锐德  2023-12-06  18.73  18.860000  18.903000     0.0

解读一下,12月6号ma-fast 18.73 小于 ma-slow 18.90,而前一天 12月5号 ma-fast 18.63 大于 ma-slow 18.94,所以当天收盘之后,我们的策略发出信号0,即平仓

3.对信号进行处理

大家有没有发现有很多信号,都是NaN 就是空值,非常不利于我们观察,我们看一下前20行的内容:

740a0574fe1335fb2d1129968d05237b.png

这个信号从1月3号到1月9号都是空值NaN,从1月9号之后应该是开多了,但是也是空值,到了2-22应该平仓了,平仓之后的日子应该是空仓,但是也是空值NaN。所以这个信号是需要处理的。

f65176dbfbb751741d596195ebe6f7a3.png

我们打印看一下结果:

0c283f4da9324fab85f4f239b5b8937a.png

我们把Signal这一列做了空值向前填充,fillna(method='ffill'),就是比如1月10号之后,开仓了,那么之后每天应该都是1,除非遇到新的信号出现,否则应该跟前面信号保持一致。然后最开始几天1月3号到9号直接用0填充。

这个就是基本的双均线策略,双均线算是所有策略的一个基本入门款,非常适合完全不懂量化的同学来研究,我们后面很多复杂的内容,也是基于这个策略展开的,大家务必要好好掌握。我们下一篇见!


最后推荐一下我的小册:

从小白的角度浅浅的介绍一下从零基础python入门,pandas库的使用,股票数据的基本分析,可视化股票分析,以及如何写一个简单的量化策略,如何去回测你的策略,计算仓位和资金曲线,如何优化你的策略。同时还涉及股票数据的爬虫,基金的爬虫等内容。同时也是对自己量化的反思和感悟,更好的鞭策自己提升功力!!!

c905019a4a618ff1afbba6b67140670f.png

欢迎订阅我们的小册 👉:(小白零基础用Python量化股票分析小册),原价199,现在早鸟价39,满100人涨10元。订阅之后觉得不好,48小时内无理由退款,放心食用!

ed2190ffce6c9527162db42443cc1549.png

(扫码订阅,永久买断)

推荐阅读:
入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径

干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |碟中谍这么火,我用机器学习做个迷你推荐系统电影

趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!

AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影

小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!|  再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!|

python实现MACD均线择时策略 本文采用了聚宽平台接口进行量化策略设置: 1 确定策略内容 在之前的教程中,我们学习了如何通过财务指标等对股票进行筛选等操作。今天我们将以MACD为例,探究如何利用技术指标进行策略的构建与实现。 > MACD的组成 MACD(Moving Average Convergence and Divergence)即指数平滑移动平均线,由Geral Appel 于1970年提出,属于大势趋势类指标,它由***长期慢速均线DEA,短期快线的DIF,红色能量柱(多头),绿色能量柱(空头)、0轴(多空分界线)** 阅读详情

相关推荐

双均线策略(期货)——Python量化

均线,一个进行形态分析时总也绕不过去的指标。均线最早由美国投资专家Joseph E.Granville(格兰威尔)于20世纪中期提出,现在仍然广泛为人们使用,成为判断买卖信号的一大重要指标。从统计角度来说,均线就是历史价格的平均值,可以代表过去N日股价的平均走势。1962年7月,Joseph E.Granville在他的书中提出了著名的Granville八大买卖法则。只利用股价和均线即可进行择时,方法简单有效,一经提出,迅速受到市场追捧。尤其是其中的金叉和死叉信号,更是沿用至今。

m0_56134806的博客 3861

Python量化交易02——双均线策略(移动平均线)

Python构建双均线策略量化交易回测

weixin_46277779的博客 7354

Python双均线策略回测(2021-10-12)

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 Python双均线策略回测 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页

EricWangP的博客 2万+

双均线策略分析(python)---以平安银行股票为例

双均线策略分析(python)---以平安银行股票为例

qq_40200628的博客 643

用Python实现双均线交易策略的实例演示

用Python实现双均线交易策略的实例演示。双均线交易策略是一种广泛应用于股票、期货、外汇、期权、数字货币等交易领域的经典趋势策略。该策略的核心在于使用两条移动平均线(均线)——一条短期均线和一条长期均线来分析市场趋势并生成交易信号。

eeee~~的博客 2648

python数据分析实战-均线选股策略实践

在前文中已经讲述了Java爬虫-股票k线分析实践,在本文中将继续以此为基础分享另一种选股策略-均线选股策略。均线策略是一种慢周期的选股策略,可以剔除那些短期被操作的股票标的。可以选择长期趋势向上的股票择优投资,从概率上提高投资的成功率。在本文中,介绍了如何使用python语言建立均线策略选股,通过MA20的月线趋势结合交易量和交易均价来选择股票,通过以上的方式可以从众多的股票中获取趋势走好的股票,从这种股票池中选择代码,可以获取更高的成功率。

Saki_Python的博客 1509

如何用Python写一个双均线策略!

(永久免费,扫码加入)本篇是量化系列的内容,已经购买小册的不要看了。我的小册:(小白零基础用Python量化股票分析小册) ,原价299,限时特价2杯咖啡,满100人涨10元。双均线策略应该是所有的股票软件,股票网站都必备的一个策略。无论是在同花顺,还是券商软件都有这个策略。我们简单介绍一下这个策略的来龙去脉,以及如何写这个策略的信号。1.什么是双均线策略两条移动平均线(Moving Averag...

cainiao_python的博客 1200

PTrade量化交易API实战:从零搭建一个双均线策略(附完整代码)

本文以PTrade量化交易平台API为核心,手把手教你从零搭建一个经典的双均线交易策略。内容涵盖策略构思、环境准备、代码实现(附完整代码)、回测优化及实盘注意事项,帮助Python开发者快速入门量化交易,实现交易想法的自动化。

u9v0w的博客 719

用Python写一个简单的双均线策略分析

用Python写一个简单的双均线策略 双均线策略 先罗列一下我知道的量化策略: 双均线:一句话来讲就是金叉买死叉卖。 布林带:突破压力线(上轨)清仓,跌破支撑线(下轨)持仓。 PEG:根据PE/G调整仓位。 均值回归:跌下去的要涨,涨上来的要跌(废话。 羊驼:随机选股,定期调仓(意外地能赚? 由于每种策略的持仓清仓逻辑不一样,反映在代码中的表现也就各不相同,以后如果有时间,会把上述量化策略全部实现一遍,今天先来整个最经典的入门级别的活。 首先,啥叫双均线? 从名字上来看,就是两条均线的意思。没错,双均线

weixin_55854987的博客 3167

Python量化交易:使用双均线策略实现稳定盈利

综上所述,通过使用Python实现双均线策略,我们能够在中国平安股票市场中实现稳定的盈利。同时,值得注意的是,该策略仅是量化交易中的一种基础策略,投资者在实际操作前仍需要进行更全面的市场分析和风险评估。双均线策略是一种基础的趋势跟踪策略,在量化交易中也是最为常见的交易策略之一。通过与市场趋势相符合的买卖操作,该策略可以带来较为稳定的收益。Python语言在量化交易领域中应用广泛,特别是在建立各种交易策略方面,拥有丰富的库和工具箱。最后,我们可以将总资产的变化情况绘制成曲线图,以衡量该策略的盈利效果。

学习使你进步。 724

Python量化交易:使用双均线策略进行股票交易

通过上述程序,我们可以模拟出根据双均线策略进行交易的情况,并且及时输出买入和卖出的信息以及收益情况。当然,在实际运用过程中,我们需要考虑更多的因素,比如交易成本、风险控制等,才能够进行更加有效的股票交易。其中,双均线策略是一种非常基础的技术分析方法,该策略能够有效地识别趋势,并且能够在趋势发生变化时及时进行调整,因此被广泛地应用于股票交易中。下面,我们将使用Python语言编写一个简单的双均线策略程序,帮助大家更好地理解和应用该策略。接下来,我们可以计算出5日均线和10日均线,并且绘制出它们的图像。

2301_78484069的博客 368

双均线策略的Python实现

来源:袖手财经 作者:袖手 本文选取股票“002617.SZ”(露笑科技)2019.01.01-2020.04.03区间的交易数据,对双均线策略进行了Python实现,并对回测结果予以评述。 (一)双均线策略规则: 短均线上穿长均线(金叉),买进; 短均线下穿长均线(死叉),卖出; 其余情况,无操作。 (二)Python实现过程: #导入相关模块 i...

小壁虎的春天 6299

Python量化交易实战:双均线策略详解

双均线策略基于趋势跟踪理论,该理论认为价格会沿着趋势持续一段时间,直到某种力量推动它改变方向。短期均线(如5日均线)贴近当前价格,反映近期的市场表现;而长期均线(如50日均线)则平滑了短期波动,反映较长时间内的平均成本。当短期均线穿越长期均线,我们可以认为市场可能出现了新的趋势。金叉是指短期均线从下方穿越长期均线,通常被视作买入信号;而死叉是指短期均线从上方穿越长期均线,通常被视作卖出信号。金叉和死叉是双均线策略中识别交易机会的关键指标。

weixin_35972981的博客 1657

Python量化交易策略--双均线策略及代码

python量化交易策略--双均线策略

詹sir的博客 1万+

stm32f407VET6 系统学习 day01 GPIO 配置

stm32f407VET6 系统学习 day01 GPIO 配置 LED 蜂鸣器 按键的不讲了,之前讲过了

she666666的博客 8908

SAP数据导入工具(LSMW) 超级详细教程(批量导入内部订单)

用户提了个需求,让我批量导入内部订单几百个内部订单。我本打算用写段ABAP 代码来调用 BAPI (BAPI_INTERNALORDER_CREATE)就可以了。但想到我很久没有用过LSMW 了,都快要忘记了。于是我采用LSMW的方式,完成了任务。并把过程记录下来,形成教程方便我以后回头查看,分享出来也希望对大家有帮助。

IT小职员 2万+

基于Python的策略开发与回测:双均线策略(附可视化代码)

基于Python的策略开发与回测:双均线策略(附可视化代码)

🚀免费专栏:✅穿越之灵脉重构师:重启天元代码系列✅Python筑基系列✅创新语言开发系列✅代码故事茶馆✅AI筑梦工作站 2372

llama.cpp量化模型在MTT显卡上的性能对比:S80/S3000/S4000实测数据

本文基于摩尔线程MTT S80、S3000和S4000三款显卡,对llama.cpp量化模型进行了深度性能实测。报告详细对比了不同量化精度(如Q4_K_M、Q6_K)在Llama 3.2 1B和Qwen 2.5 7B模型上的推理速度、显存占用、功耗及温度表现,为开发者根据硬件选择最优模型配置与参数调优提供了关键数据参考和实战指南。

week9的博客 351

python实现双均线策略

本文采用了聚宽平台接口进行量化策略设置: 一、效果图 双均线策略:双均线策略,当五日均线位于十日均线上方则买入,反之卖出。 二、证券知识: 策略收益(Total Returns) 最容易理解的一个概念,策略收益也就是策略开始到结束,总资产的变化率。 ----本文 选取的平安银行 这只股票,通过双均线策略来计算策略收益。 基准收益(Benchmark Returns) 如果一个策略一年赚了50%,而这一年来上证指数上涨了100%,所以要评判一个策略的好坏,不过是要看它的收益率,还需要一个基准来衡量它的优劣性

hiekay的博客 3739

AvFrame和AvPacket

在FFmpeg中,未压缩的图像和压缩的视频码流分别使用AVFrame结构和AVPacket结构保存;针对视频编码器,其流程为从数据源获取图像格式的输入数据,保存为AVFrame对象并传入编码器,从编码器输出AVPacket结构。

Lce的专栏 3238

10、高阶ΣΔ调制器设计与优化

本文深入探讨了高阶ΣΔ调制器的设计与优化技术,重点介绍了NTF零点优化方法,通过分散单位圆上的零点分布提升信噪失真比(SQNR)。文章分析了量化噪声耦合技术如何有效提高噪声整形阶数,并对比了CIFB、CIFF、CRFB和CRFF等不同架构的性能特点。同时,详细阐述了基于稳定性与性能权衡的设计流程,结合Schreier的Delta-Sigma Toolbox实现NTF综合与仿真验证。内容涵盖从理论推导到实际设计步骤,为高阶ΣΔ调制器的稳定性提升与性能优化提供了系统性指导。

tgb345678的博客 134

量化-均线回归策略

这里,我们观察价格是否偏离其移动平均线一个标准差以上,如果价格低于这个下界,我们买入;如果价格高于上界,我们卖出。均线回归策略基于价格与移动平均线的偏离情况。如果价格远离移动平均线,预计它会回归。量化交易策略通常基于数学模型和算法来决定何时买入或卖出资产。

少说,多做。 9025

通俗易懂的Harris 角点检测

点击上方“3D视觉工坊”,选择“星标”干货第一时间送达Harris 角点检测 认为特征点具有局部差异性。如何描述“特征点具有局部差异性”:以每一个点为中心,取一个窗口,窗口大小为5*5...

3D视觉工坊 1474
上一篇: 卧槽!!70W薪资!直接封神!!
下一篇: 这是我做私活的新路子,直接封神!
菜鸟学Python
博客等级 码龄9年 8086粉丝 571原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值