基于java语言开发的个性化股票分析技术:量能突破模型(energe-break)_第1页
基于java语言开发的个性化股票分析技术:量能突破模型(energe-break)_第2页
基于java语言开发的个性化股票分析技术:量能突破模型(energe-break)_第3页
基于java语言开发的个性化股票分析技术:量能突破模型(energe-break)_第4页
基于java语言开发的个性化股票分析技术:量能突破模型(energe-break)_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于基于 Java 语言开发的个性化股票分析技术:语言开发的个性化股票分析技术: 量能突破模型量能突破模型(Energe-Break) 一个用量能指标作为判定依据的条件分析模型,根据最近 5 天内是否有量能平台的突破以及涨跌幅的大 小给每只股票评分评价,给用户明确的建议。 迅动股票分析平台在此基础上利用 Java 语言开发了量能突破模型(Energe-Break),源代码如下: XML 描述:描述: 一个用量能指标作为判定依据的条件分析模型,根据最近 5 天内是否有量能平台的突破以及涨跌幅 的大小给每只股票评分评价,给用户明确的建议。 Java 代码:代码: /* * (#)EBnalyser.java * * Copyright Hangzhou Shengren Software Tech. Co., Ltd. */ package u008660011.model.analyser.eb; import java.rmi.RemoteException; import java.util.List; import mons.lang.math.NumberUtils; import mon.util.DateUtil; import mon.util.StkAnalysisUtil; import com.shengrensoft.stock.center.data.Data; import com.shengrensoft.stock.center.data.StkDailyK.StkDailyKData; import com.shengrensoft.stock.center.data.IdxDailyK.IdxDailyKData; import com.shengrensoft.stock.center.data.BlkDailyK.BlkDailyKData; import com.shengrensoft.stock.center.model.ModelParam; import com.shengrensoft.stock.center.model.analyser.AbstractAnalyser; import com.shengrensoft.stock.center.model.analyser.AnalysisValue; /* * EB量能突破分析模型的实现类。 * * author 迅动平台 2012/09/20 新建 */ public class EBAnalyser extends AbstractAnalyser /* 序列版本 ID */ private static final long serialVersionUID = -732447148977150017L; / 参数名定义 /* 参数名:N 天数 */ private static final String PARAM_N = “N“; /* 参数名:加减分系数 */ private static final String PARAM_CONFICENT = “C“; /* * 构造方法。 */ public EBAnalyser() throws RemoteException /* * 分析买入点的变化。 * * param stkCode 证券代码 * param transDate 交易日期 * param paramsList 模型参数列表 (本源代码转载自迅动股票分析平台,了解更多请访问 ) * * return 分析结果(含评分和评价) */ public AnalysisValue doAnalysis( String stkCode, java.util.Date transDate, List paramsList) throws RemoteException AnalysisValue analysisValue = null; / 股票代码合法性检查 if (stkCode = null) analysisValue = new AnalysisValue(); analysisValue.setStkCode(stkCode); analysisValue.setResultScore(0); analysisValue.setResultDesc(“股票代码不合法,分析失败。“); return analysisValue; / 交易日期合法性检查 if (transDate = null) analysisValue = new AnalysisValue(); analysisValue.setStkCode(stkCode); analysisValue.setResultScore(0); analysisValue.setResultDesc(“交易日期不合法,分析失败。“); return analysisValue; / 参数列表合法性检查 if (paramsList = null) analysisValue = new AnalysisValue(); analysisValue.setStkCode(stkCode); analysisValue.setResultScore(0); analysisValue.setResultDesc(“参数列表不合法,分析失败。“); return analysisValue; / 取得分析所需的模型参数 int paramN = 0; int paramCONFICENT = 0; for (ModelParam param : paramsList) if (PARAM_N.equals(param.getShortName() paramN = NumberUtils.toInt(param.getValue(); else if (PARAM_CONFICENT.equals(param.getShortName() paramCONFICENT = NumberUtils.toInt(param.getValue(); else return null; / 发现一个意外的模型参数 / 天数的合法性检查 if (paramN 99) analysisValue = new AnalysisValue(); analysisValue.setStkCode(stkCode); analysisValue.setResultScore(0); analysisValue.setResultDesc(“加减分系数,分析失败。“); return analysisValue; / 判别证券代码类型(是否为股票代码,股指代码,板指代码) ,分别进行分析 StkAnalysisUtil stkAnalysisUtil = super.getStkAnalysisUtil(); if (stkAnalysisUtil.isStkCode(stkCode) analysisValue = this.analyseStk(stkCode, transDate, paramN, paramCONFICENT); if (analysisValue = null) analysisValue = new AnalysisValue(); analysisValue.setStkCode(stkCode); analysisValue.setResultScore(0); analysisValue.setResultDesc(“公司新上市或该天缺少数据,分析失败!“); return analysisValue; else if (stkAnalysisUtil.isIdxCode(stkCode) analysisValue = this.analyseIdx(stkCode, transDate, paramN, paramCONFICENT); if (analysisValue = null) analysisValue = new AnalysisValue(); (本源代码转载自迅动股票分析平台,了解更多请访问 ) analysisValue.setStkCode(stkCode); analysisValue.setResultScore(0); analysisValue.setResultDesc(“公司新上市或该天缺少数据,分析失败!“); return analysisValue; else if (stkAnalysisUtil.isBlkCode(super.getUserId(), stkCode) analysisValue = this.analyseBlk(stkCode, transDate, paramN, paramCONFICENT); if (analysisValue = null) analysisValue = new AnalysisValue(); analysisValue.setStkCode(stkCode); analysisValue.setResultScore(0); analysisValue.setResultDesc(“公司新上市或该天缺少数据,分析失败!“); return analysisValue; else analysisValue = new AnalysisValue(); analysisValue.setStkCode(stkCode); analysisValue.setResultScore(0); analysisValue.setResultDesc(“证劵代码类型不符,分析失败!“); return analysisValue; /* * 根据能量突破提示的不同,对股票进行分析、评分、评价。 * * param stkCode 股票代码 * param transDate 交易日期 * param paramN 天数 * param paramCONFICENT (%)加减分系数 * * return 返回结果(含评分和评价) */ private AnalysisValue analyseStk( String stkCode, java.util.Date transDate, int paramN, int paramCONFICENT) AnalysisValue analysisValue = null; / 计算 TTJ 值 Integer TTJ = calcStkTTJ(stkCode, transDate, paramN); if (TTJ = null) analysisValue = new AnalysisValue(); analysisValue.setStkCode(stkCode); analysisValue.setResultScore(0); analysisValue.setResultDesc(“数据不足,分析失败“); return analysisValue; / 计算资金增幅百分比 Double pricePerct = calcStkPricePerct(stkCode, transDate); if (pricePerct = null) analysisValue = new AnalysisValue(); analysisValue.setStkCode(stkCode); analysisValue.setResultScore(0); analysisValue.setResultDesc(“数据不足,分析失败“); return analysisValue; / 近几日出现量能平台 if (TTJ =1 int count = 0; / 将 date 移至量能突破的当天 do date = super.getStkTransDateUtil() .getBeforeTransDate(stkCode, date); count +; while (count halfPlatform) score += intRange; else score -= intRange; else / 看涨 if(score = null) score = 90; else score -= intRange; else / 量能平台当天 K 线为阴线 if (doubleRange =1 int count = 0; / 将 date 移至量能突破的当天 do date = super.getStkTransDateUtil() .getBeforeTransDate(date); count +; while (count halfPlatform) score += intRange; else score -= intRange; else / 看涨 if(score = null) score = 90; else score -= intRange; else / 量能平台当天 K 线为阴线 if (doubleRange =1 int count = 0; / 将 date 移至量能突破的当天 do date = super.getStkTransDateUtil() .getBeforeTransDate(date); count +; while (count halfPlatform) score += intRange; else score -= intRange; else / 看涨 if(score = null) score = 90; els

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论