public class MAUtils {private void test(int dayCount) {//算法公式:MA(C,X)=(X1+X2+…+XX)/X.//MA(C,1)=C/1=1(这里C=1,X=1);//MA(C,2)=(1+2)/2=1.5;//MA(C,3)=(1+2+3)/3=2;//MA(C,4)=(1+2+3+4)/4=2.5;//MA(C,5)=(1+2+3+4+5)/5=3.List<Data> dataList = new ArrayList<>();for (int i = 0; i < dayCount; i++) {Data data = new Data();data.setClosePrice(i + 1);data.setOpenPrice(i + 1);dataList.add(data);}List<Double> maResults = new ArrayList<>();for (int days = 0; days < dayCount; days++) {double sum = 0;for (int dataIdx = 0; dataIdx < dataList.size(); dataIdx++) {if (dataIdx > days) {break;}sum += dataList.get(dataIdx).getOpenPrice();}maResults.add(sum / (days + 1));}System.out.println("=============");System.out.println(maResults);}public static void main(String[] args) {new MAUtils().test(5);}class Data {Data() {}double closePrice;double openPrice;public double getClosePrice() {return closePrice;}public void setClosePrice(double closePrice) {this.closePrice = closePrice;}public double getOpenPrice() {return openPrice;}public void setOpenPrice(double openPrice) {this.openPrice = openPrice;}@Overridepublic String toString() {return "Data{" +"closePrice=" + closePrice +", openPrice=" + openPrice +'}';}}

注:自行BigDecimal处理

股票MA算法(Java实现)相关推荐

  1. 股票MA算法(JavaScript实现)

    //Script here//算法公式:MA(C,X)=(X1+X2+-+XX)/X. //MA(C,1)=C/1=1(这里C=1,X=1); //MA(C,2)=(1+2)/2=1.5; //MA( ...

  2. 《LeetCode力扣练习》第121题 买卖股票的最佳时机 Java

    <LeetCode力扣练习>第121题 买卖股票的最佳时机 Java 一.资源 题目: 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价 ...

  3. Java算法:华为机试算法(下),华为算法Java版,牛客网华为算法73~108题

    接上篇:Java算法:华为机试算法(中),华为算法Java版,牛客网华为算法55~72题   HJ73 计算日期到天数转换 计算日期到天数转换 题目描述 根据输入的日期,计算是这一年的第几天.. 测试 ...

  4. 推特雪花算法 java实现

    2019独角兽企业重金招聘Python工程师标准>>> package twiter.snowflake;/*** twitter的snowflake算法 -- java实现*/ p ...

  5. java dh算法_dh密钥交换算法java

    dh密钥交换算法java 迪菲-赫尔曼密钥交换(Diffie–Hellman key exchange,简称"D–H") 是一种安全协议. 它可以让双方在完全没有对方任何预先信息的 ...

  6. 数据结构和算法(Java)-张晨光-专题视频课程

    数据结构和算法(Java)-579人已学习 课程介绍         如果说各种编程语言是程序员的招式,那么数据结构和算法就相当于程序员的内功. 想写出精炼.优秀的代码,不通过不断的锤炼,是很难做到的 ...

  7. floyed java_Floyd算法java实现demo

    Floyd算法java实现,如下: package a; /** * ┏┓ ┏┓+ + * ┏┛┻━━━┛┻┓ + + * ┃ ┃ * ┃ ━ ┃ ++ + + + * ████━████ ┃+ * ...

  8. 快速排序算法 java 实现

    快速排序算法 java 实现 快速排序算法Java实现 白话经典算法系列之六 快速排序 快速搞定 各种排序算法的分析及java实现 算法概念 快速排序是C.R.A.Hoare于1962年提出的一种划分 ...

  9. java 哈希一致算法_一致哈希算法Java实现

    一致哈希算法(Consistent Hashing Algorithms)是一个分布式系统中常用的算法.传统的Hash算法当槽位(Slot)增减时,面临所有数据重新部署的问题,而一致哈希算法确可以保证 ...

最新文章

  1. Linux C中的basename函数用法示例
  2. SAP EWM - 其他主数据 - 运输主数据-1
  3. 简单备忘一下Linux下的wget和curl如何使用http proxy
  4. PL/SQL 的一些用法
  5. idea设置新增文件,自动添加到git
  6. jsoncpp使用中的总结
  7. maven中spring-boot-dependencies变量名冲突
  8. 腾讯实习笔试:关于几个有序数组求交集的问题
  9. JFreeChart(二)之饼图
  10. springmvc框架使用拦截器实现301永久重定向,其实用过滤器应该是更好
  11. 论文中三线式表格的快速插入(word)
  12. 最厉害的象棋软件_太牛了!象棋史上最厉害人机高手竟弃车跟软件对杀,就问你敢不敢...
  13. 079冒险岛mysql解封账号_Win7系统玩冒险岛079单机版输入账号密码后出现error38如何解决?...
  14. python爬取网课答案_高校邦网络数据采集与Python爬虫【带实验】网课答案
  15. BZOJ-3231 递归数列 矩阵连乘+快速幂
  16. 在大数据认知观和真实性不一样的?
  17. 2017年7月最新全国行政规划数据库
  18. 五阶最小二乘+迭代方法曲线拟合
  19. Android开发:按一定频率同时获取多个传感器数据
  20. 在maven中创建jsp依赖

热门文章

  1. 第三人称的英语作文我和我的计算机,以第三人称介绍自己的朋友英语作文
  2. Cesium-通过Shader添加圆形扩散效果
  3. 重磅!2019中山入户最新资讯,教你如何解决入户难题
  4. openlayers地图旋转_Openlayers实现地图的基本操作
  5. Arduino ULN2003驱动模块+28BYJ-48步进电机
  6. bim技术需要的计算机语言是,浅述BIM技术中的对象
  7. 文本文件和二进制文件
  8. UDS之BootLoader刷写流程介绍
  9. ZK框架的分析与应用
  10. 大厂争先成立的 “开源办公室” 有啥门道?