agid])) { foreach ($g_flag_thread[$flagid] as &$val) { flag_thread_filter($val); } flag_thread_set($flagid, $g_flag_thread[$flagid]); } } return $g_flag_thread[$flagid]; } // 设置缓存 $key = flagid / $val = flagid下tid数组 function flag_thread_set($key, $val) { global $g_flag_thread; FALSE === $g_flag_thread and $g_flag_thread = website_get('flag_thread'); empty($g_flag_thread) and $g_flag_thread = array(); $g_flag_thread[$key] = $val; return website_set('flag_thread', $g_flag_thread); } // 删除flag下tid缓存 function flag_thread_delete_cache($flagid) { global $g_flag_thread; FALSE === $g_flag_thread and $g_flag_thread = website_get('flag_thread'); empty($g_flag_thread) and $g_flag_thread = array(); if (isset($g_flag_thread[$flagid])) { unset($g_flag_thread[$flagid]); website_set('flag_thread', $g_flag_thread); } return TRUE; } // Delete by tid / 通过tid删除flag下的主题和对应flagid缓存 function flag_thread_delete_by_tid($tid) { global $g_flag_thread; FALSE === $g_flag_thread and $g_flag_thread = website_get('flag_thread'); if (empty($g_flag_thread)) { $g_flag_thread = array(); } else { $thread = well_thread_read_cache($tid); $arrlist = flag_thread_find($tid, 1, $thread['flags']); $flagarr = $ids = array(); foreach ($arrlist as $val) { $flagarr[] = $val['flagid']; $ids[] = $val['id']; if (isset($g_flag_thread[$val['flagid']])) unset($g_flag_thread[$val['flagid']]); } website_set('flag_thread', $g_flag_thread); // 主键更新 flag_update($flagarr, array('count-' => 1)); // 主键删除 flag_thread_delete($ids); } return TRUE; } // 主键删除 通过$flagid删除flag下的主题和对应flagid缓存 function flag_thread_delete_by_flagid($flagid) { global $g_flag_thread; FALSE === $g_flag_thread and $g_flag_thread = website_get('flag_thread'); $read = flag_read_cache($flagid); if (empty($read)) return TRUE; $arrlist = flag_thread_find_by_flagid($flagid, 1, $read['count']); if (empty($arrlist)) return TRUE; $flagarr = $ids = array(); $n = 0; foreach ($arrlist as $val) { ++$n; $flagarr[] = $val['flagid']; $ids[] = $val['id']; if (isset($g_flag_thread[$flagid])) unset($g_flag_thread[$flagid]); } website_set('flag_thread', $g_flag_thread); // 主键更新 flag_update($flagarr, array('count-' => $n)); // 主键删除 $r = flag_thread_delete($ids); return $r; } ?>组保留的标签 余下为需要删除的标签 unset($oldtag[$key]); } } } if (!empty($oldtag)) { $tagids = array(); foreach ($oldtag as $tagid => $tagname) { $tagids[] = $tagid; } well_oldtag_delete($tagids, $tid); } $r = well_tag_process($tid, $fid, $create_tag, $tagarr); return $r; } // 删除标签和绑定的主题 function well_oldtag_delete($tagids, $tid) { $pagesize = count($tagids); $arrlist = well_tag_find_by_tagids($tagids, 1, $pagesize); $delete_tagids = array(); // 删除 $tagids = array(); $n = 0; foreach ($arrlist as $val) { ++$n; if (1 == $val['count']) { // 只有一个主题 $delete_tagids[] = $val['tagid']; } else { $tagids[] = $val['tagid']; } } !empty($delete_tagids) and well_tag_delete($delete_tagids); $arlist = well_tag_thread_find_by_tid($tid, 1, $n); if ($arlist) { $ids = array(); foreach ($arlist as $val) $ids[] = $val['id']; well_tag_thread_delete($ids); } !empty($tagids) and well_tag_update($tagids, array('count-' => 1)); } // 标签数据处理 $arr=新提交的数组 $tagarr=保留的旧标签 function well_tag_process($tid, $fid, $new_tags = array(), $tagarr = array()) { if (empty($tid)) return ''; // 新标签处理入库 if ($new_tags) { $threadarr = array(); $tagids = array(); $i = 0; $size = 5; $n = count($tagarr); $n = $n > $size ? $size : $size - $n; foreach ($new_tags as $name) { ++$i; $name = trim($name); $name = stripslashes($name); $name = strip_tags($name); $name = str_replace(array(' ', '#', "@", "$", "%", "^", '&', '·', '<', '>', ';', '`', '~', '!', '¥', '……', ';', '?', '?', '-', '—', '_', '=', '+', '.', '{', '}', '|', ':', ':', '、', '/', '。', '[', ']', '【', '】', '‘', ' ', ' ', ' ', ' ', ' '), '', $name); $name = htmlspecialchars($name, ENT_QUOTES); if ($name && $i <= $n) { // 查询标签 $read = well_tag_read_name($name); if ($read) { // 存在 count+1 $tagids[] = $read['tagid']; } else { // 入库 $arr = array('name' => $name, 'count' => 1); $tagid = well_tag_create($arr); FALSE === $tagid and message(-1, lang('create_failed')); $read = array('tagid' => $tagid, 'name' => $name); } $tag_thread = array('tagid' => $read['tagid'], 'tid' => $tid); $threadarr[] = $tag_thread; $tagarr[$read['tagid']] = $read['name']; } } !empty($threadarr) and tag_thread_big_insert($threadarr); !empty($tagids) and well_tag_update($tagids, array('count+' => 1)); } $json = empty($tagarr) ? '' : xn_json_encode($tagarr); return $json; } ?>内容的栏目 * @param int $category 0列表 1频道 2单页 3外链 * @return array */ function category_list($forumlist, $model = 0, $display = 0, $category = 0) { if (empty($forumlist)) return NULL; static $cache = array(); $key = $model . '-' . $display . '-' . $category; if (isset($cache[$key])) return $cache[$key]; if ($display) { foreach ($forumlist as $k => $val) { if (1 == $val['display'] && 1 == $val['type'] && $val['category'] == $category) { $cache[$key][$k] = $val; } } } else { foreach ($forumlist as $k => $val) { if (1 == $val['type'] && $val['category'] == $category) { $cache[$key][$k] = $val; } } } return empty($cache[$key]) ? NULL : $cache[$key]; } /** * @param $forumlist 所有版块列表 不分模型 * @param int $display 0全部CMS栏目 1在首页和频道显示内容的栏目 * @param int $category 0列表 1频道 2单页 3外链 * @return array */ function category_list_show($forumlist, $display = 0, $category = 0) { if (empty($forumlist)) return NULL; static $cache = array(); $key = $display . '-' . $category; if (isset($cache[$key])) return $cache[$key]; if ($display) { foreach ($forumlist as $k => $val) { if (1 == $val['display'] && 1 == $val['type'] && $val['category'] == $category) { $cache[$key][$k] = $val; } } } else { foreach ($forumlist as $k => $val) { if (1 == $val['type'] && $val['category'] == $category) { $cache[$key][$k] = $val; } } } return empty($cache[$key]) ? NULL : $cache[$key]; } /** * @param $forumlist 所有版块列表 * @return mixed BBS栏目数据(仅列表) 尚未开放bbs频道功能 */ function forum_list($forumlist) { if (empty($forumlist)) return array(); static $cache = array(); if (isset($cache['bbs_forum_list'])) return $cache['bbs_forum_list']; $cache['bbs_forum_list'] = array(); foreach ($forumlist as $_fid => $_forum) { if ($_forum['type']) continue; $cache['bbs_forum_list'][$_fid] = $_forum; } return $cache['bbs_forum_list']; } // 导航显示的版块 function nav_list($forumlist) { if (empty($forumlist)) return NULL; static $cache = array(); if (isset($cache['nav_list'])) return $cache['nav_list']; foreach ($forumlist as $fid => $forum) { if (0 == $forum['nav_display']) { unset($forumlist[$fid]); } } return $cache['nav_list'] = $forumlist; } ?>
2025-06-07 04:53:42 0次
根据当前市场数据,嘉泽新能(601619.SH)短期内股价波动区间预计在3.5-3.9元之间。截至5月31日最新交易数据显示,该股报收3.59元,较前一交易日微涨0.28%,但近五个交易日累计下跌4.46%。从技术面看,股价处于年线下方,52周波动区间为2.63-4.18元,当前市净率1.36倍,动态市盈率13.9倍,估值处于行业平均水平。考虑到6月将实施每股0.1元的分红方案,除权后股价或有短期填权机会,但需警惕外资持续减仓带来的压力——陆股通近5日净卖出460万股,累计持股成本4.58元,当前浮亏达25.17%。
深入分析股价走势的核心驱动因素,需要从三个维度展开:基本面显示公司2024年实现每股收益0.28元,机构预测2025年净利润增速约8%,对应动态市盈率12.7-13倍,低于电力行业中位市盈率21.5倍。这种估值差异主要源于公司区域性风电运营商的属性,其业绩增长受制于可再生能源补贴政策及区域消纳能力。值得注意的是,5月29日将实施可转债转股价调整至3.06元/股,该价格较当前股价存在14.8%的折价,可能引发转债持有人转股套利行为,对二级市场形成供给压力。
资金面呈现明显分化。虽然主力资金近20日净流出7821万元,但5月12日单日成交额达2.43亿元时股价最高触及3.92元,显示在特定价位存在较强承接力。外资持仓变化值得关注,截至5月31日陆股通持股比例降至0.36%,但60日累计净卖出仅170万股,减仓速度有所放缓。融资融券数据显示,当前融资余额占流通市值比例约1.2%,杠杆资金风险可控。
行业比较维度显示,电力板块近期表现分化。嘉泽新能总市值87.15亿元,在电力行业102家上市公司中排名第59位,属于中型电力运营商。相比同业,其股息率约2.79%(按0.1元分红计算),低于行业平均3.2%的水平,但高于部分成长型新能源企业。技术形态上,股价自4月25日低点3.57元反弹至5月9日高点3.85元后进入调整通道,MACD指标呈现底背离迹象,短期若能在3.55元前低位置获得支撑,有望构筑双底形态。
综合研判,嘉泽新能股价在三季度可能呈现先抑后扬走势。6月受分红除权影响,股价或下探3.5元支撑位,但随着夏季用电高峰来临及2025年半年报预增公告催化,三季度有望回升至3.8-4元区间。风险因素包括:全国电力市场化改革推进超预期可能挤压风电企业利润空间;宁夏地区新能源消纳政策变化;以及可转债转股带来的股本稀释效应。投资者需密切关注6月28日业绩说明会释放的经营信号,以及每日陆股通持仓变动情况。
本题链接: