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

这表明日内网格交易策略的效果受市场波动性的影响较大。
策略的缺点
尽管日内网格交易策略具有一定的优势,但也存在一些缺点:
-
市场行情限制:该策略更适用于波动性较大的市场环境,而在波动性较小的市场环境下,可能难以获得理想的收益。
-
策略限制性:日内网格交易策略主要依赖于价格波动,对于其他市场因素(如公司基本面、宏观经济等)的考虑较少。
市场有风险,交易需谨慎。
感兴趣的朋友,可以在下方公号内回复:002,即可获取源码,共同交流!
我是木头左,感谢各位童鞋的点赞、收藏,我们下期更精彩!
相关文章:
量化交易:日内网格交易策略.md
哈喽,大家好,我是木头左! 本文将详细介绍日内网格交易策略的原理,并结合Python代码示例,展示如何在掘金平台上实现这一策略。 策略原理 日内网格交易策略的核心思想是在一天的交易时间内,通过设置多个买卖…...
Ubuntu 20.04在Anaconda虚拟环境中配置PyQt4
一、创建一个虚拟环境 1 创建一个python2.7的虚拟环境: conda create -n pyqt4 numpy matplotlib python2.72 在环境中安装几个需要的包: 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 程序(可参考:【Linux 网络】网络编程套接字 -- 详解-CSDN博客) 2、测试工具 Windows - cmd 窗口 输入命令:telnet [云服务器的公网ip] [port] 二、腾讯云安全组开放端口 1、安全组设…...
git如何查看密码
git查看用户名、邮箱 git config user.name git config user.email 也可以在系统,用户文件夹下面 gitconfig查看 通常无法查看git密码,运行以下命令 git config credential.helper 查看储存的方式,如果是manage 或manage-store则说明是…...
redis脑裂问题
1. 前言 脑裂就是指在主从集群中,同时有两个主节点,它们都能接收写请求。而脑裂最直接的影响,就是客户端不知道应该往哪个主节点写入数据,结果就是不同的客户端会往不同的主节点上写入数据。而且,严重的话,…...
日本率先研发成功6G设备,刺痛了谁?为何日本能率先突破?
日本率先研发成功6G设备,无线数据速率是5G的百倍,这让日本方面兴奋莫名,毕竟日本在科技方面从1990年代以来太缺少突破的创新了,那么日本为何如今在6G技术上能率先突破呢? 日本在1980年代末期达到顶峰,它的科…...
SpringBoot自动配置源码解析+自定义Spring Boot Starter
SpringBootApplication Spring Boot应用标注 SpringBootApplication 注解的类说明该类是Spring Boot 的主配置类,需要运行该类的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…...
【算法】滑动窗口——串联所有单词的子串
今天来以“滑动窗口”的思想来详解一道比较困难的题目——串联所有单词的子串,有需要借鉴即可。 目录 1.题目2.下面是示例代码3.总结 1.题目 题目链接:LINK 这道题如果把每个字符串看成一个字母,就是另外一道中等难度的题目,即&…...
等保测评安全物理环境测评讲解
等保测评中的安全物理环境测评主要关注信息系统的物理安全保护措施,确保机房、设备和数据的物理安全。以下是安全物理环境测评的关键点讲解: 1. **物理位置选择**: - 机房应选择在具有防震、防风和防雨能力的建筑内。 - 应避免设在建筑…...
TensorRT-llm入门
一、目录 作用TensorRT-llm 为什么快?流程TensorRT-LLM 环境配置大模型 转换、编译与推理如何选择量化类型?lora 大模型如何合并?lora 大模型如何编译,使用?推理加速模型 tensorrRT-LLM、Vllm、fasterTransformer、Be…...
TinyXML-2介绍
1.简介 TinyXML-2 是一个简单、小巧的 C XML 解析库,它是 TinyXML 的一个改进版本,专注于易用性和性能。TinyXML-2 用于读取、修改和创建 XML 文档。它不依赖于外部库,并且可以很容易地集成到项目中。 tinyXML-2 的主要特点包括:…...
JAVA课程设计
一:Java连接mysql数据库 1.1点击进入mysql jar包下载官网 MySQL :: MySQL Community Downloads 将下载好的压缩包进行解压 解压之后下图就是连接数据库所用到的jar包: 将jar包复制到IDEA所用的项目下,放置jar包的目录为lib,需要…...
基于SpringBoot+Vue的旅游网站系统
初衷 在后台收到很多私信是咨询毕业设计怎么做的?有没有好的毕业设计参考? 能感觉到现在的毕业生和当时的我有着同样的问题,但是当时的我没有被骗, 因为现在很多人是被骗的,还没有出学校还是社会经验少,容易相信别人…...
http代理ip按流量划算还是个数划算?
随着科技的进步和互联网的发展,越来越多的企业在业务上都需要用到代理,那么http代理ip按流量划算还是个数划算?小编接下来就跟大家介绍一下: 首先我们得先了解http代理ip的按流量模式和个数模式分别是什么: 一、按流…...
Banana Pi BPI-F3, 进迭时空K1芯片设计,定位工业级应用,网络通信及工业自动化
香蕉派BPI-F3是一款工业级 8核RISC-V开源硬件开发板,它采用进迭时空(SpacemiT) K1 8核RISC-V芯片设计,CPU集成2.0 TOPs AI计算能力。4G DDR和16G eMMC。2个GbE以太网接口,4个USB 3.0和PCIe M.2接口,支持HDM…...
安科瑞工业IT产品及解决方案—电源不接地,设备外壳接地【监测系统对地绝缘电阻】
低压配电系统分类及接地保护方案 国际电工委员会(iec)对各接地方式供电系统的规定规定:(低压:交流1000V以下) 低压配电接地、接零系统分为IT、TT、TN三种基本形式。TN分为TN-C,TN-S,TN-C-S三种…...
脉冲神经网络(SNN)稀疏计算加速与RISC-V优化实践
1. 脉冲神经网络与稀疏计算加速概述 脉冲神经网络(SNN)作为第三代神经网络模型,其最大特点是采用生物神经元类似的脉冲信号进行信息传递。与传统人工神经网络(ANN)的连续激活不同,SNN只在膜电位达到阈值时才…...
HPM6750 LVGL性能优化:利用TCM与DMA突破嵌入式图形内存瓶颈
1. 项目概述:当LVGL遇上HPM6750,一场关于性能的极限探索最近在嵌入式图形界面开发的圈子里,一个话题热度很高:如何在HPM6750这颗高性能RISC-V MCU上,让LVGL的刷屏性能再上一个台阶?这听起来像是一个常规的优…...
从CLIP到多模态:对比学习驱动的视觉-语言模型演进与实战
1. 对比学习:CLIP的基石与多模态革命 我第一次接触CLIP模型是在2021年初,当时OpenAI发布的这篇论文彻底颠覆了我对视觉模型训练方式的认知。传统计算机视觉任务总是离不开人工标注的海量数据,而CLIP却另辟蹊径,用自然语言作为监督…...
NotebookLM权限颗粒度管控实战:从入门到精通的7步精准授权法(含Google内部RBAC配置模板)
更多请点击: https://intelliparadigm.com 第一章:NotebookLM权限控制设置概览 NotebookLM 是 Google 推出的基于用户自有文档构建个性化 AI 助手的实验性工具,其权限模型聚焦于数据主权与最小化访问原则。默认状态下,所有上传文…...
量子错误校正与离子阱系统的混合编码优化
1. 量子错误校正与离子阱系统的现状与挑战量子计算领域正经历着从NISQ(含噪声中等规模量子)时代向容错量子计算(FTQC)过渡的关键阶段。作为这一过渡的核心技术,量子错误校正(QEC)通过将逻辑量子…...
别再凭感觉选电感了!深入拆解Bulk电路中电感与电容的选型计算(以12V转5V为例)
别再凭感觉选电感了!深入拆解Bulk电路中电感与电容的选型计算(以12V转5V为例) 在电源设计领域,Bulk电路(又称Buck电路)作为最常见的降压型DC-DC转换拓扑,其性能优劣直接决定了整个系统的稳定性和…...
不止是图像采集:基于RK3588 NPU和FPGA,如何给Cameralink相机注入AI灵魂(附目标跟踪/电子稳像实战)
异构计算赋能Cameralink相机:RK3588 NPU与FPGA协同的AI视觉实战 在工业检测、安防监控和国防光电系统中,Cameralink相机凭借其高带宽、低延迟的特性成为高速图像采集的首选。但当面对动目标检测、电子稳像等复杂任务时,传统方案往往陷入算力瓶…...
从电话到流媒体:聊聊G.711、G.726这些老牌音频编码为啥还在用?
从电话到流媒体:G.711与G.726音频编码的生存之道 在数字音频技术日新月异的今天,MP3、AAC、Opus等现代编码格式早已成为流媒体和消费级应用的标配。然而,当你拆开一台最新的IP电话机,或是调试某款工业级语音设备时,大概…...
事件相机技术原理与应用全解析
1. 事件相机技术概述事件相机(Event Camera)是一种革命性的视觉传感器,它彻底改变了传统相机的图像采集方式。与普通相机不同,事件相机不会以固定帧率捕获完整的图像帧,而是异步检测每个像素的亮度变化。当某个像素位置…...
数据冗余与规范化的本质[数据库原理]
我们把它想象成整理一个乱七八糟的杂物间的过程。我们的目标是把所有东西分门别类放好,让找东西、放东西、更新东西都变得轻松,并且避免重复占用空间。 第一部分:为什么要“规范化”?—— 解决“大杂烩”表的三大痛点 假设我们管…...
