【精选】PHP将股票日K线数据转换为半年K线数据

网极科技12个月前代码笔记145

将股票日K转换为半年K数据,可以用每年的7-1日作为分割点,分为上半年和下半年,开盘价应为分组开始的第一条数据的开盘价,收盘价应为分组数据的最后一条收盘价,最高和最低则为分组中的最高最低,成交量是累加的,如此计算,这里给出php的转换函数:

    // 将日K线数据转换为半年K线数据
    function convertToHalfYearKLine($data)
    {             
        $daily_k_data = $data;

        usort($daily_k_data, function($a, $b) {
            return strtotime($a['date']) - strtotime($b['date']);
        });


        $k_line_data = array();
        $last_group_end_date = '';

foreach ($daily_k_data as $key => $daily_data) {
    // 如果是第一个日期,则直接添加到一个新的分组里面
    if ($key == 0) {
        $k_line_data[] = array($daily_data);
        $last_group_end_date = $daily_data['date'];
        continue;
    }


        //获取当前日期的所在年份的上半年还是下半年
        $cur_time = date('md',strtotime($daily_data['date']))<701?date('Y',strtotime($daily_data['date'])).'13':date('Y',strtotime($daily_data['date'])).'14';

        //获取上个日期的所在年份的上半年还是下半年
         $last_time = date('md',strtotime($last_group_end_date))<701?date('Y',strtotime($last_group_end_date)).'13':date('Y',strtotime($last_group_end_date)).'14';
    // echo $cur_time.' '.$last_time;

    // 如果当前日期与上一个分组结束日期不是一个半年,则将当前日期的K线数据添加到一个新的分组里面
  
            
已隐藏部分内容,支付后自动显示
如有疑问请联系QQ:706448591
支付38元查看
print_r($k_line_data); }

相关文章

利用php函数获取中文汉字拼音首字母

利用php函数获取中文汉字拼音首字母

要获取中文汉字拼音的首字母,你可以使用第三方库,例如 pinyin。以下是使用 pinyin 库的示例代码: 首先,你需要安装 pinyin 库。你可以通过 Composer 进行安装,在项目根目录...

https网页无法加载http的文件,给html头部添加一段代码搞定

https网页无法加载http的文件,给html头部添加一段代码搞定

在强制要求https协议的情况下,一年一签的SSL很多时候忘记续签,导致成为http协议,进而引发文件加载不到的问题 https与http能否共存https地址中,如果加载了http资源,浏...

宝塔面板Nginx设置任意路径301重定向

宝塔面板Nginx设置任意路径301重定向

接到一个客户的诉求,需要将指定路径进行301重定向,由于宝塔设置重定向只有域名(即根目录),无法对子目录或其他任意路径进行重定向,所以需要手写Nginx的重定向规则。 301重定向和伪静态有...

Linux使用supervisor创建守护进程方法

Linux使用supervisor创建守护进程方法

下载最新的supervisor安装包: supervisor-4.2.5.tar.gz 安装步骤 wget https://www.wangjikeji.com/uploads/upload...

jQuery uploadify上传插件修改为ajax上传

jQuery uploadify上传插件修改为ajax上传

近期客户找到我们升级他们的老古董系统,这个系统创建于十几年前,使用了大量过时老旧的组件,需要更新替换,其中就包括了让很多程序员头疼的Flash组件。本篇文章记录下如何将jQuery uploadify...

centos7.6安装php7.4

centos7.6安装php7.4

在CentOS 7.6上安装PHP 7.4,你可以按照以下步骤进行操作: 首先,确保你的系统已经更新到最新的软件包版本。你可以使用以下命令来更新系统: sudo yum update 接下来,添...