当前位置: 首页 > news >正文

量化交易:日内网格交易策略.md

哈喽,大家好,我是木头左!

本文将详细介绍日内网格交易策略的原理,并结合Python代码示例,展示如何在掘金平台上实现这一策略。

策略原理

日内网格交易策略的核心思想是在一天的交易时间内,通过设置多个买卖点(即网格),在价格达到这些点时自动执行交易。这种策略的优势在于能够充分利用市场的波动性,通过频繁的买卖操作来获取收益。同时,由于是在一天内完成买卖,因此避免了隔夜风险。

在金融和财经的角度看,日内网格交易策略是一种典型的技术分析方法,它依赖于对市场短期价格波动的观察和预测。这种策略适用于波动性较大的市场环境,因为只有当价格波动足够大时,网格交易才能捕捉到足够的交易机会。

在平台运行Python代码

在掘金平台上实现日内网格交易策略,主要分为三个核心步骤:选股、择时和策略交易。以下是这三个步骤的Python代码实现:

选股

选股是策略的第一步,需要选择适合网格交易的股票或可转债。在本策略中,选择了可转债作为交易对象,代码如下:

context.bond_symbol = 'SZSE.000001'
context.grid_size = 0.2  # 网格大小,即价格变动0.2元执行一次买卖
context.grid_count = 5  # 网格数量
context.upGridRate = 0.1/100  # 上涨0.1%卖出一格
context.downGridRate = 0.5/100  # 下跌0.5%买入一格
择时

择时是根据市场行情和价格波动来确定买卖时机。在本策略中,设置了网格大小、网格数量、上涨卖出率和下跌买入率等参数,代码如下:

 # 获取当前可转债的最新价格curPrice = bars[0].closeif context.plan_completed:log.info('计划完成!')return  #首次自动买入持仓if context.first_buy_flag == 1:    # 首次买入股数                context.firstBuyAmount = context.oneGridAmount * context.firstBuyGridsorder_target_value(context.bond_symbol, context.firstBuyAmount,order_type=OrderType_Limit,position_side=PositionSide_Long)      #下单买入log.info('首次买入股数:' + str(context.firstBuyAmount))context.basePrice = curPrice                              #下次对比的基准价格context.downPrice = curPrice * (1 - context.downGridRate * 1)   #下限价格向下预留一格context.plan_position_amount = context.firstBuyAmountcontext.first_buy_flag = 0
策略交易

策略交易是根据择时的结果来执行买卖操作。在本策略中,通过计算当前价格与基准价格的增长率,来决定是否执行买卖操作。代码如下:

# 计算增长率curGainRate = (curPrice - context.basePrice)/context.basePricelog.info('当前增长率:' + str(round(curGainRate*100,2)) +'%')# 增长大于上涨粒度,卖出一份 if curGainRate >= context.upGridRate:order_target_value(context.bond_symbol, - context.oneGridAmount, order_type=OrderType_Limit,position_side=PositionSide_Long)     #下单卖出一份log.info('卖出数量:' + str(context.oneGridAmount) + '/' + str(context.plan_position_amount))context.basePrice = curPricecontext.plan_position_amount = context.plan_position_amount - context.oneGridAmountif  context.plan_position_amount <= 0:    #持仓全部卖出,则计划完成context.plan_completed = Truelog.info('卖完了,数数去')                                 # 跌幅大于下跌幅度,买入一份if curGainRate < -context.downGridRate:     order_target_value(context.bond_symbol, context.oneGridAmount, order_type=OrderType_Limit,position_side=PositionSide_Long)  #下单买入一份log.info('买入数量:' + str(context.oneGridAmount))context.basePrice = curPricecontext.plan_position_amount = context.plan_position_amount + context.oneGridAmount

回测效果

为了评估日内网格交易策略的效果,进行了回测。回测结果显示,策略在一段时间内取得了正收益,但收益波动较大。以下是回测效果图:

在这里插入图片描述

这表明日内网格交易策略的效果受市场波动性的影响较大。

策略的缺点

尽管日内网格交易策略具有一定的优势,但也存在一些缺点:

  1. 市场行情限制:该策略更适用于波动性较大的市场环境,而在波动性较小的市场环境下,可能难以获得理想的收益。

  2. 策略限制性:日内网格交易策略主要依赖于价格波动,对于其他市场因素(如公司基本面、宏观经济等)的考虑较少。

市场有风险,交易需谨慎。
感兴趣的朋友,可以在下方公号内回复:002,即可获取源码,共同交流!

我是木头左,感谢各位童鞋的点赞、收藏,我们下期更精彩!

相关文章:

量化交易:日内网格交易策略.md

哈喽&#xff0c;大家好&#xff0c;我是木头左&#xff01; 本文将详细介绍日内网格交易策略的原理&#xff0c;并结合Python代码示例&#xff0c;展示如何在掘金平台上实现这一策略。 策略原理 日内网格交易策略的核心思想是在一天的交易时间内&#xff0c;通过设置多个买卖…...

Ubuntu 20.04在Anaconda虚拟环境中配置PyQt4

一、创建一个虚拟环境 1 创建一个python2.7的虚拟环境&#xff1a; conda create -n pyqt4 numpy matplotlib python2.72 在环境中安装几个需要的包&#xff1a; pip install Theano pip install python-opencv3.4.0.14 pip install qdarkstyle pip install dominate二、在主…...

charts3D地球--添加航线

要在地球视角下画出海运路线图 方案 添加 globl 地球创建geo地理坐标系创建canvas对象用于承载地图世界地图this.worldChart //初始化canvas节点let cav document.createElement("canvas");this.$echarts.registerMap("world", geoJson);this.worldCha…...

变色龙还是树懒:揭示大型语言模型在知识冲突中的行为

你是知识变色龙还是树懒?我今天在ICLR学到一个很有趣的术语,叫做证据顺序(order of evidence)。 大模型RAG处理知识冲突的探讨: 在检索增强生成(Retrieval-Augmented Generation, RAG)的过程中,技术团队会将检索到的前几名文档作为证据,并提示(prompt)给大型语言模型(Large La…...

Android OpenMAX(四)OMX Core

假设我们已经写好了所有的OMX组件,有vdec、venc、adec、aenc,接下来问题来了,我们应该如何管理这些组件呢(创建、销毁)?这一篇文章我们向上一层学习OMX Core提供的标准API。 OMX Core代码位于 OMX_Core.h OMX Core在OpenMAX IL架构中的位置位于IL Client与实际的OMX组件之…...

【Linux】轻量级应用服务器如何开放端口 -- 详解

一、测试端口是否开放 1、测试程序 TCP demo 程序&#xff08;可参考&#xff1a;【Linux 网络】网络编程套接字 -- 详解-CSDN博客&#xff09; 2、测试工具 Windows - cmd 窗口 输入命令&#xff1a;telnet [云服务器的公网ip] [port] 二、腾讯云安全组开放端口 1、安全组设…...

git如何查看密码

git查看用户名、邮箱 git config user.name git config user.email 也可以在系统&#xff0c;用户文件夹下面 gitconfig查看 通常无法查看git密码&#xff0c;运行以下命令 git config credential.helper 查看储存的方式&#xff0c;如果是manage 或manage-store则说明是…...

redis脑裂问题

1. 前言 脑裂就是指在主从集群中&#xff0c;同时有两个主节点&#xff0c;它们都能接收写请求。而脑裂最直接的影响&#xff0c;就是客户端不知道应该往哪个主节点写入数据&#xff0c;结果就是不同的客户端会往不同的主节点上写入数据。而且&#xff0c;严重的话&#xff0c;…...

日本率先研发成功6G设备,刺痛了谁?为何日本能率先突破?

日本率先研发成功6G设备&#xff0c;无线数据速率是5G的百倍&#xff0c;这让日本方面兴奋莫名&#xff0c;毕竟日本在科技方面从1990年代以来太缺少突破的创新了&#xff0c;那么日本为何如今在6G技术上能率先突破呢&#xff1f; 日本在1980年代末期达到顶峰&#xff0c;它的科…...

SpringBoot自动配置源码解析+自定义Spring Boot Starter

SpringBootApplication Spring Boot应用标注 SpringBootApplication 注解的类说明该类是Spring Boot 的主配置类&#xff0c;需要运行该类的main方法进行启动 Spring Boot 应用 SpringBootConfiguration 该注解标注表示标注的类是个配置类 EnableAutoConfiguration 直译&#…...

Kafka 环境配置与使用总结

# 部署教程参考 # 官方教程: https://kafka.apache.org/quickstart # 单机部署kafka参考: https://blog.csdn.net/u013416034/article/details/123875299 # 集群部署kafka参考: # https://blog.csdn.net/zhangzjx/article/details/123679453 # https://www.cnblogs.com/And…...

【算法】滑动窗口——串联所有单词的子串

今天来以“滑动窗口”的思想来详解一道比较困难的题目——串联所有单词的子串&#xff0c;有需要借鉴即可。 目录 1.题目2.下面是示例代码3.总结 1.题目 题目链接&#xff1a;LINK 这道题如果把每个字符串看成一个字母&#xff0c;就是另外一道中等难度的题目&#xff0c;即&…...

等保测评安全物理环境测评讲解

等保测评中的安全物理环境测评主要关注信息系统的物理安全保护措施&#xff0c;确保机房、设备和数据的物理安全。以下是安全物理环境测评的关键点讲解&#xff1a; 1. **物理位置选择**&#xff1a; - 机房应选择在具有防震、防风和防雨能力的建筑内。 - 应避免设在建筑…...

TensorRT-llm入门

一、目录 作用TensorRT-llm 为什么快&#xff1f;流程TensorRT-LLM 环境配置大模型 转换、编译与推理如何选择量化类型&#xff1f;lora 大模型如何合并&#xff1f;lora 大模型如何编译&#xff0c;使用&#xff1f;推理加速模型 tensorrRT-LLM、Vllm、fasterTransformer、Be…...

TinyXML-2介绍

1.简介 TinyXML-2 是一个简单、小巧的 C XML 解析库&#xff0c;它是 TinyXML 的一个改进版本&#xff0c;专注于易用性和性能。TinyXML-2 用于读取、修改和创建 XML 文档。它不依赖于外部库&#xff0c;并且可以很容易地集成到项目中。 tinyXML-2 的主要特点包括&#xff1a…...

JAVA课程设计

一&#xff1a;Java连接mysql数据库 1.1点击进入mysql jar包下载官网 MySQL :: MySQL Community Downloads 将下载好的压缩包进行解压 解压之后下图就是连接数据库所用到的jar包&#xff1a; 将jar包复制到IDEA所用的项目下&#xff0c;放置jar包的目录为lib&#xff0c;需要…...

基于SpringBoot+Vue的旅游网站系统

初衷 在后台收到很多私信是咨询毕业设计怎么做的&#xff1f;有没有好的毕业设计参考? 能感觉到现在的毕业生和当时的我有着同样的问题&#xff0c;但是当时的我没有被骗&#xff0c; 因为现在很多人是被骗的&#xff0c;还没有出学校还是社会经验少&#xff0c;容易相信别人…...

http代理ip按流量划算还是个数划算?

随着科技的进步和互联网的发展&#xff0c;越来越多的企业在业务上都需要用到代理&#xff0c;那么http代理ip按流量划算还是个数划算&#xff1f;小编接下来就跟大家介绍一下&#xff1a; 首先我们得先了解http代理ip的按流量模式和个数模式分别是什么&#xff1a; 一、按流…...

Banana Pi BPI-F3, 进迭时空K1芯片设计,定位工业级应用,网络通信及工业自动化

香蕉派BPI-F3是一款工业级 8核RISC-V开源硬件开发板&#xff0c;它采用进迭时空&#xff08;SpacemiT&#xff09; K1 8核RISC-V芯片设计&#xff0c;CPU集成2.0 TOPs AI计算能力。4G DDR和16G eMMC。2个GbE以太网接口&#xff0c;4个USB 3.0和PCIe M.2接口&#xff0c;支持HDM…...

安科瑞工业IT产品及解决方案—电源不接地,设备外壳接地【监测系统对地绝缘电阻】

低压配电系统分类及接地保护方案 国际电工委员会&#xff08;iec&#xff09;对各接地方式供电系统的规定规定&#xff1a;(低压&#xff1a;交流1000V以下&#xff09; 低压配电接地、接零系统分为IT、TT、TN三种基本形式。TN分为TN-C&#xff0c;TN-S&#xff0c;TN-C-S三种…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中&#xff0c;结构体可以嵌套使用&#xff0c;形成更复杂的数据结构。例如&#xff0c;可以通过嵌套结构体描述多层级数据关系&#xff1a; struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

国防科技大学计算机基础课程笔记02信息编码

1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制&#xff0c;因此这个了16进制的数据既可以翻译成为这个机器码&#xff0c;也可以翻译成为这个国标码&#xff0c;所以这个时候很容易会出现这个歧义的情况&#xff1b; 因此&#xff0c;我们的这个国…...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中&#xff0c;手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力&#xff0c;既支持点击、长按、拖拽等基础单一手势的精细控制&#xff0c;也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

前端倒计时误差!

提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器

第一章 引言&#xff1a;语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域&#xff0c;文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量&#xff0c;支撑着搜索引擎、推荐系统、…...

Mac软件卸载指南,简单易懂!

刚和Adobe分手&#xff0c;它却总在Library里给你写"回忆录"&#xff1f;卸载的Final Cut Pro像电子幽灵般阴魂不散&#xff1f;总是会有残留文件&#xff0c;别慌&#xff01;这份Mac软件卸载指南&#xff0c;将用最硬核的方式教你"数字分手术"&#xff0…...

【Oracle】分区表

个人主页&#xff1a;Guiat 归属专栏&#xff1a;Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...

ABAP设计模式之---“简单设计原则(Simple Design)”

“Simple Design”&#xff08;简单设计&#xff09;是软件开发中的一个重要理念&#xff0c;倡导以最简单的方式实现软件功能&#xff0c;以确保代码清晰易懂、易维护&#xff0c;并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计&#xff0c;遵循“让事情保…...

【Go语言基础【12】】指针:声明、取地址、解引用

文章目录 零、概述&#xff1a;指针 vs. 引用&#xff08;类比其他语言&#xff09;一、指针基础概念二、指针声明与初始化三、指针操作符1. &&#xff1a;取地址&#xff08;拿到内存地址&#xff09;2. *&#xff1a;解引用&#xff08;拿到值&#xff09; 四、空指针&am…...