groovy:ta-lib 计算 stock ATR

2026 OpenClaw本地AI代理部署实战:阿里云+Docker+RAG全链路指南 AI代理(AI Agent)是大模型落地的关键范式,其核心在于将LLM、工具调用、记忆与规划能力封装为可调度的智能体。OpenClaw作为轻量级开源Agent框架,凭借对百炼、Qwen、DeepSeek等国产模型的深度适配,正成为企业构建私有化AI服务的事实标准。其技术价值体现在低代码编排、多通道集成(钉钉/飞书/微信)与混合推理架构支持,适用于客服自动化、RAG知识库、实时告警、竞品监控等典型场景。本文聚焦2026年OpenClaw生产就绪版本,结合阿里云轻量服务器预装镜像与本地Docker双路径部署、A 阅读详情

copy ta-lib-0.4.0.jar to \groovy-2.5.x\lib\

stock_atr.groovy

import java.util.Arrays;
import java.text.DecimalFormat;
import com.tictactec.ta.lib.*;

/* copy from Core.java
   public int atrLookback( int optInTimePeriod )
   {
   }
   public RetCode atr( int startIdx,
      int endIdx,
      double inHigh[],
      double inLow[],
      double inClose[],
      int optInTimePeriod,
      MInteger outBegIdx,
      MInteger outNBElement,
      double outReal[] )
*/
public class Stock_atr {
	public static void main(String[] args){
	
	def filename =null;
	int SIZE =0;		
	if (args.size()==2){
		filename = args[0];
		SIZE = Integer.parseInt(args[1])-1; // 数据的行数,剔除头行 headline
	} else {
		println " usage: groovy stock_atr filename int ";
		return;
	}
	// 申明输入参数
	double[] inHigh = new double[SIZE];
	double[] inLow = new double[SIZE];
	double[] inClose = new double[SIZE];
	// 初始值
	Arrays.fill(inHigh, 0.0);
	Arrays.fill(inLow, 0.0);
	Arrays.fill(inClose,0.0);
	
	def alist =[];
	def dates =[];
	int i= -2;
	boolean yes = false;
	int n =0;
	new File(filename).eachLine{ line ->
		i++; // println i;
		alist = line.split(',');
		n = alist.size();
		if(i== -1 && line.trim().equals(",date,open,close,high,low,volume,code")){
			yes=true;
		} else if( yes == true && n>7 ){
			dates.add(alist[1]); 
			inClose[i]= Double.parseDouble(alist[3]);
			inHigh[i] = Double.parseDouble(alist[4]);
			inLow[i]  = Double.parseDouble(alist[5]);
		}
	
	}
	if( i != SIZE-1 ){
		println(" i != SIZE-1 : "+i);
		return;
	}
	int optInTimePeriod =14;
	// 申明输出参数
	MInteger outBegIdx = new MInteger();
	MInteger outNBElement = new MInteger();
	double[] outReal = new double[SIZE];
	// 输出格式化
	DecimalFormat df = new DecimalFormat("0.0000");
	if( yes == true){	
		Core talib = new Core();
		int lookback = talib.atrLookback(optInTimePeriod);
		RetCode retCode = talib.atr(0,SIZE-1,inHigh,inLow,inClose, optInTimePeriod,outBegIdx,outNBElement,outReal);
	
		if( retCode == RetCode.Success){
			println("outBegIdx=${outBegIdx.value}, outNBElement=${outNBElement.value}");
		
			for( i=0; i< outNBElement.value; i++){
				println("${i},${dates[i+14]},${df.format(outReal[i])}");
			}
		} else {
			println(" retCode: "+retCode);
			throw new RuntimeException("TALib was unable to process data");
		}
	} else {
		println " headline is error ";
	}
	return;
	}
}

运行 cmd

wc -l 600030.csv
  737 rows
groovy stock_atr 600030.csv  737

719,2020-01-21,0.6381
720,2020-01-22,0.6647
721,2020-01-23,0.7301

 

[量化学院]借助talib使用技术分析指标来炒股 什么是技术分析 所谓股票的技术分析,是相对于基本面分析而言的。基本分析法着重于对一般经济情况以及各个公司的经营管理状况、行业动态等因素进行分析,以此来研究股票的价值,衡量股价的高低。而技术分析则是透过图表或技术指标的记录,研究市场过去及现在的行为反应,以推测未来价格的变动趋势。其依据的技术指标的主要内容是由股价、成交量或涨跌指数等数据计算而得的,技术分析只关心证券市场本身的变化,而不考虑会对其产生... 阅读详情

相关推荐

基于Codex与Skills的学术研究自动化全流程实战指南

还在为海量文献下载、整理、阅读和综述写作而头疼吗?面对堆积如山的PDF,你是否感到无从下手?从选题、文献检索、到写作、绘图、润色,再到应对AI检测和审稿意见,学术研究的每一步都充满挑战。本文将为你带来一套堪称“王炸组合”的解决方案: Codex + Skills 。这不是简单的工具介绍,而是一套从零开始,覆盖学术研究全流程的保姆级实战教程。我们将手把手教你如何安装、配置,并利用强大的Skills(技能)自动化处理文献下载管理、高效撰写综述、生成专业图表、智能润色降重,直至应对审稿。无论你是科研新手还是希望提

weixin_29041195的博客 764

Groovy 使用完全解析

转载请标明出处:http://blog.youkuaiyun.com/zhaoyanjun6/article/details/70313790 本文出自【赵彦军的博客】 概念 Groovy 配置环境变量 开发工具 IntelliJ IDEA Groovy 语法 基本语法 定义变量 定义函数 断言 assert 循环 fo...

weixin_33843409的博客 1024

CANopen中SDO、PDO字典以及COB-ID理解

CANopen SDO PDO

sunarmy的专栏 2万+

Groovy脚本基础全攻略,帮你快速拿Offer

/[closureparameters -> ]是可选的逗号分隔的参数列表,参数类似于方法的参数列表,这些参数可以是类型化或非类型化的。如下给出几个有效的闭包定义例子://最基本的闭包{ item++ }//使用->将参数与代码分离//使用隐含参数it(后面有介绍)//使用明确的参数it替代//使用显示的名为参数//接受两个参数的闭包} //包含一个参数多个语句的闭包。

2401_84149423的博客 2216

分类模型AUC低于0.5?5个常见坑点排查指南(附代码示例)

本文针对分类模型AUC低于0.5的常见问题,提供了5个关键排查点及代码示例。从样本分布失衡、特征与标签脱节到量纲差异、模型初始化和数据泄露,详细解析了可能导致AUC异常的原因,并给出实用的诊断方法和解决方案,帮助开发者快速提升模型性能。

weixin_29190169的博客 240

C语言新手必练:10个实战小项目带你快速上手(附完整代码)

本文为C语言初学者精选10个实战项目,从基础的温度转换器到高级的迷宫求解算法,涵盖输入输出、条件判断、循环控制、数组操作等核心知识点。每个项目配有完整代码和详细解析,帮助新手通过实践掌握编程思维,特别适合刚学完语法但缺乏实战经验的学习者。

weixin_29208077的博客 744

【Groovy语言基础总结】基础语法、编译原理、多层嵌套json解析

学习了Groovy语言,对其基础和编译原理、对多层嵌套的json解析进行总结。

weixin_53273474的博客 2213

Transformer实战(5)——Hugging Face环境配置与应用详解

本文详细介绍 Transformer 模型的实践应用全流程。首先讲解基于 Anaconda 的环境配置,包括 transformers 库安装及 hf-mirror 镜像加速方案。然后以 BERT 为例,演示分词器使用、文本编码及 fill-mask 等任务实现,对比 PyTorch/TensorFlow 框架差异。接着展示 Hugging Face 社区模型应用,包括 GPT-2 文本生成和零样本分类。最后扩展至多模态领域,使用 CLIP 模型实现零样本图像分类。

盼小辉丶的博客 1万+

Android Gradle(三)Groovy快速入门指南

本文首发于微信公众号「刘望舒」 原文链接:Groovy快速入门看这篇就够了 前言 在前面我们学习了为什么现在要用Gradle?和Gradle入门前奏两篇文章,对Gradle也有了大概的了解,这篇文章我们接着来学习Groovy的基础,要想学好Gradle,Groovy是必须要掌握的。Groovy仅凭一篇文章是介绍不完的,这里会带大家快速的入门Groovy,讲解Groovy和Java不同的部分,想要更...

weixin_34050005的博客 376

Halcon算子知识:optical_flow_mg

光流(Optical Flow)是一种研究图像对齐的算法,一般包括两大类:稀疏光流和稠密光流。稀疏光流就是研究图像中稀疏点的光流,这些点一般是角点;稠密光流则是研究图像中所有点的偏移量。以下介绍halcon的基本光流算子optical_flow_mg的原理方法。该算子计算两个图片的光流法。 二、算子说明 optical_flow_mg(ImageT1, ImageT2 : VectorField : Algorithm, SmoothingSigma, Integration

gongdiwudu的专栏 1万+

computer planetary——全球生物多样性信息机构 (GBIF)

正如npartitions所表明的,这个Parquet数据集是由许多单独的parquet文件组成的。(GBIF) 是一个由世界各国政府资助的国际网络和数据基础设施,提供记录物种发生的全球数据。重新处理数据的原因有多种,包括主干分类的更改,因此该日期不一定是发生记录最后更改的日期。GBIF 发生数据集结合了来自广泛来源的数据,包括来自自然历史博物馆的标本相关数据、来自公民科学网络的观察和自动环境调查。为了了解最常观察到的物种,我们将对数据集进行分组,并获得每个物种的计数。大多数字段名称对应于。

此星光明博客 1636

Groovy使用指南

目录groovy简介groovy类的基本特点在java项目中引入groovy定义变量groovy中的常见类型字符串数组 、列表 list元祖 tuple映射 | 字典 | map范围运算符 ..切片方法定义、调用闭包类的定义IO控制台输出File类文件读文件写遍历文件树说明单元测试   groovy简介 Groovy是一种基于 JVM 的编程语言,结合了 python、ruby 和 Smalltalk 的许多强大的特性,面向对象,Groovy 可以与 Java 代码很好地结合,可以直接在groo

chy-x 的博客 9858

数字电视中的 Closed Caption (CC) 字幕标准协议

本文将详细介绍 DVB中的 CC 字幕标准协议,包括数据结构格式、字段定义、字段占用比特数以及字段用途。此外,本文还将举例说明如何从 TS 传输流中解析 CC 字幕信息,并组织打包到电视节目中进行显示。

以实战经验介绍行业知识 670

Groovy基本语法与使用

Groovy简介 Groovy是增强Java平台的唯一的脚本语言;与Java相比,脚本语言具有更好的表示能力,能够提供更高的抽象等级。 Groovy语言特点: Groovy是一种面向对象的脚本语言,涉及的所有事物都是对象,这一点不像Java语言 Groovy与Java是二进制兼容的,Groovy编译器产生的字节码与Java编译器产生的字节码是完全一样的 Groovy能够完全使用各种Java API Groovy是动态类型语言,类型标记存在于对象中,而不是由引用它的变量来决定,所以Groovy不要求声明变量

qq_42290128的博客 2062

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

由浅入深的了解Groovy的基本使用

0、安装Groovy 1、解压并配置环境变量 GROOVY_HOME=F:\project\Groovy 2、输入groovy -v查看版本信息 1、了解前提 1.1、什么是Groovy? Groovy是机遇Java虚拟机的一种敏捷的动态语言,它是一种成熟的OOP(面向对象)编程语言,既可以用于面向对象编程,又可以用作纯粹的脚本语言。使用该种语言不必编写过多的代码,同时又具有闭包和动态语言的其他特性。 1.2、于Java相比,Groovy的不同点或优势 1、Groovy完全兼容Java语法,可以做脚本也

qq_47291265的博客 7415

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

groovy 基础入门

groovy简单入门 使用闭包 Groovy闭包是一种可执行代码块的方法,闭包也是对象,可以像方法一样传递参数。 Groovy中的闭包完全避免了代码的冗长,而且可以辅助创建轻量级、可复用的代码片段。 以下例子就是使用闭包去计算偶数和,偶数积,偶数的平方。 def pickEven(n, block) { for (int i = 2; i <= n; i += 2) { block(i) } } total = 0 pickEven(10, { total += it

不积跬步无以至千里 1936

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

python :talib 计算 ATR

ATR指标:Average True Range真实波动幅度的移动平均值 python安装使用 talib 安装主要在 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 这个网站找到 TA_Lib‑0.4.17‑cp37‑cp37m‑win32.whl TA_Lib‑0.4.17‑cp37‑cp37m‑win_amd64.whl cd \Anacond...

belldeep的专栏 1万+

注意TA-LIB与国内股票软件的技术指标计算方式的区别

折腾了好久才发现开源库TA-LIB关于很多指标计算都与国内通用股软不太一样。刚开始还以为是自己的程序写错了,汗一个。 比如ATR的计算,国内一般是取TR(真实波幅)的简单平均。而TA-LIB则是采取类似EMA平均一样的方法求TR的平均值。 再如MACD(12,26,9)的计算,TA-LIB对于前33个初始值是未定义的,国内股软计算初始值时则是根据已有的几根bar计算的 平均值比照MACD公式

fly52035的专栏 5397

Groovy操纵集合秘籍

Groovy操纵集合秘籍 [X] 遍历集合 遍历list对象 ja...

weixin_34235457的博客 278

x-cmd pkg | Groovy - 基于 Java 平台的面向对象编程语言

Groovy 是一种适用于JVM平台的面向对象的编程语言。它可以与任何 Java 程序顺利集成,为Java应用程序提供强大的功能(脚本功能、函数式编程等)。

edwinjhlee的博客 912

ta-lib java版介绍

介绍 想要不依赖量化平台进行技术分析的话,可以尝试使用ta-lib这个库,称Technical Analysis Library。当然我们自己实现分析指标也是可以的,不过时间和验证都需要我们花费不少精力,没必要去重复造轮子。 源代码地址:http://www.github.com/BYVoid/TA-Lib 包括 200多个指标计算,如MACD,RSI,随机,布林带 等等 等指标。 ( 更多信息...

陆多多的专栏 6348

Groovy简介与使用

简介 使用 应用 Groovy语法特性(相比于Java) Groovy与Java项目集成使用 GroovyShell GroovyClassLoader GroovyScriptEngine JSR-223 Groovy实现相关原理 Groovy代码文件与class文件的对应关系 对于没有任何类定义 对于仅有一个类 对于多个类 对于有定义类的脚本 Spring对Groo...

timestatic 6万+

java ta-lib 计算移动标准差,金融滚动标准差计算

java ta-lib包, 计算滚动的标准差。

weixin_44602405的博客 1016

java使用talib计算股票的rsi,kdj等指标

java使用talib计算股票指标

flashylife的博客 3482

talib atr 函数 相同数据、相同周期。不同数据长度结果不一样原因

【代码】talib atr 函数 不同相同数据 不同数据长度结果不一样。

bthuntergg的博客 763

深入解析Groovy:灵活性与生产力的完美融合

Groovy是一种基于JVM(Java虚拟机)的动态编程语言,具有静态编译和动态编译的特性。它的语法与Java非常相似,但更加简洁和灵活。Groovy可以与Java代码无缝集成,并提供了丰富的库和工具,使得开发者能够快速构建出高效、可靠的应用程序。

让每一行代码都有改变世界的力量 2244
上一篇: python:np.diff() 计算差值和升跌幅百分比
下一篇: python:计算 stock CDP
belldeep
博客等级 码龄20年 1820粉丝 584原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值