Advertisement

Python量化交易学习笔记(18)——关于放量突破布林线中轨买入策略的探讨。

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
本文旨在深入研究一种全新的策略回测程序,其主要目标是评估多种技术指标在backtrader平台上的可行性,从而为开发更复杂的交易策略奠定坚实的基础。具体而言,本文将实现两种策略:首先,当股票出现放量突破布林线中轨的现象时,系统将自动触发买入操作;其次,当股票的收盘价跌破短期均线水平时,系统将执行卖出指令。 值得注意的是,买入条件的严格定义如下:当日股票的开盘价必须低于布林线中轨,而收盘价则需要高于布林线中轨,同时还需要满足当日成交量达到过去10个交易日内的最高水平。 至于卖出条件,则采用5日均线作为短期均线的标准。 为了进行有效的回测分析,我们设定了初始资金为100000元人民币,每笔交易的单位设置为1000股,佣金率为千分之一。 回测的时间范围从2018年1月1日持续至2020年3月20日。 策略的核心逻辑代码集中体现在策略类的init方法中:`def __init__(self):`

全部评论 (0)

还没有任何评论哟~
客服
客服
  • Python18)——基线
    优质
    本篇笔记介绍了利用Python进行量化交易的一个实例,具体阐述了当股票成交量放大并突破布林带中轨时触发买入信号的策略。通过代码实现和回测分析,帮助读者理解和应用该技术指标于实际投资决策中。 本段落将探讨一种新的策略回测程序,在backtrader平台上试验不同的技术指标的应用,并为后续复杂策略的实现打下基础。文中所述策略的具体操作是:当股票放量突破布林线中轨时进行买入,而当收盘价低于短期均线(这里指5日线)时则卖出。在具体的交易条件上,“放量突破”指的是当日开盘价位于布林带中轨之下,但到了收盘价格却高于该位置,并且当天的成交量是近10天以来最大的一次。回测将使用初始资金为10万元人民币,每次操作买入或卖出的数量设定为1,000股,交易佣金率为千分之一。整个测试的时间跨度从2018年1月1日到2020年3月20日。 策略的核心代码位于init方法中: ```python def __init__(self): ``` 这一段描述了如何在backtrader平台上实现特定的交易逻辑,以验证技术指标的有效性并优化投资决策。
  • Python(16)——筛选股票
    优质
    本篇笔记详细记录了使用Python进行量化交易的过程,重点介绍了如何通过编程手段筛选出具有投资价值的股票策略,旨在帮助读者理解和实践基于数据驱动的投资决策方法。 完成指标计算后,我们可以编写程序遍历所有股票数据以筛选出符合条件的股票。在之前的笔记(14)中,我们观察到几组回测实验显示,选取5日线与60日线形成金叉买入、死叉卖出策略,在这些测试数据中能获得最高的资产收益。本段落将尝试选出前一天出现5日线金叉60日线的股票。实验的数据截止至2020年3月20日,即我们的策略需要选取截至该日期前两天K线图上形成5日均线与60日均线上穿交叉形态的股票。 相关代码如下所示: ```python # 判断金叉 def golden_crossover(df, fast, slow): # K线数量不足的情况(次新股) ``` 这里的函数`golden_crossover()`用于判断是否存在金叉,参数包括数据框df和两条均线的速度值fast与slow。当数据中的K线数量不足以形成有效的技术分析时,此部分代码会处理该情况。
  • Python(19)——持续下跌时与止盈止损卖出
    优质
    本篇学习笔记详细探讨了在股市持续下跌趋势中采取的买入策略,并介绍了在此行情下如何设定合理的止盈和止损点,以保护投资资本。 本段落记录了对好友提出的连续下跌买入并设定止盈止损卖出策略的回测与实现分析过程。该策略的具体规则为:当股票收盘价连续四天低于前一天的收盘价时,触发买入信号;而设置盈利目标率为10%,亏损限制为5%。初始资金设为10万元人民币,并且每次操作买卖1000股,交易佣金按照千分之一收取。回测的时间范围是从2018年1月1日到2020年3月20日。 策略的核心代码位于类的next方法中: ```python def next(self): # 此处省略具体实现细节。 ``` 以上描述完整地保留了原文意图,仅去除了不必要的链接和联系方式。
  • Python(17)——同步回测多只股票
    优质
    本篇笔记详细记录了如何使用Python进行量化交易时,实现对多只股票的同步回测策略。通过代码示例和理论讲解相结合的方式,帮助读者掌握高效管理与分析多支股票数据的方法和技术要点。 假设我们目前使用策略A,并在股票a的历史数据上进行了回测,结果表明该策略能够获得稳定收益。然而,在等待股票a达到买入条件的过程中需要耗费大量时间,这实际上是一种对时间成本的浪费。尽管策略A适用于股票a并能带来良好的回报,但它可能无法保证同样效果应用于其他股票如b、c等。 为解决这一问题,我们可以考虑这样的改进:在不同股票(包括但不限于a、b、c)的历史数据上分别进行策略回测,从而找到一个能够在多只股票上实现稳定收益的新策略B。这样可以有效避免等待特定股票买点出现时的时间浪费现象。 然而即使如此,在等待某一只具体目标股如a的买入信号的同时,其他潜在投资机会(例如b、c)可能仍未达到最优入场时机。因此仅通过逐一单独测试每只个股来验证新策略的有效性显然是不够全面和科学的方法。 基于上述考虑,在评估一个交易策略时,我们应该采用更为广泛且综合的方式来检验其适用性和有效性——即需同时在多只甚至所有股票上进行回测分析,以确保最终选出的方案能够在更广泛的市场环境中持续稳定地产生良好收益。
  • Python:简线
    优质
    《Python量化交易:简易均线策略》是一本介绍如何运用Python编程语言在金融市场上实施基于移动平均线技术分析策略的实用教程。本书适合对量化投资感兴趣的初学者阅读和实践,旨在帮助读者掌握编写自动化交易系统的技能,并通过实例演示了如何利用简单的均线交叉来识别买入卖出信号。 本代码是一个用Python编写的简单均线系统,适合想进行量化但不知从何入手的初学者使用。代码非常简洁,总共只有30来行。编写此代码的目的在于给从未做过量化的入门人员提供一个思路引导。文件包含两个部分:一个是源代码,另一个是Excel格式的数据文件,在同一目录下直接运行即可。本人使用的是Anaconda环境,并已测试过该版本(内含Python 3.6)可以正常运行。
  • 4、Python之双均线
    优质
    本文章详细记录了使用Python进行量化交易时,应用双均线策略的过程和心得。通过实际案例分析,深入探讨该策略在市场中的运用及优化方法。 Python量化交易-双均线策略笔记
  • 带均值回复.py
    优质
    本Python程序实现了一种结合布林带与均值回归原理的量化交易策略,旨在自动识别股票市场的买卖时机。 本策略的交易逻辑是:当价格触及布林线上轨的时候进行卖出操作,在触及下轨的时候则执行买入动作。经过回测分析后发现该策略的收益率为99.77%,最大回撤值为32.04%,夏普比率为0.43。
  • ZIGZAG_V1_zigzag指标_Zigzag_zigzag_zigzag__源码.zip
    优质
    本资料提供了一种基于ZigZag指标的突破交易策略,通过精准捕捉市场趋势转折点,帮助投资者把握入场时机。包含详细策略说明及源代码下载。 ZIGZAG突破交易策略_V1_zigzag指标_Zigzag突破开仓策略_zigzag_zigzag突破_突破_源码.zip
  • Python录(20)——保护性卖出场
    优质
    本篇为Python量化交易系列教程第二十篇,主要介绍如何利用编程实现保护性卖出策略,帮助投资者在市场波动中锁定利润、控制风险。通过实例代码展示该策略的实施过程与关键参数调整方法。 本段落主要记录保护点卖出策略,为买入的股票设立一个保护点。随着股票收盘价上升,逐步提高保护点;一旦股价跌破该设定值,则立即卖出股票。示例中的买入条件是当5日线与60日线形成金叉,并且股价出现小幅回踩(较金叉日前一日收盘价格下跌1%)时触发。而卖出的依据则是股价跌穿了预先设置好的保护点。 初始设立的保护点等于买入当天股票的收盘价减去一个资金撤退值,这里将撤退率设定为5%。在后续交易中,若股票收盘价格上涨,则更新该保护点;如果股价下跌,则维持原有的保护水平不变。回测使用的起始资金量是10万元人民币,每次操作单笔买入或卖出的股数固定为1,000股,并且每笔交易需支付千分之一的佣金费用。整个策略的有效测试时间段是从2018年1月1日到2020年3月20日。 该保护点卖出策略的核心代码位于“next”方法中,通过此函数可以实现对股票买卖操作的具体执行逻辑。
  • Python库-QuanttradingPython
    优质
    QuanttradingPython是一款专为Python用户打造的开源量化交易平台,提供丰富的算法交易策略和金融数据接口,帮助投资者轻松实现自动化交易。 Python定量交易策略包括MACD、配对交易(Pair Trading)、Heikin-Ashi图、伦敦突破(London Breakout)、Awesome指标、双重波动(Dual Thrust)、抛物线转向点(Parabolic SAR)、布林带(Bollinger Bands)、相对强弱指数(RSI)以及形态识别。