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

SPL做量化---PSY(心理线)

心理线(PSY)指标是研究投资者对股市涨跌产生心理波动的情绪指标,它将一定时期内投资者趋向买方或卖方的心里事实转化为数值,是研究投资者对股市涨跌产生心理波动的情绪指标。主要用于判断股价短期的未来趋势。

PSY 计算方式:
PSY=n 日内上涨天数 /n*100
MAPSY=PSY 的 m 日移动平均

例如计算浦发银行 2024 年的收盘价 12 日 PSY 和 6 日 MAPSY

代码示例:

A
1600000
22024-01-01
32024-12-31
4=call("adjustprice.splx", "", call("loadkday.splx", A1, A2,A3) )
512
66
7=A4.derive(if(close> close[-1],1,0):n_up)
8=A7.new(code,tdate,sum(n_up[1-A5:0])/A5*100:PSY,avg(PSY[1-A6:0]):MAPSY)

A1-A4 读取股票数据

A5-A6 输入 n 和 m

A7 n_up:判断是否为股价上涨日,上涨日记为 1 反之为 0

A8 取 n 日内的 n_up 求和得到 n 日内上涨天数,带入公式计算 PSY,MAPSY

..

为了使用方便,可以用宏封装成通用函数供调用。

函数代码:

AB
1func psy(data,field,N)=data.derive(if(${field}>${field}[-1],1,0):n_up)
2=B18.new(code,tdate,sum(n_up[1-N(1):0])/N(1)*100:PSY,avg(PSY[1-N(2):0]):MAPSY)

此代码比较短,和前面章节的 MA 一样,可以用 func 的形式保存在 index.splx 中。

参数:

data序表,某支股票的日线数据
field字符串,字段名
N序列,n 和 m 值,如[5,20,60,120]

返回数据集结构:

code股票代码
tdate日期
PSY心理线
MAPSYPSY 的移动平均

例如计算浦发银行 2024 年的收盘价 12 日 PSY 和 6 日 MAPSY

AB
6=call@f("index.splx")登记脚本中的函数
7计算出源数据
8=psy(A7,"close",[12,6])调用函数

运行效果:

..

 SPL 可以在这里下载:免费下载。使用免费的桌面版就可以了,直接安装即可使用。专业程序员也可以使用这里的开源版,但需要自行配置部署。

SPL 配有系统的教程,这里有面向新手的课程(含视频):SPL程序设计语言 · 乾学院VIP课程乾学院 也有更多学习资料。

 

相关文章:

  • 【人工智能基础知识】
  • Mysql索引实战1
  • 2025年二级等保实施全攻略:传统架构与云等保方案深度解析
  • 系统设计应优先考虑数据流还是控制流?为什么优先考虑数据流?数据流为主、控制流为辅的架构原则是什么?控制流优先会导致哪些问题?
  • C++ 11(1):
  • spring的注入方式都有什么区别
  • 2024CCPC辽宁省赛 个人补题 ABCEGJL
  • 分类预测 | Matlab实现PNN概率神经网络多特征分类预测
  • AI大模型技术全景解析:核心原理与关键技术拆解
  • pyomo简介及使用指南
  • Redis 的 key 的过期策略是怎么实现的
  • docker中部署Universal Media Server (UMS)
  • 云里物里电子标签落地香港伊利沙伯医院:打造无纸化诊疗新范式
  • 定时器的两种实现方式
  • AI人工智能——Matplotlib绘制各种数据可视化图表的基础方法
  • Idea 查找引用jar包依赖来源的Maven pom坐标
  • 软考高项-各年选择错题
  • Sentieon文献解读 - 使用 Sentieon ctDNA 分析管道高精度、高效地处理 UMI 数据集
  • React--函数组件和类组件
  • 打卡31天
  • 无代码开发原理/手机系统优化软件