├── .gitignore ├── README.md ├── app ├── __init__.py ├── agent_delegater.py ├── agents.py ├── configs.py ├── index_store.json ├── market.py ├── memory.py ├── multi_key_index.py ├── prompt_generator.py ├── qstock_searcher.py ├── room.py ├── schemas.py ├── services │ └── info_utils.py ├── stock_analyzer.py ├── tools.py └── utils.py ├── docs └── estimate_llm_decission_performance.md ├── imgs ├── feature.png ├── flowchart.png ├── lab_result │ └── estimate_llm_decission_performance │ │ ├── fund_manager_0.png │ │ └── fund_manager_1.png ├── multi_index.png └── normal_index.png ├── news.csv ├── notebooks ├── baseline.ipynb ├── baseline_with_news.ipynb ├── demo.ipynb ├── estimate_llm_decission_performance.ipynb ├── index_store.json └── stock_data.csv ├── requirements.txt ├── stock_data.csv └── stock_news.csv /.gitignore: -------------------------------------------------------------------------------- 1 | .env 2 | # Byte-compiled / optimized / DLL files 3 | __pycache__/ 4 | *.py[cod] 5 | *.pyc 6 | 7 | # C extensions 8 | *.so 9 | 10 | # Distribution / packaging 11 | bin/ 12 | build/ 13 | develop-eggs/ 14 | dist/ 15 | eggs/ 16 | lib/ 17 | lib64/ 18 | parts/ 19 | sdist/ 20 | var/ 21 | *.egg-info/ 22 | .installed.cfg 23 | *.egg 24 | 25 | # Installer logs 26 | pip-log.txt 27 | pip-delete-this-directory.txt 28 | 29 | # Unit test / coverage reports 30 | .tox/ 31 | .coverage 32 | .cache 33 | nosetests.xml 34 | coverage.xml 35 | 36 | # Translations 37 | *.mo 38 | 39 | # Mr Developer 40 | .mr.developer.cfg 41 | .project 42 | .pydevproject 43 | 44 | # Rope 45 | .ropeproject 46 | 47 | # Django stuff: 48 | *.log 49 | *.pot 50 | 51 | # Sphinx documentation 52 | docs/_build/ 53 | 54 | # frontend_configs/ 55 | .codebox 56 | chat_save_dir/ 57 | data/ -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Quant-Agents (初始化开发中,欢迎感兴趣的联系我加入) 2 | 基于LLM-多智能体的量化股票分析、股价预测系统 3 | 4 | ## 如何使用LLM+多智能体进行股价预测 5 | 因为LLM如ChatGPT无法直接对于股票价格给出预测,也许出于道德考虑,或者是无法获取最新数据等原因。所以我们需要通过间接的方式进行股价预测。我们给出的方法是: 6 | 1. 通过LLM构建多个agent,结合新闻、股票技术指标等同步进行买卖行为的预测。(LLM可以很好的做到指令遵循和文本分析) 7 | 2. 通过买卖行为生成对应买卖报价单 8 | 3. 通过虚拟市场结合买卖单,计算出下一轮价格作为预测价格 9 | 10 | 11 | ### 流程图 12 | ![](./imgs/feature.png) 13 | ![flow chart](./imgs/flowchart.png) 14 | 15 | ### 多智能体系统设计 16 | 17 | 18 | ### Prompt 设计 19 | ```python 20 | prompt = """ 21 | **Background**: Chinese Stock trade Market, you should play the Role below and give your action(buy/sell) and your possibility(0 to 100) 22 | **Aim**: Maximum your profit no matter long or short term, depends on your Investment style 23 | **Role Description**: 24 | You are a senior stock trader using the funds raised for investment. 25 | You hope to achieve a better performance than other similar funds in the same time period, and need to consider whether to use game or cooperation tactics to achieve this. 26 | Your fund has a large amount of capital, so you need to consider the impact of buying and selling on market performance. 27 | 28 | Role Info: 29 | Role:Senior Trader 30 | Investment style: Value Investing 31 | Risk tolerance (0-10): 7 32 | Greediness (0-10): 7 33 | Investment aggressiveness (0-10): 7 34 | 35 | **Stock Fundamental Info**:Fundamental Information of 中大力德: 36 | { 37 | "报告期:2023中期": [ 38 | { 39 | "分类": "通用设备制造业", 40 | "营业收入(万)": 54000.0, 41 | "占主营收入比": 100.0, 42 | "毛利率": 21.17 43 | }, 44 | { 45 | "分类": "合计", 46 | "营业收入(万)": 54000.0, 47 | "占主营收入比": 100.0, 48 | "毛利率": 21.17 49 | } 50 | ] 51 | } 52 | 53 | 54 | **Technical indicators Info**:Price Info List sampled by 1 day: 55 | Price List: [36.35, 36.09, 37.34, 36.1, 35.25, 33.81, 34.45, 33.14, 36.45, 36.3, 37.73, 38.09, 37.66, 37.66, 39.14] 56 | Volume List: [201983.0, 124129.0, 199744.0, 144931.0, 90611.0, 94242.0, 80471.0, 74000.0, 116032.0, 171154.0, 243096.0, 196883.0, 165088.0, 118952.0, 186347.0] 57 | The mean price is sampled by frequency 1 day 58 | The long term period is 30 days, the short term period is 10 59 | The cross information is No cross 60 | The Bollinger info: 61 | bollinger status:normal, no reacing neither up nor down 62 | bollinger trend: Bollinger Middle Band Trend Up 63 | MACD Info: 64 | The macd line is no crossover and the histogram is 0.28 65 | 66 | **Related News**:[{"date": "2023-06-16 16:18:34", "title": "近日海外机构调研股名单", "content": "股价上涨的有中大力德、华利集团等,表现最好的是中大力德,累计涨幅为34.65%。股价下跌的有26只,跌幅最大的是康辰药业,累计跌幅为18.47%。(数据宝) 近10日海外机构调研股证券代码证券简称海外机构家数最新收盘价(元)期间涨跌幅(%)行业002896中大力德635.8334"}, {"date": "2023-06-14 17:09:26", "title": "速看 最新筹码集中股找到了(附股)", "content": "8.22机械设备001288运机集团10690-17.31-4.93机械设备301308江波龙25297-13.49-7.04电子002896中大力德30321-12.666.51机械设备301068大地海洋3080-12.454.48环保301286侨源股份4673-10.532"}, {"date": "2023-06-12 09:45:43", "title": "190家公司获机构调研(附名单)", "content": "机构调研股一览证券代码证券简称机构调研次数机构家数最新收盘价(元)期间涨跌幅(%)行业688268华特气体122981.03-4.61电子688283坤恒顺维112757.99-0.48通信002896中大力德18625.69-3.46机械设备688766普冉股份185168.00-3.77电子000513丽珠集团18238.752.03医药生物002867周大生18016"}, {"date": "2023-06-09 09:16:51", "title": "185家公司获机构调研(附名单)", "content": "60医药生物688283坤恒顺维112757.03-2.20通信688062迈威生物19420.58-10.33医药生物002867周大生29116.27-0.79纺织服饰002896中大力德18626.42-3.01机械设备688766普冉股份185161.59-10.24电子600633浙数文化17313.362.12传媒603209兴通股份16930"}, {"date": "2023-06-08 09:09:41", "title": "194家公司获机构调研(附名单)", "content": "16-4.86通信688139海尔生物110454.07-8.50医药生物688062迈威生物19421.78-3.71医药生物002896中大力德18626.40-5.04机械设备600633浙数文化17313.624.53传媒603918金桥信息16834.0822.59计算机300853申昊科技16132"}, {"date": "2023-06-08 17:03:18", "title": "股东户数降幅榜:5股最新股东户数降逾一成", "content": "748.43通信000790华神科技43184-8.41-2.29医药生物688500*ST慧辰4539-7.3312.19计算机002896中大力德34718-7.333.61机械设备300530领湃科技6067-7.30-8.08基础化工002871伟隆股份9575-7.01"}, {"date": "2023-06-05 09:03:54", "title": "301家公司获机构调研(附名单)", "content": "47机械设备688147微导纳米111451.104.18电力设备688139海尔生物110458.79-4.38医药生物300394天孚通信110172.825.89通信002896中大力德110126.61-3.45机械设备002559亚威股份1958.58-2.39机械设备600378昊华科技19337.55-1.65基础化工301052果麦文化19260"}, {"date": "2023-05-22 21:24:11", "title": "连续三天20CM涨停 机器人概念股丰立智能成色几何?", "content": "94%、远方信息(300306.SZ)、汉王科技(002362.SZ)、晋拓股份(603211.SH)、中大力德(002896.SZ)、柯力传感(603662.SH)、睿能科技(603933.SH)6只个股涨停,其中中大力德3天内第二次涨停,柯力传感和睿能科技均为两连板。 此外,美亚柏科(300188"}, {"date": "2023-05-21 17:20:22", "title": "国产RV减速器加速突破 相关企业扩产意愿强烈|行业观察", "content": "国内减速器企业不断定点突破,RV减速器国产化率处于加速提升阶段,相关企业纷纷入局。财联社记者从业内获悉,目前RV减速器下游需求比较旺盛,中大力德(002896.SZ)、秦川机床(000837.SZ)、巨轮智能(002031.SZ)在手订单饱和,相关公司扩产意愿强烈。 国产加速,企业扩产意愿强烈"}, {"date": "2023-05-18 17:38:05", "title": "股东户数降幅榜:11股最新股东户数降逾一成", "content": "28机械设备002363隆基机械39185-0.683.77汽车300481濮阳惠成25682-0.68-2.29电子300782卓胜微66314-0.66-6.53电子002896中大力德27978-0.6614.93机械设备300830金现代26425-0.6512.77计算机000728国元证券116627-0.650"}, {"date": "2023-05-16 17:03:40", "title": "筹码新动向:213股筹码趋向集中", "content": "85公用事业002363隆基机械39185-0.680.87汽车300481濮阳惠成25682-0.68-2.62电子300782卓胜微66314-0.66-3.47电子002896中大力德27978-0.661.15机械设备300830金现代26425-0.658.19计算机000728国元证券116627-0.650"}, {"date": "2023-04-28 16:52:01", "title": "海外机构调研股名单 伟星新材最受关注", "content": "22计算机002410广联达2658.00-13.48计算机300358楚天科技815.72-13.53医药生物002009天奇股份112.14-13.72机械设备002896中大力德121.70-13.72机械设备002727一心堂628.89-13.84医药生物002859洁美科技125.10-13.89电子300762上海瀚讯212"}, {"date": "2023-03-10 16:12:55", "title": "海外机构调研股名单 奥普特最受关注", "content": "43机械设备600515海南机场34.16-3.48综合000876新希望712.81-3.54农林牧渔688392骄成超声26128.00-3.59电力设备002896中大力德125.17-3.64机械设备002008大族激光128.21-3.65机械设备601528瑞丰银行17.51-3.72银行688690纳微科技453"}, {"date": "2023-03-15 21:13:39", "title": "3月16日上市公司重要公告集锦:国联证券控股股东竞得民生证券30.3%股份 成交价91.05亿元", "content": "江苏证监局拟决定:对徐元生给予警告,并处以六十万元罚款。 中大力德:拟设立新加坡全资子公司及泰国全资孙公司 中大力德002896)公告,为满足东南亚市场对减速电机、减速器等产品的日益增长需求和技术服务要求,公司拟在新加坡设立全资子公司新加坡中大力德智能传动公司,投资总额不超过3680万美元"}, {"date": "2023-03-10 17:13:12", "title": "筹码新动向:225股筹码趋向集中", "content": "022.79电力设备300289利德曼23422-1.01-2.44医药生物688001华兴源创9603-0.97-6.65机械设备002896中大力德32255-0.95-4.88机械设备603421鼎信通讯18290-0.940.29通信603090宏盛股份6681-0.93-9"}, {"date": "2023-03-02 17:10:02", "title": "9股最新股东户数降逾一成", "content": "022.21电力设备300289利德曼23422-1.01-0.16医药生物688001华兴源创9603-0.97-5.06机械设备002896中大力德32255-0.950.53机械设备603421鼎信通讯18290-0.943.34通信603090宏盛股份6681-0.930.00机械设备301333诺思格4358"}, {"date": "2023-03-08 14:09:30", "title": "速看 最新筹码集中股找到了(附股)", "content": "0.59电力设备300289利德曼23422-1.01-2.60医药生物688001华兴源创9603-0.97-6.44机械设备002896中大力德32255-0.95-5.93机械设备603421鼎信通讯18290-0.94-1.18通信603090宏盛股份6681-0.93"}, {"date": "2023-08-31 09:47:59", "title": "掘金龙虎榜 39股近期获机构净买入", "content": "747.95 301421 波长光电 37.69 4437.66 1177.90 3259.76 0.56 13456.74 002896 中大力德 6.08 5177.04 2093.14 3083.90 1.30 17440.32 600753 庚星股份 15.69 2951"}, {"date": "2023-08-30 15:32:28", "title": "涨停股复盘:7股封单超亿元", "content": "33计算机000670盈方微6.418.361275.558176.26电子002855捷荣技术11.001.00718.067898.65电子002896中大力德36.999.74167.046178.80机械设备002222福晶科技27.1710.25223.716078.20电子600877电科芯片13"}, {"date": "2023-08-30 11:56:35", "title": "34只股上午收盘涨停附股)", "content": "63电力设备688191智洋创新21.843.64666.7614562.07电力设备688651盛邦安全65.5326.55216.8114207.46计算机002896中大力德36.999.37338.6112525.19机械设备688135利扬芯片22.936.91510.1411697.51电子002855捷荣技术11"}] 67 | 68 | You should only respond in JSON format as described below 69 | Response Format: 70 | {'Risk tolerance': 0, 'Investment style': 'style', 'Investment aggressiveness': 2, 'decisions': [{'action': 'buy or sell', 'probability': 20, 'percent': 'how much percent you wanna sell/buy. float type,0-100'}]} 71 | Ensure the response can be parsed by Python json.loads. Don't explain reasons 72 | 73 | 74 | """ 75 | ``` 76 | ## 🎯 Key Features 77 | 78 | ## Key Points 79 | - 如何使用LLM进行复杂的股价预测 80 | 81 | ## 如何判断新闻是否可能和标的相关? 82 | 83 | ### 传统通过向量相似度判断 84 | ![](./imgs/normal_index.png) 85 | 86 | ### Multi-index 方法 87 | 我们常识引入了一种新的Multi-index的方法来从市场中的所有新闻中,找出和标的相关的新闻。通过对于与标的强相关的历史新闻进行实体抽取,获取到新的**index node**作为相似度匹配的索引。当新的新闻出现时,通过判断是否与相关索引相似来判断新的新闻是否应该加入到prompt引擎中。 88 | 例如对于测试标的**捷荣技术**: 89 | 历史新闻: 90 | - “华为概念股”捷荣技术盘中再次涨停,录得21天16板。 9月26日晚,东莞捷荣技术股份有限公司(捷荣技术,002855)就股票交易异常波动及严重异常波动发布公告,再次强调近期公司经营情况及内外部经营环境未发生重大变化,今年上半年华为业务占比只有3.7%,占公司整体营业收入较小 91 | 92 | 进行提取后的实体作为索引节点: 93 | - 华为 94 | - 东莞捷荣技术股份有限公司 95 | 96 | 历史新闻: 97 | - 2024、2025年中国、欧洲市场将相继迎来快速增长。需求快速增长背景下,海外供应或迎瓶颈,有望加快国内风电产业链出口。 捷荣技术走出21天16板 年内涨幅506.98% 华为概念股捷荣技术今日再度发力涨停,走出21天16板的上涨行情,年内累计大涨506.98%,今日盘中一度超过鸿博股份,成为年内涨幅最大的个股 98 | 99 | 进行提取后的实体作为索引节点: 100 | - 中国 101 | - 欧洲 102 | - 风电产业链 103 | - 华为 104 | - 德恩精工 105 | 106 | 107 | ![](./imgs/multi_index.png) -------------------------------------------------------------------------------- /app/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangzhejian/quantgpt-agents/128273627b8e9f8426f71799f9da3674a75c0314/app/__init__.py -------------------------------------------------------------------------------- /app/agent_delegater.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | import schemas 3 | from agents import BaseTraderAgent,BeginnerTrader, FundManager,SeniorTrader 4 | from typing import List 5 | from utils import generate_single_message 6 | 7 | 8 | class BaseAgentDelegater(): 9 | def __init__(self): 10 | clss = [SeniorTrader, BeginnerTrader, FundManager] 11 | self.agents:List[BaseTraderAgent] = [] 12 | for cls in clss: 13 | self.agents += self._init_agents(cls=cls, size=5) 14 | self._init_agents_property( 15 | mean_cost=10, 16 | sigma=0, 17 | size=len(self.agents), 18 | mean_cash=10000, 19 | mean_share=1000 20 | ) 21 | return 22 | 23 | 24 | def set_agents_prompt_func(self, prompt_func:callable): 25 | for agent in self.agents: 26 | agent.set_prompt_func(prompt_func) 27 | 28 | def generate_normal_distribution(self, mean, sigma, size): 29 | """ 30 | Generate a normal distribution with a custom mean and standard deviation (sigma). 31 | 32 | :param mean: The mean value of the normal distribution. 33 | :param sigma: The standard deviation (sigma) of the normal distribution. 34 | :param size: The number of samples to generate. 35 | :return: A numpy array containing the generated samples. 36 | """ 37 | return np.random.normal(loc=mean, scale=sigma, size=size).tolist() 38 | 39 | def _init_agents(self,cls, size): 40 | return [cls() for _ in range(size)] 41 | 42 | # def _get_agents(self, cls, size): 43 | # return [cls() for _ in range(size)] 44 | 45 | def _init_agents_property(self, mean_cost, sigma, size, mean_cash, mean_share): 46 | cost_distribution = self.generate_normal_distribution(mean_cost, mean_cost / 5, size) 47 | cash_distribution = self.generate_normal_distribution(mean_cash, mean_cash / 5, size) 48 | share_distribution = self.generate_normal_distribution(mean_share, mean_share / 5, size) 49 | property_params = zip( cost_distribution, cash_distribution, share_distribution) 50 | for index, item in enumerate(property_params): 51 | cost, cash, shares = item 52 | self.agents[index].set_property(cost, cash, shares) 53 | 54 | def predict_belief(self) -> List[schemas.Order]: 55 | order_list = [] 56 | for agent in self.agents: 57 | belief = agent.predict_belief() 58 | agent.set_agent_belief(belief) 59 | orders = agent.plan() 60 | order_list += orders 61 | return order_list 62 | 63 | async def apredict_believes(self): 64 | order_list = [] 65 | for agent in self.agents: 66 | belief = await agent.apredict_believes() 67 | agent.set_agent_belief(belief) 68 | orders = agent.plan() 69 | order_list += orders 70 | return order_list 71 | 72 | 73 | def _init_stock_info(self,fundamental_info_prompt: str, tech_info_prompt:str, price: float, news_info: str): 74 | for agent in self.agents: 75 | agent.set_stock_infos( 76 | fundamental_info_prompt=fundamental_info_prompt, 77 | tech_info_prompt=tech_info_prompt, 78 | news_info=news_info 79 | ) 80 | agent.set_price(price) 81 | 82 | -------------------------------------------------------------------------------- /app/agents.py: -------------------------------------------------------------------------------- 1 | import time 2 | import schemas 3 | import random 4 | import json 5 | from typing import List 6 | from prompt_generator import generate_agent_predict_prompt 7 | from utils import generate_single_message,agenerate_n_message 8 | import uuid 9 | from configs import GLOBAL_VERBOSE 10 | 11 | class BaseTraderAgent(object): 12 | role :schemas.AgentRole = None 13 | def __init__(self): 14 | self.verbose = GLOBAL_VERBOSE 15 | self.role_description = None 16 | self.prompt_func = generate_agent_predict_prompt 17 | # self.role: schemas.AgentRole = role 18 | self.uid = f"{self.role.value}_{uuid.uuid4().hex}" 19 | 20 | self.agent_info = schemas.AgentInfo( 21 | role = self.role, 22 | risk_tolerance = 1, 23 | greed = 0, 24 | investment_aggressiveness = 1, 25 | investment_style = schemas.InvestmentStyle.VALUE_INVESTING.value 26 | ) 27 | 28 | # self.risk_tolerance = 1 #风险承受能力 29 | # self.agressiveness = 1 #激进度 30 | # self.investment_style = None #投资风格:[短期博弈,中期趋势,长期价值] 31 | # self.greddy_level = 1 #贪婪程度 32 | self.news_info = None 33 | self.hold_share = 1000 #持仓份额 34 | self.current_round = 0 #当前迭代轮数 35 | self.previous_actions = [] 36 | self.next_action = None 37 | self.current_stock_price = 1 38 | self.price_floating_percent = 0.02 39 | self.buy_probability,self.sell_probability,self.sell_percent,self.buy_percent =0,0,0,0 40 | 41 | def __repr__(self): 42 | return ( 43 | f"\nuid: {self.uid}\n" 44 | f"cash:{self.cash}, cost:{self.cost}, share:{self.shares}" 45 | ) 46 | 47 | def _init_price_info(self): 48 | 49 | return 50 | 51 | def set_news_info(self, news_info): 52 | self.news_info = news_info 53 | 54 | def set_prompt_func(self, func:callable): 55 | self.prompt_func = func 56 | 57 | def set_price(self,price: float=1): 58 | self.current_stock_price = price 59 | 60 | def _init_property(self, cash_mid, share_mean, cost_mean): 61 | self.cash=10000 62 | self.hold_share=1000 63 | 64 | def set_property(self,cost,cash,shares): 65 | self.cash=cash 66 | self.shares=shares 67 | self.cost=cost 68 | 69 | def _agent_info(self): 70 | return self.agent_info 71 | 72 | def set_agent_params(self, agent_info:schemas.AgentInfo): 73 | self.agent_info=agent_info 74 | 75 | 76 | def set_stock_infos(self,fundamental_info_prompt: str, tech_info_prompt:str, news_info:str): 77 | self.fundamental_info_prompt =fundamental_info_prompt 78 | self.tech_info_prompt =tech_info_prompt 79 | self.set_news_info(news_info) 80 | 81 | def set_params(self, agent_params): 82 | (cost, cash) = agent_params 83 | self.cash = cash 84 | self.cost = cost 85 | 86 | async def apredict_believes(self,n:int=5, temperature:float = 0.5)-> List[schemas.ResponseAgent]: 87 | prompt = self.prompt_func( 88 | role_description=self.role_description, 89 | agent_info=self._agent_info(), 90 | fundamental_info_prompt=self.fundamental_info_prompt, 91 | tech_info_prompt=self.tech_info_prompt, 92 | news_prompt = self.news_info 93 | ) 94 | if self.verbose: 95 | print(prompt) 96 | generations=await agenerate_n_message(prompt=prompt, temperature=temperature, n = n) 97 | responses = [] 98 | for item in generations.generations[0]: 99 | text = item.text 100 | text= text.replace("'", '"') 101 | response_obj = schemas.ResponseAgent.parse_raw(text) 102 | responses.append(response_obj) 103 | print(responses) 104 | return responses 105 | 106 | 107 | def predict_belief(self) -> schemas.ResponseAgent: 108 | prompt = self.prompt_func( 109 | role_description=self.role_description, 110 | agent_info=self._agent_info(), 111 | fundamental_info_prompt=self.fundamental_info_prompt, 112 | tech_info_prompt=self.tech_info_prompt, 113 | news_prompt = self.news_info 114 | ) 115 | if self.verbose: 116 | print(prompt) 117 | completion=generate_single_message(prompt=prompt, temperature=1.2) 118 | completion = completion.replace("'", '"') 119 | # print(completion) 120 | # json_obj = json.loads(completion) 121 | # print(json_obj) 122 | response_obj = schemas.ResponseAgent.parse_raw(completion) 123 | return response_obj 124 | 125 | def set_agent_belief(self, agent_response:schemas.ResponseAgent): 126 | buy_probability, buy_percent, sell_probability, sell_percent = 0,0,0,0 127 | for decision in agent_response.decisions: 128 | if decision.action.lower() == 'buy': 129 | buy_probability = decision.probability 130 | buy_percent = decision.percent 131 | elif decision.action.lower() == 'sell': 132 | sell_percent=decision.percent 133 | sell_probability = decision.probability 134 | 135 | self.belief(buy_probability, buy_percent, sell_probability, sell_percent) 136 | 137 | # for decision in response_obj.decisions: 138 | 139 | 140 | 141 | def set_cost(self, cost): 142 | self.cost = cost 143 | 144 | def generate_order(self, action, price, share ) -> schemas.Order: 145 | return schemas.Order( 146 | uid = self.uid, 147 | action = action, 148 | price = price, 149 | share = share 150 | ) 151 | 152 | def percept(self, current_price): 153 | self.current_stock_price = current_price 154 | return 155 | 156 | def belief(self, buy_probability, buy_percent, sell_probability, sell_percent): 157 | self.buy_probability = buy_probability 158 | self.buy_percent = buy_percent 159 | self.sell_probability = sell_probability 160 | self.sell_percent = sell_percent 161 | 162 | def plan(self) -> List[schemas.Order]: 163 | orders = [] 164 | low, high = round(self.current_stock_price * (1-self.price_floating_percent), 2), round(self.current_stock_price * (1+self.price_floating_percent), 2) 165 | if random.random() <= self.buy_probability and self.cash > 0 and self.buy_percent > 0: 166 | buy_price = round(random.uniform(low, high),3) 167 | share = int(self.cash * self.buy_percent / buy_price / 100) 168 | orders.append(self.generate_order( 169 | action='buy', 170 | price = buy_price, 171 | share = share 172 | )) 173 | if random.random() <= self.sell_probability and self.shares > 0: 174 | sell_price = round(random.uniform(low, high),3) 175 | share = int(self.hold_share * self.sell_percent / 100) 176 | orders.append(self.generate_order( 177 | action='sell', 178 | price = sell_price, 179 | share = share 180 | )) 181 | return orders 182 | 183 | def execute(self): 184 | ''' 185 | generate buy/sell orders 186 | generate target prices 187 | ''' 188 | #do something 189 | self.previous_actions.append(self.next_action) 190 | self.next_action = None 191 | return 192 | 193 | 194 | def run(self): 195 | 196 | return 197 | 198 | 199 | 200 | class BeginnerTrader(BaseTraderAgent): 201 | role:schemas.AgentRole = schemas.AgentRole.BEGINNER 202 | def __init__(self,): 203 | super(BeginnerTrader, self).__init__() 204 | 205 | self.role_description = """ 206 | Role Description: You are a beginner stock trader, having recently stepped into the world of stock trading with a modest amount from your salary and savings. You are navigating the complexities of the stock market, eager to grow your financial portfolio. 207 | 208 | Examples: 209 | - If your investment aggressiveness is high, you are exploring various stocks, ready to take calculated risks for potential higher returns. You are constantly educating yourself about market trends and maybe even dabbling in some blue-chip stocks or tech startups with promising growth. 210 | - If your investment aggressiveness is low, you prefer sticking to safer investment options, aiming for a steady growth pattern that would give you about a 7% annualized rate of return. You likely lean towards dividend stocks, bonds, or ETFs that track the broader market. 211 | - If your greediness is high, you find yourself often contemplating larger gains, which makes you consider adjusting your take-profit price upwards. Sometimes, you are tempted by the rapid gains from day trading or high-growth stocks, even though you know it involves higher risks. 212 | 213 | Behavioral Guidelines: 214 | - Your trading volume is not significant enough to influence market prices, ensuring that your actions do not affect stock market dynamics. 215 | - You are aware of your limited experience and are cautious about not overextending your financial resources. You often seek educational resources or advice from more experienced traders. 216 | - You understand the importance of diversification and try to apply it within the constraints of your available funds. 217 | - Emotionally, you find yourself between excitement and anxiety, often tracking stock prices several times a day and pondering your next moves. 218 | 219 | Remember, as a beginner trader, each decision is a learning opportunity, and each trade contributes to your experience, helping you to become more confident and informed in your future trading strategies. 220 | 221 | """ 222 | # self.role_description = """ 223 | # You are a beginner stock trader, using your salary and savings. The amount is not large. 224 | # if your investment_aggressiveness is high, it means you attempt to earn more extra money. 225 | # if your investment_aggressiveness is low, it means you just want to have about 7% Annualized rate of return. 226 | # if your greediness is high, it means you wanna earn more benifits and increase take profit price." 227 | # your trading action will not affect the market. 228 | # """ 229 | 230 | self.agent_info = schemas.AgentInfo( 231 | role = self.role, 232 | risk_tolerance = 1, 233 | greed = 1, 234 | investment_aggressiveness = 1, 235 | investment_style = schemas.InvestmentStyle.ACTIVITE_INVESTING.value 236 | ) 237 | 238 | 239 | 240 | 241 | 242 | class SeniorTrader(BaseTraderAgent): 243 | role:schemas.AgentRole = schemas.AgentRole.SENIOR 244 | def __init__(self,): 245 | super(SeniorTrader, self).__init__() 246 | 247 | # self.role_description = """ 248 | # You are a senior stock trader using the funds raised for investment. 249 | # You hope to achieve a better performance than other similar funds in the same time period, and need to consider whether to use game or cooperation tactics to achieve this. 250 | # Your fund has a large amount of capital, so you need to consider the impact of buying and selling on market performance. 251 | # """ 252 | self.role_description = """ 253 | Senior Trader: You are a senior stock trader, renowned in the trading community for your decades of experience and keen market insights. You are responsible for managing a substantial portfolio, often encompassing multi-million dollar positions across various asset classes. 254 | - **Asset Distribution**: Given your vast experience, your portfolio is diverse, ranging from blue-chip stocks, growth stocks, ETFs, commodities, to foreign exchange. 255 | - **Investment Philosophy**: Over the years, you've developed a refined trading strategy that melds technical analysis with fundamental research. 256 | 257 | if your investment_aggressiveness is high: 258 | - **Approach**: You employ strategies such as high-frequency trading or leveraged investments to amplify returns. You are not averse to dabbling in volatile sectors, emerging markets, or innovative industries like biotech and fintech. 259 | - **Objective**: Your primary goal is to beat market benchmarks consistently, aiming for top-tier returns. 260 | 261 | if your investment_aggressiveness is low: 262 | - **Approach**: You lean heavily on blue-chip stocks, established companies, and government or corporate bonds. You might also have a significant position in precious metals as a hedge against market volatility. 263 | - **Objective**: Your primary aim is wealth preservation with steady growth, targeting returns that outpace inflation while avoiding significant drawdowns. 264 | 265 | if your greediness is high: 266 | - **Risk Management**: While you have risk management strategies in place, your focus tends to be on maximizing each trade's profit potential. This might involve holding positions longer than initially planned or leveraging positions to amplify gains. 267 | - **Trading Frequency**: You are an active trader, making multiple trades per week, if not per day. Your keen eye is always on the lookout for short-term opportunities or market inefficiencies. 268 | 269 | if your greediness is low: 270 | - **Risk Management**: You employ stringent stop-loss orders, diversification strategies, and often consult with risk management tools or teams before making substantial moves. 271 | - **Trading Frequency**: You believe in the 'buy and hold' strategy, making infrequent trades, focusing instead on the long-term value proposition of each asset. 272 | 273 | Market Influence: Given the size and volume of your trades, your actions have the potential to cause minor price movements, especially when dealing with small-cap stocks or less liquid markets. This influence demands discretion and strategy in execution to avoid inadvertently moving the market. 274 | 275 | """ 276 | 277 | self.agent_info = schemas.AgentInfo( 278 | role = self.role, 279 | risk_tolerance = 1, 280 | greed = 1, 281 | investment_aggressiveness = 1, 282 | investment_style = schemas.InvestmentStyle.VALUE_INVESTING.value 283 | ) 284 | 285 | class FundManager(BaseTraderAgent): 286 | role:schemas.AgentRole = schemas.AgentRole.FUNDMANAGER 287 | def __init__(self,): 288 | super(FundManager, self).__init__() 289 | 290 | self.role_description = """ 291 | You are a fund manager, using the funds raised for investment. 292 | You hope to achieve a better performance than other similar funds in the same time period, and need to consider whether to use game or cooperation tactics to achieve this. 293 | Your fund has a large amount of capital, so you need to consider the impact of buying and selling on market performance. 294 | """ 295 | self.agent_info = schemas.AgentInfo( 296 | role = self.role, 297 | risk_tolerance = 1, 298 | greed = 1, 299 | investment_aggressiveness = 1, 300 | investment_style = schemas.InvestmentStyle.VALUE_INVESTING.value 301 | ) 302 | 303 | 304 | def generate_market_comment(self): 305 | prompt = f"" 306 | prompt += self.role_description 307 | prompt += '\n\n' 308 | prompt += "Command:\n Please generate a comment or news about the stock, based on its recent prices, techinical indicators and fundamental information of the company." 309 | prompt += "The comment or news is faced to beginner and senior traders, try to affect their judgment, to let you be in a benificial position in this game." 310 | prompt += "For example, if you wanna buy this stock in a lower price, you should generate a negative comment about this stock, to let others sell the stock." 311 | prompt += "If your cost is pretty low and you got some profits and wanna sell stock, you should generate a positive comment to affect them buy the stock, which will make the price remains when you selling." 312 | prompt += "You need to take into account the recipient's current decision preferences in order to enhance or change them." 313 | prompt += '\n\n' 314 | return prompt 315 | 316 | -------------------------------------------------------------------------------- /app/configs.py: -------------------------------------------------------------------------------- 1 | import os 2 | from dotenv import load_dotenv 3 | load_dotenv() 4 | OPENAI_API_KEY = os.environ.get('OPENAI_API_KEY') 5 | OPENAI_API_BASE = os.environ.get('OPENAI_API_BASE') 6 | GLOBAL_VERBOSE = True -------------------------------------------------------------------------------- /app/market.py: -------------------------------------------------------------------------------- 1 | from typing import List 2 | from schemas import Order 3 | 4 | 5 | class StockExchange: 6 | def __init__(self): 7 | self.buy_orders:List[Order] = [] 8 | self.sell_orders:List[Order]= [] 9 | self.last_traded_price = None # to store the last matched price 10 | 11 | def add_order(self, order: Order): 12 | if order.action == 'buy': 13 | self.buy_orders.append(order) 14 | self.buy_orders.sort(key=lambda x: x.price, reverse=True) 15 | else: 16 | self.sell_orders.append(order) 17 | self.sell_orders.sort(key=lambda x: x.price) 18 | 19 | def match_orders(self): 20 | matches = [] 21 | 22 | while self.buy_orders and self.sell_orders: 23 | best_buy = self.buy_orders[0] 24 | best_sell = self.sell_orders[0] 25 | 26 | if best_buy.price >= best_sell.price: 27 | traded_shares = min(best_buy.share, best_sell.share) 28 | matches.append((best_buy, best_sell, traded_shares)) 29 | 30 | # 更新最后的成交价格 31 | self.last_traded_price = best_sell.price 32 | 33 | if best_buy.share > best_sell.share: 34 | self.buy_orders[0] = Order( 35 | uid=best_buy.uid, 36 | action=best_buy.action, 37 | price=best_buy.price, 38 | share=best_buy.share - traded_shares) 39 | self.sell_orders.pop(0) 40 | elif best_buy.share < best_sell.share: 41 | self.sell_orders[0] = Order( 42 | uid=best_sell.uid, 43 | action= best_sell.action, 44 | price=best_sell.price, 45 | share=best_sell.share - traded_shares) 46 | self.buy_orders.pop(0) 47 | else: 48 | self.buy_orders.pop(0) 49 | self.sell_orders.pop(0) 50 | else: 51 | break 52 | 53 | return matches 54 | 55 | def get_last_price(self): 56 | """ 57 | if there is still buy orders, the max one should be the last price 58 | """ 59 | if self.buy_orders and len(self.buy_orders) > 0: 60 | return max([item.price for item in self.buy_orders]) 61 | return self.last_traded_price 62 | 63 | 64 | -------------------------------------------------------------------------------- /app/memory.py: -------------------------------------------------------------------------------- 1 | """ 2 | @Time : 2023/8/10 3 | @Author : ZhejianZhang 4 | @File : memory.py 5 | """ 6 | from collections import defaultdict 7 | from typing import Iterable, Type, List 8 | 9 | # from metagpt.actions import Action 10 | from schemas import Message 11 | class Memory: 12 | """The most basic memory: super-memory""" 13 | 14 | def __init__(self): 15 | """Initialize an empty storage list and an empty index dictionary""" 16 | self.storage: list[Message] = [] 17 | # self.index: dict[Type[Action], list[Message]] = defaultdict(list) 18 | 19 | def add(self, message: Message): 20 | """Add a new message to storage, while updating the index""" 21 | if message in self.storage: 22 | return 23 | self.storage.append(message) 24 | # if message.cause_by: 25 | # self.index[message.cause_by].append(message) 26 | 27 | def add_batch(self, messages: Iterable[Message]): 28 | for message in messages: 29 | self.add(message) 30 | 31 | def get_by_role(self, role: str) -> List[Message]: 32 | """Return all messages of a specified role""" 33 | return [message for message in self.storage if message.role == role] 34 | 35 | def get_by_content(self, content: str) -> List[Message]: 36 | """Return all messages containing a specified content""" 37 | return [message for message in self.storage if content in message.content] 38 | 39 | def delete(self, message: Message): 40 | """Delete the specified message from storage, while updating the index""" 41 | self.storage.remove(message) 42 | # if message.cause_by and message in self.index[message.cause_by]: 43 | # self.index[message.cause_by].remove(message) 44 | 45 | def clear(self): 46 | """Clear storage and index""" 47 | self.storage = [] 48 | # self.index = defaultdict(list) 49 | 50 | def count(self) -> int: 51 | """Return the number of messages in storage""" 52 | return len(self.storage) 53 | 54 | def try_remember(self, keyword: str) -> List[Message]: 55 | """Try to recall all messages containing a specified keyword""" 56 | return [message for message in self.storage if keyword in message.content] 57 | 58 | def get(self, k=0) -> List[Message]: 59 | """Return the most recent k memories, return all when k=0""" 60 | return self.storage[-k:] 61 | 62 | def remember(self, observed: List[Message], k=0) -> List[Message]: 63 | """remember the most recent k memories from observed Messages, return all when k=0""" 64 | already_observed = self.get(k) 65 | news: list[Message] = [] 66 | for i in observed: 67 | if i in already_observed: 68 | continue 69 | news.append(i) 70 | return news 71 | 72 | # def get_by_action(self, action: Type[Action]) -> List[Message]: 73 | # """Return all messages triggered by a specified Action""" 74 | # return self.index[action] 75 | 76 | # def get_by_actions(self, actions: Iterable[Type[Action]]) -> List[Message]: 77 | # """Return all messages triggered by specified Actions""" 78 | # rsp = [] 79 | # for action in actions: 80 | # if action not in self.index: 81 | # continue 82 | # rsp += self.index[action] 83 | # return rsp -------------------------------------------------------------------------------- /app/multi_key_index.py: -------------------------------------------------------------------------------- 1 | from pydantic import BaseModel 2 | from typing import List, Optional 3 | import json 4 | from langchain.embeddings import OpenAIEmbeddings 5 | from langchain.vectorstores.faiss import FAISS 6 | from dotenv import load_dotenv 7 | import os 8 | import faiss 9 | from langchain.vectorstores.utils import DistanceStrategy 10 | 11 | PARSE_FOLDER_PATH = os.path.join(os.getcwd(), 'parse_res') 12 | load_dotenv() 13 | openai_api_key= os.getenv('LITELLM_OPENAI_API_KEY') 14 | openai_api_base= os.getenv('LITELLM_OPENAI_API_BASE') 15 | # class VectorItem(BaseModel): 16 | # embeddings: List[List[float]] 17 | # keys: List[str] 18 | # content: str 19 | 20 | 21 | # class ChainItem(BaseModel): 22 | # embedding:List[float] 23 | # text: str 24 | 25 | 26 | # @property 27 | # def is_key(self): 28 | # return self.text.startswith('chainkey_') 29 | 30 | # @property 31 | # def key(self): 32 | # return self.text.replace('chainkey_',"") 33 | 34 | # @property 35 | # def content(self) -> str: 36 | # if self.is_key(): 37 | # return self.key() 38 | # else: 39 | # return self.text 40 | 41 | 42 | class IndexNode(BaseModel): 43 | id: str 44 | embedding:Optional[List[float]] = None 45 | content: str 46 | 47 | class TextChunk(BaseModel): 48 | id: str 49 | embedding:Optional[List[float]] = None 50 | content: str 51 | index_node_ids: List[str] 52 | 53 | 54 | class IndexStore(): 55 | filter_key_words = [ 56 | '成交量',"投资者", "投资风险", "上市公司股东","换手率", "成交额", "振幅" 57 | ] 58 | def __init__(self,): 59 | self.node_to_chunk = {} 60 | self.chunk_to_node = {} 61 | self.chunks:List[TextChunk] = [] 62 | self.index_nodes:List[IndexNode] = [] 63 | self.embedding = OpenAIEmbeddings(openai_api_key=openai_api_key, 64 | openai_api_base=openai_api_base) 65 | return 66 | 67 | def find_node(self, node_id:str) -> IndexNode: 68 | for node in self.index_nodes: 69 | if node.id == node_id: return node 70 | return None 71 | 72 | def add_chunk(self,chunk: TextChunk): 73 | if chunk not in self.chunks: 74 | self.chunks.append(chunk) 75 | for id in chunk.index_node_ids: 76 | node = self.find_node(node_id=id) 77 | if node is None: 78 | return 79 | if node.content in self.node_to_chunk.keys(): 80 | val = self.node_to_chunk[node.content].copy() 81 | val.append(chunk.id) 82 | self.node_to_chunk[node.content] = val 83 | else: 84 | self.node_to_chunk[node.content] = [chunk.id] 85 | 86 | def add_node(self, index_node:IndexNode): 87 | if index_node not in self.index_nodes: 88 | self.index_nodes.append(index_node) 89 | 90 | def contains(self, node_content: str): 91 | return node_content in self.node_to_chunk.keys() 92 | 93 | def save(self, path): 94 | json_to_write = { 95 | "chunks":[item.dict() for item in self.chunks], 96 | "index_nodes": [item.dict() for item in self.index_nodes], 97 | "node_to_chunk": self.node_to_chunk, 98 | "chunk_to_node": self.chunk_to_node 99 | } 100 | json.dump( 101 | json_to_write, 102 | open(path, 'w'), 103 | indent=4, 104 | ensure_ascii=False) 105 | 106 | def load_from_file(self, path): 107 | index_store = json.loads( 108 | open(path, 'r').read() 109 | 110 | ) 111 | self.node_to_chunk = index_store.get('node_to_chunk') 112 | self.chunk_to_node = index_store.get('chunk_to_node') 113 | self.chunks = [TextChunk.parse_obj(chunk) for chunk in index_store.get('chunks', [])] 114 | self.index_nodes = [IndexNode.parse_obj(node) for node in index_store.get('index_nodes', [])] 115 | self.init_vectodstore() 116 | 117 | def add_node_embeddings(self): 118 | texts = [item.content for item in self.index_nodes] 119 | embeddings = self.embedding.embed_documents(texts) 120 | for index,item in enumerate(self.index_nodes): 121 | item.embedding=embeddings[index] 122 | 123 | def init_vectodstore(self): 124 | print(len(self.index_nodes),len(self.chunks)) 125 | node_vector_base= FAISS.from_texts( 126 | texts = [item.content for item in self.index_nodes], 127 | embedding=self.embedding, 128 | metadatas=[{'node_id':item.id} for item in self.index_nodes], 129 | distance_strategy=DistanceStrategy.COSINE 130 | ) 131 | 132 | self.node_vector_store = node_vector_base 133 | 134 | 135 | def search_nodes(self,query:str)-> List[IndexNode]: 136 | search_result = self.node_vector_store.similarity_search_with_score( 137 | query=query, 138 | threshold=0.5 139 | ) 140 | print(search_result) 141 | index_nodes = [self.find_node(node_id=doc.metadata['node_id']) for doc,score in search_result] 142 | return index_nodes 143 | 144 | 145 | 146 | 147 | # class IndexCollections(BaseModel): 148 | # items: List[ChainItem] 149 | # id: str 150 | 151 | -------------------------------------------------------------------------------- /app/prompt_generator.py: -------------------------------------------------------------------------------- 1 | import json 2 | from typing import Any, Callable, Dict, List, Optional 3 | import schemas 4 | 5 | keywords_response_format = {"keywords":["keyword","keyword"]} 6 | new_correlation_response_format = { "Relevance":100,"Impact":"Possitive","Significance":80} 7 | agent_response_format = {"Risk tolerance": 0, "Investment style": "style","Investment aggressiveness": 2,"decisions":[{"action": "buy or sell","probability": 20, "percent":"how much percent you wanna sell/buy. float type,0-100"}]} 8 | 9 | 10 | def generate_stock_information( stock:schemas.Stock): 11 | prompt = "" 12 | if stock.name: 13 | prompt += f"Company Name:{stock.name}\n" 14 | if stock.main_business: 15 | prompt += f"Company financial Report: {stock.main_business}\n" 16 | if stock.fundamental_information: 17 | prompt += f"Fundamental Information: {stock.fundamental_information}\n" 18 | 19 | if stock.fundamental_analysis: 20 | prompt += f"Fundamental Analysis: {stock.fundamental_analysis}\n" 21 | return prompt 22 | 23 | def generate_stock_mean_price_prompt( mean_price_info:schemas.MeanPriceInfo): 24 | return ( 25 | f"Mean Price Sampled in {mean_price_info.sample_frequency.value} Info: \n" 26 | f"Long SMA period: {mean_price_info.long_period}\n" 27 | f"Short SMA period: {mean_price_info.short_period}\n" 28 | f"Crossover: Short SMA {mean_price_info.cross.value} Long SMA\n" 29 | ) 30 | 31 | def generate_bollinger_prompt( boll_info_info:schemas.BollingerInfo): 32 | prompt = "" 33 | if boll_info_info.boll_trend: 34 | prompt += f"{boll_info_info.boll_trend}\n" 35 | if boll_info_info.boll_status: 36 | prompt += f"Price {boll_info_info.boll_status}\n" 37 | return prompt 38 | 39 | def generate_macd_prompt( macd_info_info:schemas.MACD): 40 | prompt = "MACD Info: \n" 41 | if macd_info_info.crossover: 42 | prompt += f'{macd_info_info.crossover.value}\n' 43 | if macd_info_info.divergence: 44 | prompt += f"divergence: {macd_info_info.divergence.value} \n" 45 | if macd_info_info.histogram: 46 | prompt += f"Histogram: {macd_info_info.histogram.value} \n" 47 | return prompt 48 | 49 | def generate_price_prompt( price_info: schemas.StockPriceInfo): 50 | prompt = f"Price sampled by {price_info.sample_frequency.value}: \n" 51 | if price_info.price: 52 | prompt += f"price: {price_info.price} \n" 53 | if price_info.volume: 54 | prompt += f"volume: {price_info.volume}\n" 55 | return prompt 56 | 57 | def generate_prompt_techinical_info( tech: schemas.StockTechInfo): 58 | prompt = "Technical Indicators:\n" 59 | if tech.price_infos: 60 | for info in tech.price_infos: 61 | prompt += generate_price_prompt(info) 62 | if tech.mean_price_infos: 63 | for info in tech.mean_price_infos: 64 | prompt += generate_stock_mean_price_prompt(info) 65 | if tech.boll_info: 66 | prompt += generate_bollinger_prompt(tech.boll_info) 67 | if tech.macd_info: 68 | prompt += generate_macd_prompt(tech.macd_info) 69 | 70 | return prompt 71 | 72 | def generate_prompt_agent( agent_info:schemas.AgentInfo): 73 | prompt = f"Role Info: \n" 74 | prompt += f"Role:{agent_info.role.value}\n" 75 | if agent_info.investment_style: 76 | prompt += f"Investment style: {agent_info.investment_style.value} \n" 77 | prompt += f"Risk tolerance (0-10): {agent_info.risk_tolerance}\n" 78 | prompt += f"Greediness (0-10): {agent_info.greed}\n" 79 | prompt += f"Investment aggressiveness (0-10): {agent_info.investment_aggressiveness}\n" 80 | return prompt 81 | 82 | 83 | 84 | 85 | def generate_agent_predict_prompt( 86 | role_description: str,agent_info:schemas.AgentInfo , 87 | fundamental_info_prompt: str, tech_info_prompt: str, news_prompt = None): 88 | return ( 89 | f"**Background**: Chinese Stock trade Market, you should play the Role below and give your action(buy/sell) and your possibility(0 to 100)\n" 90 | f"**Aim**: Maximum your profit no matter long or short term, depends on your Investment style\n" 91 | f"**Constraints**:\n\n1. Circuit Breaker System: To prevent excessive volatility, China's A-share market has a circuit breaker system in place. In most cases, the daily price fluctuation of a stock is limited to within 10%. Newly listed stocks are not subjected to this limit initially.\n" 92 | f"2. T+1 Trading System: The Chinese stock market operates on a T+1 trading system, which means stocks purchased on a given day can only be sold on the following day or later, prohibiting intraday buying and selling.\n" 93 | f"Role Description: {role_description}\n" 94 | f"{agent_info.to_prompt()}\n" 95 | f"{fundamental_info_prompt}\n" 96 | f"{tech_info_prompt}\n" 97 | "You should only respond in JSON format as described below \n" 98 | f"Response Format: \n{agent_response_format} \n" 99 | "Ensure the response can be parsed by Python json.loads. Don't explain reasons" 100 | ) 101 | 102 | 103 | 104 | def genrate_agent_predict_prompt_with_news_normal( 105 | role_description: str,agent_info:schemas.AgentInfo , 106 | fundamental_info_prompt: str, tech_info_prompt: str, 107 | news_prompt: str)->str: 108 | return ( 109 | f"**Background**: Chinese Stock trade Market, you should play the Role below and give your action(buy/sell) and your possibility(0 to 100)\n" 110 | f"**Aim**: Maximum your profit in short term, depends on your Investment style\n" 111 | f"**Role Description**: {role_description}\n" 112 | f"{agent_info.to_prompt()}\n" 113 | f"**Stock Fundamental Info**:{fundamental_info_prompt}\n" 114 | f"**Technical indicators Info**:{tech_info_prompt}\n" 115 | f"**Related News**:{news_prompt}\n\n" 116 | "You should only respond in JSON format as described below \n" 117 | f"Response Format: \n{agent_response_format} \n" 118 | "Ensure the response can be parsed by Python json.loads. Don't explain reasons" 119 | ) 120 | 121 | def genrate_agent_predict_prompt_with_news_multi_key(): 122 | return 123 | 124 | 125 | 126 | 127 | def generate_news_correlation( news: schemas.News, stock:schemas.Stock) -> str: 128 | return ( 129 | f"news title:{news.title}\n" 130 | f"content: {news.content}\n" 131 | f"Stock Information:\n" 132 | f"{generate_stock_information(stock)}" 133 | f"Please indicate the relevance of the news (from 0 to 100)\n" 134 | f"and determine possitive or negative impact and how significant the impact is (from 0 to 100)\n" 135 | "You should only respond in JSON format as described below \n" 136 | f"Response Format: {new_correlation_response_format} \n" 137 | "Ensure the response can be parsed by Python json.loads\n" 138 | "temperature=1.6, don't explain reasons" 139 | ) 140 | 141 | def generate_prompt_news_keywords( title: str, content: str) -> str: 142 | return ( 143 | f"news title:{title}\n" 144 | f"content: {content}\n" 145 | f"Please give all the keywords related to industries \n" 146 | "You should only respond in JSON format as described below \n" 147 | f"Response Format: {keywords_response_format} \n" 148 | "Ensure the response can be parsed by Python json.loads\n" 149 | ) 150 | 151 | def generate_prompt_news_keywords_batch( titles: list[str], contents: list[str]): 152 | keywords_response_format_batch = [{"index":"index","keywords":["keyword","keyword"]}] 153 | prompt = ( 154 | f"# Role Description: You are a finance expert, able to extract key information from the below Chinese news.\n\n" 155 | f"Please give all the keywords related to industries \n" 156 | f"You should only respond in JSON format as described below \n" 157 | f"Response Format: {keywords_response_format_batch} \n" 158 | f"Ensure the response can be parsed by Python json.loads\n" 159 | ) 160 | prompt += f"\n# News: ```\n[" 161 | for index in range(len(titles)): 162 | prompt += ( 163 | "{" 164 | f"'index':{index},\n" 165 | f"'news title':'{titles[index]}'\n" 166 | f"'content': '{contents[index]}'\n" 167 | "},\n" 168 | ) 169 | prompt += ']```' 170 | return prompt 171 | 172 | 173 | def generate_news_content_prompt( news:List[dict]): 174 | prompt = f"\n# News: ```\n[" 175 | for index in range(len(news)): 176 | prompt += ( 177 | "{" 178 | f"'index':{index},\n" 179 | f"'time': '{news[index]['发布时间戳']}',\n" 180 | f"'news title':'{news[index]['标题']}'\n" 181 | f"'content': '{news[index]['内容']}'\n" 182 | "},\n" 183 | ) 184 | prompt += ']```' 185 | return prompt 186 | 187 | 188 | # def generate_prompt_string() -> str: 189 | # """ 190 | # Generate a prompt string based on the constraints, commands, resources, 191 | # and performance evaluations. 192 | # Returns: 193 | # str: The generated prompt string. 194 | # """ 195 | # formatted_response_format = json.dumps(response_format, indent=4) 196 | # return ( 197 | # f"Stock Price in minutes:\n{_generate_numbered_list(constraints)}\n" 198 | # f"Volumn in minutes:\n{_generate_numbered_list(constraints)}\n" 199 | # "Commands:\n" 200 | # f"{_generate_numbered_list(commands, item_type='command')}\n" 201 | # f"Resources:\n{_generate_numbered_list(resources)}\n" 202 | # "Performance Evaluation:\n" 203 | # f"{_generate_numbered_list(performance_evaluation)}\n" 204 | # "You should only respond in JSON format as described below \nResponse" 205 | # f" Format: \n{formatted_response_format} \nEnsure the response can be" 206 | # " parsed by Python json.loads" 207 | # ) 208 | def generate_prompt_extract_stock_news( news_dict: List[dict], stock_name: str): 209 | """ 210 | Generate a prompt to extract the potential keys of the stock 211 | """ 212 | response_format = [{"index":"int type, the index", "extracted_info":"a list of all the direct/potential elements/event/industries will effect the company"}] 213 | prompt = ( 214 | f"**Role**: You are an expert in financial data analyzing. You are able to find potential relations from the news.\n" 215 | f"**Task Description**: Now you will be given several NEWS directly related to one company named {stock_name}. You need to identify the main entities that might have relationship with the company to establish a KNOWLEDGE GRAPH.\n" 216 | f"**Constraints**:\n" 217 | f"\n1. You should only respond in JSON format as described below:'{json.dumps(response_format)}'. Ensure the response can be parsed by Python json.loads" 218 | f"\n2. You should find the main elements/event/industries have relationship with the company." 219 | f"\n3. Don't include any stock techinical indicators such as:'涨停','大涨','市盈率,市值'" 220 | f"\n4. Don't explain the reasons, just give the answer." 221 | f"\n5. 不要使用例如:'成交量',‘投资者’, ‘换手率’, ‘成交额’, ‘振幅’ 等股票价格结果相关的实体." 222 | ) 223 | prompt += f"\n\n**NEWS List**:\n\n[" 224 | for index in range(len(news_dict)): 225 | prompt += ( 226 | "{" 227 | f"'index':{index},\n" 228 | f"'timestamp':{news_dict[index]['date']},\n" 229 | f"'news title':'{news_dict[index]['title']}'\n" 230 | f"'content': '{news_dict[index]['content']}'\n" 231 | "},\n" 232 | ) 233 | prompt += ']```' 234 | return prompt 235 | 236 | 237 | def generate_agent_prompt( agent_info:schemas.AgentInfo,stock:schemas.Stock, tech: schemas.StockTechInfo): 238 | prompt = "" 239 | prompt += f"Background: Chinese Stock trade Market, you should play the Role below and give your action(buy/sell) and your possibility(0 to 100)\n" 240 | prompt += f"Aim: Maximum your profit no matter long or short term, depends on your Investment style\n" 241 | prompt += generate_prompt_agent(agent_info) 242 | prompt += generate_stock_information(stock) 243 | prompt += generate_prompt_techinical_info(tech) 244 | prompt += ( 245 | "You should only respond in JSON format as described below \nResponse" 246 | f" Format: \n{agent_response_format} \nEnsure the response can be" 247 | " parsed by Python json.loads. temperature = 1.6, don't explain reasons" 248 | ) 249 | return prompt 250 | 251 | -------------------------------------------------------------------------------- /app/qstock_searcher.py: -------------------------------------------------------------------------------- 1 | import sys 2 | sys.path.append('../') 3 | import qstock as qs 4 | from typing import List 5 | import utils, json 6 | import prompt_generator 7 | from langchain.callbacks import get_openai_callback 8 | from datetime import datetime 9 | import pandas as pd 10 | 11 | def get_stock_df(code, date: datetime=None): 12 | return qs.get_data(code, end=date.strftime('%Y%m%d') if date else None) 13 | 14 | def get_stock_news(code, date: datetime=None): 15 | return qs.news_data('个股', code=code, end=date.strftime('%Y%m%d') if date else None) 16 | 17 | def get_stock_name(code): 18 | df = qs.get_data(code) 19 | # print(df) 20 | return df['name'].iloc[-1] 21 | 22 | def search_main_business(stock): 23 | df=qs.main_business(stock) 24 | select_period = df.head(1)['报告期'].values[0] 25 | cols = ['分类','营业收入(万)', '占主营收入比', '毛利率'] 26 | df = df[(df['报告期'] == select_period) & (df['分类方向'] == '按行业分')][cols] 27 | dic = df.to_dict(orient='records') 28 | if len(dic) <= 0: 29 | return None 30 | result = {} 31 | result[f'报告期:{select_period}'] = dic 32 | return result 33 | 34 | def get_all_industry_name_list() -> List[str]: 35 | name_list=qs.ths_index_name('行业') 36 | return name_list 37 | 38 | ''' 39 | 通过GPT总结新闻标题和内容的行业关键词 40 | 用于后续匹配股票的主营业务、所属行业、概念 41 | ''' 42 | def determine_news_keywords(): 43 | news = qs.news_data() 44 | # print(len(news)) 45 | with get_openai_callback() as cb: 46 | for index, row in news.iterrows(): 47 | if index >= 2: 48 | break 49 | print(index,row) 50 | prompt = prompt_generator.generate_prompt_news_keywords(title= row['标题'], content= row['内容']) 51 | print(f"prompt:{prompt}") 52 | result = utils.generate_single_message(prompt=prompt, temperature=0) 53 | print(f"prediction:{result}") 54 | print("total_cost:",cb.total_cost) 55 | 56 | def get_news_keywords(news:List[dict]): 57 | titles = [item['标题'] for item in news] 58 | contents = [item['内容'] for item in news] 59 | with get_openai_callback() as cb: 60 | prompt = prompt_generator.generate_prompt_news_keywords_batch(titles, contents) 61 | print(f"prompt:{prompt}") 62 | result = utils.generate_single_message(prompt=prompt, temperature=0) 63 | result=result.replace("'", '"') 64 | print(f"prediction:{result}") 65 | print("total_cost:",cb.total_cost) 66 | return json.loads(result) 67 | 68 | def determine_news_key_words_batch(batch_size=5) -> List[dict]: 69 | whole_size = 200 70 | news = qs.news_data()[-whole_size:] 71 | news['发布时间戳'] = news.apply(lambda row: datetime.combine(row['发布日期'], row['发布时间']), axis=1) 72 | news['发布时间戳'] = news['发布时间戳'].dt.strftime('%Y-%m-%d %H:%M:%S') 73 | news = news[['标题', '内容','发布时间戳']] 74 | news_dict_list = news.to_dict(orient='records') 75 | news.to_csv('news.csv') 76 | result = [] 77 | for i in range(whole_size//batch_size + 1): 78 | result += get_news_keywords(news_dict_list[i*batch_size:(i+1)*batch_size]) 79 | print(result) 80 | return result 81 | 82 | 83 | def extract_from_stock_news(news: List[dict],name:str): 84 | prompt = prompt_generator.generate_prompt_extract_stock_news(news, stock_name=name) 85 | with get_openai_callback() as cb: 86 | print(f"prompt:\n{prompt}") 87 | result = utils.generate_single_message(prompt=prompt, temperature=0,model_name="gpt-4-32k") 88 | result=result.replace("'", '"') 89 | print(f"prediction:\n{result}") 90 | print("total_cost:",cb.total_cost) 91 | return json.loads(result) 92 | 93 | def extract_from_stock_news_batch(code)-> tuple[List[dict], List[dict]]: 94 | name = get_stock_name(code) 95 | news = qs.news_data('个股', code=code) 96 | whole_size=100 97 | batch_size=10 98 | # news.to_csv('stock_news.csv') 99 | news = news[['date','title', 'content']] 100 | news_dict_list = news.to_dict(orient='records') 101 | extracted_from_news = [] 102 | for i in range(whole_size//batch_size + 1): 103 | extracted_from_news += extract_from_stock_news(news_dict_list[i*batch_size:(i+1)*batch_size], name) if (i)*batch_size < len(news_dict_list)-1 else [] 104 | 105 | return (news_dict_list,extracted_from_news) 106 | 107 | 108 | 109 | 110 | def determine_news_correlation(title, content, stock_information): 111 | return 112 | 113 | if __name__ == '__main__': 114 | code = '000155' 115 | df = get_stock_df(code) 116 | print(df.dtypes) 117 | print(get_stock_name(code)) -------------------------------------------------------------------------------- /app/room.py: -------------------------------------------------------------------------------- 1 | from agents import BeginnerTrader,SeniorTrader,FundManager, BaseTraderAgent 2 | from stock_analyzer import stock_analyzer 3 | import schemas 4 | from qstock_searcher import search_main_business, get_stock_name,get_stock_news,extract_from_stock_news_batch, get_stock_df 5 | import json 6 | from multi_key_index import IndexStore, IndexNode, TextChunk 7 | import tqdm 8 | from langchain.embeddings import OpenAIEmbeddings 9 | from dotenv import load_dotenv 10 | import os, json 11 | import pickle 12 | from typing import Tuple, List 13 | import time, datetime 14 | import pandas as pd 15 | PARSE_FOLDER_PATH = os.path.join(os.getcwd(), 'parse_res') 16 | # 读取 .env file. 17 | load_dotenv() 18 | openai_api_key= os.getenv('LITELLM_OPENAI_API_KEY') 19 | openai_api_base= os.getenv('LITELLM_OPENAI_API_BASE') 20 | 21 | class Room(object): 22 | 23 | def __init__(self,code:str,date:datetime, verbose:bool=False): 24 | self.code = code 25 | self.date = date 26 | self.verbose = verbose 27 | self._init_stock_topics(self.code) 28 | self.fundamental_info =self._init_fundamental_info(self.code) 29 | # self.index_store = self._init_news_vectorstore() 30 | self.news_info = self._init_basic_news_prompt() 31 | # self._init_agents() 32 | return 33 | 34 | 35 | # def _init_agents(self): 36 | # self.agents = [BeginnerTrader(),SeniorTrader(),FundManager()] 37 | # for agent in self.agents: 38 | # agent.percept(self.current_price_info.price[-1]) 39 | 40 | 41 | def _init_fundamental_info(self, code): 42 | self.stock_name= get_stock_name(code) 43 | main_business_info = search_main_business(code) 44 | return schemas.FundamentalInfo( 45 | stock_name=self.stock_name, 46 | main_business_info=json.dumps(main_business_info, indent=2,ensure_ascii=False) 47 | ) 48 | # print(self.fundamental_info.to_prompt()) 49 | 50 | 51 | def _init_stock_news_info(self): 52 | return 53 | 54 | def _init_basic_news_prompt(self): 55 | news_df = get_stock_news(self.code, date=self.date) 56 | news_df_copy = news_df.copy() 57 | news_df_copy['date'] = pd.to_datetime(news_df_copy['date']) 58 | news_df_copy = news_df_copy[news_df_copy['date'] <= self.date.strftime('%Y-%m-%d')] 59 | if len(news_df_copy) <= 0: 60 | news_df= news_df[['date','title','content']] 61 | news_df=news_df[:20] 62 | else: 63 | news_df= news_df_copy[['date','title','content']][-20:] 64 | news_df['date'] = news_df['date'].astype(str) 65 | news_dict = news_df.to_dict(orient='records') 66 | # print(news_dict) 67 | news_prompt = json.dumps(news_dict, ensure_ascii=False, indent=2) 68 | if self.verbose: 69 | print(news_prompt) 70 | return news_prompt 71 | 72 | 73 | def _init_stock_topics(self, code): 74 | self.stock_code= code 75 | self.stock_tech_info = stock_analyzer.generate_tech_infos(code,date=self.date) 76 | self.current_price_info = self.stock_tech_info.price_infos[0] 77 | # print(self.stock_tech_info.to_prompt()) 78 | 79 | def _init_news_vectorstore(self): 80 | # embedding = OpenAIEmbeddings(openai_api_key=openai_api_key, 81 | # openai_api_base=openai_api_base) 82 | index_store:IndexStore = IndexStore() 83 | if os.path.exists('index_store.json'): 84 | index_store.load_from_file('index_store.json') 85 | return index_store 86 | (news_dict_list,extracted_from_news) = extract_from_stock_news_batch(self.code) 87 | print(len(news_dict_list), len(extracted_from_news)) 88 | index_store:IndexStore = IndexStore() 89 | start_ = time.time() 90 | for i in range(len(news_dict_list)): 91 | content = news_dict_list[i]['content'] 92 | extracted_list = extracted_from_news[i]['extracted_info'] 93 | index_nodes = [] 94 | for index,item in enumerate(extracted_list): 95 | node = IndexNode( 96 | content=item, 97 | id = hash(item), 98 | ) 99 | index_nodes.append(node) 100 | if not index_store.contains(item): 101 | index_store.add_node(node) 102 | 103 | index_store.add_chunk(TextChunk( 104 | id = hash(content), 105 | content=content, 106 | index_node_ids = [item.id for item in index_nodes] 107 | )) 108 | index_store.init_vectodstore() 109 | print(time.time()-start_) 110 | # print([item.dict() for item in index_store.chunks]) 111 | # print(index_store.node_to_chunk) 112 | index_store.save('index_store.json') 113 | return index_store 114 | 115 | 116 | if __name__ == '__main__': 117 | room = Room(code='002330', date = datetime.datetime.now()) 118 | 119 | 120 | -------------------------------------------------------------------------------- /app/schemas.py: -------------------------------------------------------------------------------- 1 | from pydantic import BaseModel,Field 2 | from datetime import datetime 3 | from typing import List, Optional 4 | from enum import Enum 5 | 6 | risk_tolerance_map:dict = { 7 | 0: "Avoids all risk (Equivalent to keeping money under a mattress)", 8 | 1: "Ultra Conservative (Primarily in ultra-safe instruments like treasury bills)", 9 | 2: "Very Conservative (High allocation to bonds and other fixed-income securities)", 10 | 3: "Conservative (Mainly bonds, with a small allocation to equities or other slightly riskier assets)", 11 | 4: "Mildly Conservative (Balanced between bonds and equities)", 12 | 5: "Moderate (Even split between equities and bonds or other fixed-income securities)", 13 | 6: "Mildly Aggressive (Higher allocation to equities with some bonds and possibly alternative assets)", 14 | 7: "Aggressive (Mainly equities, with a minimal bond or fixed-income allocation)", 15 | 8: "Very Aggressive (High concentration in equities, potentially including riskier sectors or emerging markets)", 16 | 9: "Extremely Aggressive (Potential for high-risk ventures, speculative assets, or leveraged investments)", 17 | 10: "Speculative (Full exposure to highly speculative investments or betting on single outcomes)" 18 | } 19 | 20 | greed_map:dict= { 21 | 0: "Not greedy at all", 22 | 1: "Very slightly greedy", 23 | 2: "Slightly greedy", 24 | 3: "Mildly greedy", 25 | 4: "Moderately greedy", 26 | 5: "Average greediness", 27 | 6: "Above average greedy", 28 | 7: "Quite greedy", 29 | 8: "Very greedy", 30 | 9: "Extremely greedy", 31 | 10: "Ultimate greed", 32 | } 33 | 34 | aggressiveness_map:dict = { 35 | 0: "Ultra Conservative", 36 | 1: "Very Conservative", 37 | 2: "Conservative", 38 | 3: "Mildly Conservative", 39 | 4: "Moderate", 40 | 5: "Balanced", 41 | 6: "Mildly Aggressive", 42 | 7: "Aggressive", 43 | 8: "Very Aggressive", 44 | 9: "Extremely Aggressive", 45 | 10: "All-in Aggressive", 46 | } 47 | 48 | 49 | class AgentRole(Enum): 50 | BEGINNER = "Beginner Trader" 51 | SENIOR = "Senior Trader" 52 | EXPERT = "Expert Trader" 53 | FUNDMANAGER = 'FUND MANAGER' 54 | 55 | class InvestmentStyle(Enum): 56 | ACTIVITE_INVESTING = "Active Investing" 57 | VALUE_INVESTING = "Value Investing" 58 | TECHNICAL_TRADING= "Technical Trading" 59 | 60 | 61 | class SampleFrequency(Enum): 62 | daily = "1 day" 63 | weekly = '5 days' 64 | min_15 = '15 minute' 65 | min_5 = '5 minute' 66 | hour = '60 minute' 67 | 68 | class BollStatus(Enum): 69 | reach_up = "Reach Bollinger Upper Band" 70 | reach_down = "Reach Bollinger Lower Band" 71 | normal='normal, no reacing neither up nor down' 72 | 73 | 74 | class BollTrend(str,Enum): 75 | up = "Bollinger Middle Band Trend Up" 76 | down = "Bollinger Middle Band Trend Down" 77 | 78 | class MeanPriceStatus(Enum): 79 | up_cross = "Up Cross" 80 | down_cross = "Down Cross" 81 | normal='No cross' 82 | 83 | class MACDCrossStatus(Enum): 84 | gold = "macd line up cross signal line" 85 | dead = "macd line down cross signal line" 86 | normal="no crossover" 87 | 88 | class Order(BaseModel): 89 | uid: str 90 | action: str 91 | price: float 92 | share: int 93 | 94 | class DealedOrder(BaseModel): 95 | buy_price: float 96 | sell_price: float 97 | dealed_price: float 98 | dealed_share: int 99 | 100 | 101 | 102 | class News(BaseModel): 103 | title: str 104 | content: str 105 | date: Optional[datetime] 106 | keywords: Optional[List[str]] 107 | 108 | 109 | class Stock(BaseModel): 110 | name: str 111 | main_business: Optional[List[str]] 112 | fundamental_information: Optional[str] 113 | fundamental_analysis: Optional[str] 114 | 115 | 116 | class BollingerInfo(BaseModel): 117 | boll_status: Optional[BollStatus] 118 | boll_trend : Optional[BollTrend] 119 | 120 | def to_prompt(self): 121 | prompt = ( 122 | f"The Bollinger info:\n" 123 | f"bollinger status:{self.boll_status.value}\n" 124 | f"bollinger trend: {self.boll_trend.value}" 125 | ) 126 | return prompt 127 | 128 | 129 | class MeanPriceInfo(BaseModel): 130 | sample_frequency: SampleFrequency 131 | long_period: int 132 | short_period: int 133 | cross: MeanPriceStatus 134 | 135 | def to_prompt(self): 136 | prompt = ( 137 | f"The mean price is sampled by frequency {self.sample_frequency.value}\n" 138 | f"The long term period is {self.long_period} days, the short term period is {self.short_period}\n" 139 | f"The cross information is {self.cross.value}" 140 | ) 141 | return prompt 142 | 143 | class MACD(BaseModel): 144 | crossover: MACDCrossStatus 145 | divergence: Optional[str] 146 | histogram: Optional[str] 147 | 148 | def to_prompt(self): 149 | prompt = ( 150 | f"MACD Info:\n" 151 | f"The macd line is {self.crossover.value} and the histogram is {self.histogram}" 152 | ) 153 | return prompt 154 | 155 | 156 | class StockPriceInfo(BaseModel): 157 | sample_frequency: SampleFrequency 158 | price: Optional[List[float]] 159 | volume: Optional[List[float]] 160 | 161 | def to_prompt(self): 162 | prompt = ( 163 | f"Price Info List sampled by {self.sample_frequency.value}:\n" 164 | f"Price List: {self.price}\n" 165 | f"Volume List: {self.volume}" 166 | ) 167 | return prompt 168 | 169 | class StockTechInfo(BaseModel): 170 | # name: str 171 | price_infos: List[StockPriceInfo] 172 | mean_price_infos: Optional[List[MeanPriceInfo]] 173 | boll_info: Optional[BollingerInfo] 174 | macd_info: Optional[MACD] 175 | 176 | def to_prompt(self): 177 | price_prompt = '\n'.join([item.to_prompt() for item in self.price_infos]) 178 | mean_price_prompt = '\n'.join([item.to_prompt() for item in self.mean_price_infos]) 179 | prompt = ( 180 | f"{price_prompt}\n" 181 | f"{mean_price_prompt}\n" 182 | f"{self.boll_info.to_prompt()}\n" 183 | f"{self.macd_info.to_prompt()}\n" 184 | ) 185 | return str(prompt) 186 | 187 | def get_price_by_freq_and_index(self, freq:SampleFrequency=SampleFrequency.daily, index:int=-1): 188 | for price_info in self.price_infos: 189 | if price_info.sample_frequency ==freq: 190 | return price_info.price[index] 191 | return -1 192 | 193 | 194 | class AgentInfo(BaseModel): 195 | role: AgentRole 196 | risk_tolerance: int 197 | greed: int 198 | investment_aggressiveness: int 199 | investment_style: Optional[InvestmentStyle] 200 | 201 | def to_prompt(self): 202 | prompt = f"Role Info: \n" 203 | prompt += f"Role:{self.role.value}\n" 204 | if self.investment_style: 205 | prompt += f"Investment style: {self.investment_style.value} \n" 206 | prompt += f"Risk tolerance (0-10): {self.risk_tolerance} {risk_tolerance_map[self.risk_tolerance]}\n" 207 | prompt += f"Greediness (0-10): {self.greed} {greed_map[self.greed]}\n" 208 | prompt += f"Investment aggressiveness (0-10): {self.investment_aggressiveness} {aggressiveness_map[self.investment_aggressiveness]}\n" 209 | return prompt 210 | 211 | 212 | class RawMessage(BaseModel): 213 | content: str 214 | role: str 215 | 216 | class FundamentalInfo(BaseModel): 217 | stock_name: str 218 | main_business_info: str 219 | 220 | def to_prompt(self): 221 | return f"Fundamental Information of {self.stock_name}:\n{self.main_business_info}\n\n" 222 | 223 | class AgentDecision(BaseModel): 224 | action: str 225 | probability: int 226 | percent:float 227 | 228 | class ResponseAgent(BaseModel): 229 | risk_tolerance: int =Field( alias="Risk tolerance") 230 | investment_style: str = Field( alias="Investment style") 231 | investment_aggressiveness: str = Field( alias="Investment aggressiveness") 232 | decisions: List[AgentDecision] 233 | 234 | 235 | 236 | -------------------------------------------------------------------------------- /app/services/info_utils.py: -------------------------------------------------------------------------------- 1 | import sys 2 | sys.path.append('../') 3 | import qstock as qs 4 | from typing import List, Optional 5 | import time 6 | import asyncio 7 | from langchain.llms import OpenAI 8 | 9 | keywords_response_format = {"keywords":["keyword","keyword"]} 10 | def get_gpt_completion(prompt): 11 | llm = OpenAI(temperature=0.9) 12 | resp = llm.generate([prompt]) 13 | print(resp.generations[0][0].text) 14 | return resp.generations[0][0].text 15 | 16 | class InformationManager(object): 17 | def __init__(self, stock_code): 18 | self.stock_code = stock_code 19 | 20 | def get_stock_df(sekf,code): 21 | return qs.get_data(code) 22 | 23 | def search_main_business(self, stock): 24 | df=qs.main_business(stock) 25 | select_period = df.head(1)['报告期'].values[0] 26 | cols = ['分类','营业收入(万)', '占主营收入比', '毛利率'] 27 | df = df[(df['报告期'] == select_period) & (df['分类方向'] == '按行业分')][cols] 28 | dic = df.to_dict(orient='records') 29 | if len(dic) <= 0: 30 | return None 31 | result = {} 32 | result[f'报告期:{select_period}'] = dic 33 | return result 34 | 35 | def get_all_industry_name_list() -> List[str]: 36 | name_list=qs.ths_index_name('行业') 37 | return name_list 38 | 39 | ''' 40 | 通过GPT总结新闻标题和内容的行业关键词 41 | 用于后续匹配股票的主营业务、所属行业、概念 42 | ''' 43 | def determine_news_keywords(self): 44 | news = qs.news_data() 45 | for index, row in news.iterrows(): 46 | if index >= 1: 47 | return 48 | prompt = self.generate_prompt_news_keywords(title= row['标题'], content= row['内容']) 49 | print(prompt) 50 | print(get_gpt_completion(prompt)) 51 | 52 | def generate_prompt_news_keywords(self, title: str, content: str) -> str: 53 | return ( 54 | "Role Description:\nYou are a profession financial analyzer. You are responsible for detecting all news' effect on all industries. You should consider what the industries will be affected by the news directly or potentially.\n\n" 55 | "##Constraints:\n" 56 | "1. You should only respond in JSON format as described below: \n" 57 | f" Response Format: ```{keywords_response_format} ```" 58 | "Ensure the response can be parsed by Python json.loads\n" 59 | "2. Just give the answer, don't explain reasons\n" 60 | f"\nnews title:{title}\n" 61 | f"content: {content}\n" 62 | "Begin.Please give all the keywords related to industries. \n" 63 | "Result:" 64 | ) 65 | 66 | 67 | news_manager = NewsManager("") 68 | def determine_news_correlation(title, content, stock_information): 69 | return 70 | 71 | if __name__ == '__main__': 72 | # print(get_all_industry_name_list()) 73 | # determine_news_keywords() 74 | # search_main_business('000155') 75 | # name_list=qs.ths_index_name('行业') 76 | # print(len(name_list)) 77 | # # print(df=qs.eps_forecast()) 78 | # df=qs.intraday_money('中国平安') 79 | # print(df) 80 | # print(qs.stock_snapshot('中国平安')) 81 | news = qs.news_data() 82 | news.to_csv('news.csv') 83 | df=qs.get_data('000155') 84 | df = df.tail(20) 85 | # print(df) 86 | print(df['close'].values.tolist()) 87 | print(df['volume'].values.tolist()) 88 | 89 | df=qs.get_data('000155',start='20220928',freq=101) 90 | print(df) 91 | df = df.tail(80) 92 | # print(df) 93 | print(df['close'].values.tolist()) 94 | print(df['volume'].values.tolist()) 95 | # df=qs.main_business('000155') 96 | print(news_manager.search_main_business('000155')) -------------------------------------------------------------------------------- /app/stock_analyzer.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | import numpy as np 3 | from qstock_searcher import get_stock_df 4 | import schemas 5 | import datetime 6 | MEAN_PRICE_LONG_PERIOD=30 7 | MEAN_PRICE_SHORT_PERIOD=10 8 | 9 | class StockAnalyzer(object): 10 | 11 | def __init__(self,): 12 | return 13 | 14 | 15 | def get_stock_fund_info(self): 16 | pass 17 | 18 | def get_mean_prices(self, df): 19 | periods = [MEAN_PRICE_SHORT_PERIOD, MEAN_PRICE_LONG_PERIOD] 20 | for period in periods: 21 | col_name = f'{period}日均价' 22 | price_roll_window = df['close'].rolling(window=period) 23 | df[col_name] = price_roll_window.mean() 24 | df = df.fillna(0) 25 | 26 | df[f'{periods[0]}日均线上穿{periods[1]}日均线'] = (df[f'{periods[0]}日均价'].shift(1) < df[f'{periods[1]}日均价'].shift(1)) & (df[f'{periods[0]}日均价'] > df[f'{periods[1]}日均价']) 27 | df[f'{periods[0]}日均线下穿{periods[1]}日均线'] = (df[f'{periods[0]}日均价'].shift(1) > df[f'{periods[1]}日均价'].shift(1)) & (df[f'{periods[0]}日均价'] < df[f'{periods[1]}日均价']) 28 | return df 29 | 30 | def bollinger_bands(self, data, window, num_std): 31 | """ 32 | 计算布林带 33 | :param data: 股票价格数据 34 | :param window: 计算布林带所需的时间窗口 35 | :param num_std: 用于计算上下轨的标准差倍数 36 | :return: 中轨,上轨,下轨 37 | """ 38 | rolling_mean = data.rolling(window=window).mean() 39 | rolling_std = data.rolling(window=window).std() 40 | 41 | upper_band = rolling_mean + (rolling_std * num_std) 42 | lower_band = rolling_mean - (rolling_std * num_std) 43 | 44 | return rolling_mean, upper_band, lower_band 45 | 46 | def get_bollinger_bands(self, df): 47 | df['Middle_Band'], df['Upper_Band'], df['Lower_Band'] = self.bollinger_bands(data=df['close'], window=20, num_std=2) 48 | df['Reach_Bollinger_Low'] = df['close'] <= df['Lower_Band'] 49 | df['Reach_Bollinger_Up'] = df['close'] >= df['Upper_Band'] 50 | df['Middle_Band_Trend'] = df['Middle_Band'] - df['Middle_Band'].shift(1) 51 | return df 52 | 53 | def macd(self, data, short_window, long_window, signal_window): 54 | """ 55 | 计算平滑异同移动平均线(MACD) 56 | :param data: 股票价格数据 57 | :param short_window: 短期EMA窗口 58 | :param long_window: 长期EMA窗口 59 | :param signal_window: MACD信号线窗口 60 | :return: MACD, Signal 61 | """ 62 | ema_short = data.ewm(span=short_window).mean() 63 | ema_long = data.ewm(span=long_window).mean() 64 | macd = ema_short - ema_long 65 | signal = macd.ewm(span=signal_window).mean() 66 | 67 | return macd, signal 68 | 69 | def cal_macd(self, df): 70 | # 计算MACD 71 | short_window = 12 72 | long_window = 26 73 | signal_window = 9 74 | df['MACD'], df['Signal'] = self.macd(df['close'], short_window, long_window, signal_window) 75 | df['Histogram'] = df['MACD'] - df['Signal'] 76 | # 计算交叉点 77 | df['Cross'] = np.where(df['MACD'] > df['Signal'], 1, -1) 78 | # 查找买入点和卖出点 79 | df['up_cross'] = df['Cross'].diff() == 2 80 | df['down_cross']= df['Cross'].diff() == -2 81 | return df 82 | 83 | 84 | def generate_tech_infos(self, code:str,date:datetime = None ) -> schemas.StockTechInfo: 85 | df= get_stock_df(code,date=date) 86 | df.to_csv('stock_data.csv') 87 | df = self.get_bollinger_bands(df) 88 | df = self.cal_macd(df) 89 | df = self.get_mean_prices(df) 90 | last_row = df.tail(1) 91 | price_info = schemas.StockPriceInfo( 92 | sample_frequency = schemas.SampleFrequency.daily.value, 93 | price = df.tail(15)['close'].values.tolist(), 94 | volume=df.tail(15)['volume'].values.tolist() 95 | ) 96 | if last_row['Reach_Bollinger_Up'].iloc[0]: 97 | boll_status = schemas.BollStatus.reach_up.value 98 | elif last_row['Reach_Bollinger_Low'].iloc[0]: 99 | boll_status = schemas.BollStatus.reach_down.value 100 | else: 101 | boll_status = schemas.BollStatus.normal.value 102 | 103 | boll_info = schemas.BollingerInfo( 104 | boll_status = boll_status, 105 | boll_trend = schemas.BollTrend.up.value if last_row['Middle_Band_Trend'].iloc[0] >= 0 else schemas.BollTrend.down.value, 106 | ) 107 | if last_row['up_cross'].iloc[0]: 108 | macd_cross_status = schemas.MACDCrossStatus.gold 109 | elif last_row['down_cross'].iloc[0]: 110 | macd_cross_status = schemas.MACDCrossStatus.dead 111 | else: 112 | macd_cross_status = schemas.MACDCrossStatus.normal 113 | macd_info=schemas.MACD( 114 | crossover= macd_cross_status, 115 | histogram=round(last_row['Histogram'].iloc[0],2) 116 | ) 117 | if last_row[f'{MEAN_PRICE_SHORT_PERIOD}日均线上穿{MEAN_PRICE_LONG_PERIOD}日均线'].iloc[0]: 118 | mean_price_cross = schemas.MeanPriceStatus.up_cross 119 | elif last_row[f'{MEAN_PRICE_SHORT_PERIOD}日均线下穿{MEAN_PRICE_LONG_PERIOD}日均线'].iloc[0]: 120 | mean_price_cross = schemas.MeanPriceStatus.down_cross 121 | else: 122 | mean_price_cross = schemas.MeanPriceStatus.normal 123 | 124 | mean_price_info = schemas.MeanPriceInfo( 125 | sample_frequency = schemas.SampleFrequency.daily.value, 126 | long_period=MEAN_PRICE_LONG_PERIOD, 127 | short_period=MEAN_PRICE_SHORT_PERIOD, 128 | cross=mean_price_cross 129 | ) 130 | 131 | # print(price_info.to_prompt()) 132 | # print(boll_info.to_prompt()) 133 | # print(macd_info.to_prompt()) 134 | # print(mean_price_info.to_prompt()) 135 | stock_tech_info=schemas.StockTechInfo( 136 | price_infos=[price_info], 137 | mean_price_infos=[mean_price_info], 138 | boll_info=boll_info, 139 | macd_info=macd_info 140 | ) 141 | # print(stock_tech_info.to_prompt()) 142 | return stock_tech_info 143 | 144 | stock_analyzer = StockAnalyzer() 145 | if __name__ == '__main__': 146 | analyzer = StockAnalyzer() 147 | # df= get_stock_df('000155') 148 | # print(df.columns) 149 | # # df = analyzer.get_mean_prices(df) 150 | # df = analyzer.get_bollinger_bands(df) 151 | # df = analyzer.cal_macd(df) 152 | # print(df) 153 | 154 | analyzer.generate_tech_infos('603778') 155 | -------------------------------------------------------------------------------- /app/tools.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/utils.py: -------------------------------------------------------------------------------- 1 | from langchain.llms import OpenAI 2 | from langchain.chat_models import ChatOpenAI 3 | from configs import OPENAI_API_KEY, OPENAI_API_BASE 4 | from langchain.schema.messages import ( 5 | HumanMessage, 6 | ) 7 | from langchain.schema import ( 8 | LLMResult, 9 | ) 10 | 11 | 12 | def generate_single_message(prompt: str, temperature: float, model_name:str="gpt-3.5-turbo-16k"): 13 | chat_model = ChatOpenAI( 14 | # model="gpt-4-32k", 15 | model=model_name, 16 | openai_api_key=OPENAI_API_KEY, 17 | openai_api_base=OPENAI_API_BASE, 18 | temperature=temperature 19 | ) 20 | return chat_model.predict(prompt) 21 | 22 | 23 | async def agenerate_single_message(prompt: str, temperature: float, model_name:str="gpt-3.5-turbo-16k"): 24 | chat_model = ChatOpenAI( 25 | # model="gpt-4-32k", 26 | model=model_name, 27 | openai_api_key=OPENAI_API_KEY, 28 | openai_api_base=OPENAI_API_BASE, 29 | temperature=temperature 30 | ) 31 | return await chat_model.apredict(prompt) 32 | 33 | 34 | async def agenerate_n_message(prompt: str, temperature: float, model_name:str="gpt-3.5-turbo-16k",n:int=2)->LLMResult: 35 | chat_model = ChatOpenAI( 36 | model=model_name, 37 | openai_api_key=OPENAI_API_KEY, 38 | openai_api_base=OPENAI_API_BASE, 39 | temperature=temperature, 40 | n=n 41 | ) 42 | return await chat_model.agenerate([[HumanMessage(content=prompt)]]) -------------------------------------------------------------------------------- /docs/estimate_llm_decission_performance.md: -------------------------------------------------------------------------------- 1 | # Experiment Result Record and Analysis of the Performance of LLM make Finance decissions 2 | 3 | [Notebook address](./../notebooks/estimate_llm_decission_performance.ipynb) 4 | 5 | ## Data chosen for test 6 | 7 | 1. Choose several stocks. 8 | 9 | ## Experiment Design 10 | 11 | ## Results and Conclusions 12 | 13 | 1. **Under same pre-conditions(agents info, news, stock) the LLM can make almost same decissions.** Below two figs shows the results of "Buy/Sell attitude" under same pre-conditions tested twice. From which, we can see the LLM's outputs are almost same and shows the similar buy and sell attitude. 14 | ![Fund Manager Buy/Sell Attitude with risk_tolerance=5, investment_style='Value Investing', investment_aggressiveness='6'](./../imgs/lab_result/estimate_llm_decission_performance/fund_manager_0.png) 15 | ![Fund Manager Buy/Sell Attitude with risk_tolerance=5, investment_style='Value Investing', investment_aggressiveness='6'](./../imgs/lab_result/estimate_llm_decission_performance/fund_manager_1.png) 16 | 17 | [Notebook address](./../notebooks/estimate_llm_decission_performance.ipynb) 18 | 19 | 20 | 2. With the change of pre-conditions of agents such as investmen style, greedness, role, risk tollerance, the buy/sell attitude will change, which is the key element leads to success. -------------------------------------------------------------------------------- /imgs/feature.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangzhejian/quantgpt-agents/128273627b8e9f8426f71799f9da3674a75c0314/imgs/feature.png -------------------------------------------------------------------------------- /imgs/flowchart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangzhejian/quantgpt-agents/128273627b8e9f8426f71799f9da3674a75c0314/imgs/flowchart.png -------------------------------------------------------------------------------- /imgs/lab_result/estimate_llm_decission_performance/fund_manager_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangzhejian/quantgpt-agents/128273627b8e9f8426f71799f9da3674a75c0314/imgs/lab_result/estimate_llm_decission_performance/fund_manager_0.png -------------------------------------------------------------------------------- /imgs/lab_result/estimate_llm_decission_performance/fund_manager_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangzhejian/quantgpt-agents/128273627b8e9f8426f71799f9da3674a75c0314/imgs/lab_result/estimate_llm_decission_performance/fund_manager_1.png -------------------------------------------------------------------------------- /imgs/multi_index.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangzhejian/quantgpt-agents/128273627b8e9f8426f71799f9da3674a75c0314/imgs/multi_index.png -------------------------------------------------------------------------------- /imgs/normal_index.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangzhejian/quantgpt-agents/128273627b8e9f8426f71799f9da3674a75c0314/imgs/normal_index.png -------------------------------------------------------------------------------- /news.csv: -------------------------------------------------------------------------------- 1 | ,标题,内容,发布时间戳 2 | 100,,财联社9月25日电,美国30年期国债收益率上涨10个基点至4.627%。,2023-09-25 21:07:25 3 | 101,上海市政府常务会议部署促进0-3岁婴幼儿托育服务 加快打造15分钟托育圈,【上海市政府常务会议部署促进0-3岁婴幼儿托育服务 加快打造15分钟托育圈】财联社9月25日电,上海市委副书记、市长龚正今天(25日)主持召开市政府常务会议,要求按照市委部署,进一步促进我市托育服务发展,做好农村房地一体宅基地确权登记工作。会议原则同意《关于进一步促进本市托育服务发展的指导意见》并指出,0-3岁婴幼儿托育服务是深入贯彻人民城市重要理念,加快儿童友好城市建设的重要内容,事关婴幼儿健康成长,关系千家万户切身利益。要进一步支持全市公办幼儿园托班“应开尽开、能多开尽量多开”,着力增加托幼一体资源供给,做好中长期规划布局,对五个新城、远郊等地区予以重点支持,加快打造15分钟托育圈。 (上观新闻),2023-09-25 21:15:03 4 | 102,,财联社9月25日电,加拿大10年期国债收益率日内上涨达10.4个基点,达到自2007年12月以来的最高水平,报4.014%。,2023-09-25 21:22:57 5 | 103,天孚通信:公司高速光引擎项目目前进展顺利,【天孚通信:公司高速光引擎项目目前进展顺利】财联社9月25日电,天孚通信在业绩说明会上表示,公司高速光引擎项目目前进展顺利。根据泰国工厂整体规划,泰国工厂一期建设将在明年上半年投入使用。公司定位光器件整体解决方案提供商,不断为客户创造新价值,市场占有率预期将逐步提升。,2023-09-25 21:25:54 6 | 104,中基协:截至8月底公募基金资产净值合计28.71万亿元,【中基协:截至8月底公募基金资产净值合计28.71万亿元】财联社9月25日电,中基协数据显示,截至2023年8月底,我国境内共有基金管理公司144家,其中,外商投资基金管理公司48家(包括中外合资和外商独资),内资基金管理公司96家;取得公募基金管理资格的证券公司或证券公司资产管理子公司12家、保险资产管理公司1家。以上机构管理的公募基金资产净值合计28.71万亿元。,2023-09-25 21:27:36 7 | 105,美股三大指数集体低开 热门中概股普跌,【美股三大指数集体低开 热门中概股普跌】财联社9月25日电,美股三大指数集体低开,道指跌0.20%,纳指跌0.30%,标普500指数跌0.25%。热门中概股普跌,理想汽车跌超6%,蔚来跌逾5%,哔哩哔哩、京东跌逾3%,阿里巴巴、贝壳跌近3%。,2023-09-25 21:30:40 8 | 106,【风口研报·洞察】发改委发布《增量配电业务配电区域划分实施办法(征求意见稿)》,分析师看好该文件有望弥补传统电网对配网投资不足问题,配网设备环节标的有望受益;长假临近,国内外有哪些事件值得关注,①长假临近,国内外有哪些事件值得关注;②发改委发布《增量配电业务配电区域划分实施办法(征求意见稿)》,分析师看好该文件有望弥补传统电网对配网投资不足问题,有利于推动增量配网建设,配网设备环节标的有望受益;③今日全市场机构研报共发布502篇,光迅科技评级得到上调,19家公司获得首度覆盖,其中斯莱克等4股获新财富分析师覆盖;④在个股机构关注度排行中,小商品城首次上榜,前五名依次为中国石化>盐津铺子>新澳股份>北新建材>小商品城。,2023-09-25 21:32:37 9 | 107,,财联社9月25日电,欧元兑美元跌破1.06,为3月16日以来首次,日内跌0.45%。,2023-09-25 21:38:52 10 | 108,深交所10家公司IPO中止 原因均系更新财报,【深交所10家公司IPO中止 原因均系更新财报】财联社9月25日电,记者25日晚间从深交所获悉,三技技术、东方四通、山大电力、冠优达、联纲光电等10家深交所主板和创业板公司IPO中止,IPO按下“暂停键”原因均系更新财报。根据《深圳证券交易所股票发行上市审核规则》第五十九条的相关规定,深交所中止上述10家公司的发行上市审核。,2023-09-25 21:40:27 11 | 109,普华永道:上半年中国汽车行业并购交易金额超1275亿元 估值去泡沫化趋势显著,【普华永道:上半年中国汽车行业并购交易金额超1275亿元 估值去泡沫化趋势显著】财联社9月25日电,普华永道发布的《2023年上半年中国汽车行业并购活动回顾及趋势展望》报告显示,汽车行业2023年上半年并购交易金额超1275亿元,交易数量为343宗,相较2022年同期呈现下降趋势。其中,整车制造环节的并购规模有所扩大,零部件、后市场领域的降幅均较为显著。在交易量级方面,巨型交易占比缩减,整体分布趋势平衡。2023年上半年,汽车行业超百亿元的巨型交易金额相较2022年下半年缩减36%,估值去泡沫化趋势显著,资本市场逐渐回归价值。,2023-09-25 21:48:47 12 | 110,诺和诺德与科技公司Valo Health达成人工智能药物协议 价值可达27亿美元,【诺和诺德与科技公司Valo Health达成人工智能药物协议 价值可达27亿美元】财联社9月25日电,诺和诺德发布声明称,与美国科技公司Valo Health达成合作协议,寻求利用人类数据和人工智能发现并开发心脏代谢疾病(CMD)的新疗法。根据协议条款,Valo将获得预付款和潜在的近期里程碑付款,总额为6000万美元,并有资格获得最多11个项目的里程碑付款,总额可达27亿美元,外加研发费用资金和潜在的特许权使用费。,2023-09-25 21:49:38 13 | 111,日产CEO:到2030年在欧洲仅销售电动汽车目标不变 现在已没有退路,【日产CEO:到2030年在欧洲仅销售电动汽车目标不变 现在已没有退路】财联社9月25日电,日产CEO内田诚表示,目前公司在欧洲推出的所有新车型都将是纯电动汽车,并重申到2030年在欧陆仅销售电动汽车的计划。内田诚在英国伦敦的一次活动上表示:“现在已经没有退路了。我们相信,为了我们的业务、客户和地球,这样做是正确的。”,2023-09-25 21:53:57 14 | 112,恒大地产:“20恒大04”未能按期兑付本息,【恒大地产:“20恒大04”未能按期兑付本息】财联社9月25日电,恒大地产集团有限公司公告,恒大地产集团有限公司2020年面向专业投资者公开发行公司债券(第一期)(债券简称:20恒大04;债券代码:149247.SZ,以下简称“本期债券”)应于2023年9月25日支付本期债券回售本金及相关利息(9月23日非交易日,顺延至其后的第1个交易日)。截至2023年9月25日终,恒大地产集团有限公司(简称“恒大地产”或“发行人”)未能按照约定兑付上述债券本息。恒大地产仍将以“不逃废债”为基本前提,积极与债券持有人协商,以期尽快达成持有人认可的解决方案,在各方努力下共同化解债务风险,依法维护债权人合法权益。,2023-09-25 22:02:15 15 | 113,日本首相将公布经济对策 扶持国内半导体生产,【日本首相将公布经济对策 扶持国内半导体生产】财联社9月25日电,据日本《读卖新闻》报道,日本首相岸田文雄将在10月份确定经济对策,基本方案内容浮出水面。除减轻电费、燃气费和汽油费负担外,政府还将对国内生产半导体等重要物资进行扶持。 (环球网),2023-09-25 22:04:35 16 | 114,大商所王伟军:发挥生猪期货市场功能 更好服务产业风险管理,【大商所王伟军:发挥生猪期货市场功能 更好服务产业风险管理】财联社9月25日电,2023生猪产业产融结合发展高峰论坛在河南省南阳市举行。大商所党委委员、副总经理王伟军在论坛上表示,下一步,大商所将持续强化监管,确保市场平稳运行,保障市场功能作用有效发挥;通过优化产品的规则、市场运行交易者结构,持续提升市场功能,强化对产业企业的培育开发;继续优化和推广“保险+期货”模式,继续以“企业风险管理计划”和“产融培育基地”为抓手,广泛动员各方力量,更好服务产业不同主体风险管理需求;进一步完善产品体系,拓展风险管理工具链,努力为企业提供更加协同多样的风险管理工具;强化期现结合,以期现联动、场内场外协同为切入点,优化各项功能,更好服务产业企业个性化风险管理的需求。,2023-09-25 22:05:10 17 | 115,【公告全知道】华为+工业互联网+智算中心+人工智能+算力+机器人!公司与华为昇腾合作开展智算中心项目,①华为+工业互联网+智算中心+人工智能+算力+大数据+机器人+信创!这家公司与华为昇腾合作开展智算中心项目,推出AI一体机;②工业互联网+华为+智慧工厂+数据中心+国产软件+数字经济!这家公司与华为合作超过20年并推出基于鸿蒙物联网的实训平台;③华为+卫星导航+5G+毫米波雷达+无人驾驶+比亚迪+新能源汽车!公司是华为产品供应商。,2023-09-25 22:06:28 18 | 116,,财联社9月25日电,美元指数DXY站上106,为去年11月30日以来首次,日内涨0.40%。,2023-09-25 22:10:10 19 | 117,大众汽车首次在中国银行间市场发行熊猫债,【大众汽车首次在中国银行间市场发行熊猫债】财联社9月25日电,中国银行间市场交易商协会9月25日消息,2023年9月21日,大众汽车在银行间市场发行首单15亿元熊猫债,成为又一家进入中国债券市场发债融资的跨国企业。大众汽车熊猫债的成功发行,标志着交易商协会开展定价配售机制优化试点的落地见效,凸显了中国债券市场对跨国企业的吸引力,有助于形成债券市场高水平开放的示范效应。,2023-09-25 22:11:31 20 | 118,Getty Images宣布推出生成式AI工具,【Getty Images宣布推出生成式AI工具】财联社9月25日电,商业图库Getty Images(NYSE:GETY)宣布推出自有AI生成器,已正式启用。据介绍,Getty Images生成式AI由NVIDIA Picasso提供支持,其专门使用Getty Images的创意媒体库内容和资料进行训练。客户可使用文本提示词转换图片生成功能,以引导模型根据其内容和资料制作影像。,2023-09-25 22:12:49 21 | 119,古巴驻美国使馆遭袭,【古巴驻美国使馆遭袭】当地时间9月24日晚,位于美国首都华盛顿的古巴驻美国使馆遭到袭击。古巴外交部称,袭击者向使馆内投掷了2枚燃烧弹。袭击未造成人员伤亡。事件发生后,古巴外交部长罗德里格斯在社交媒体上表示,这是针对古巴驻美国使馆的第二次暴力袭击。此前,2020年,古巴驻美国使馆曾遭到枪击。,2023-09-25 22:12:53 22 | 120,,财联社9月25日电,美元兑日元上涨0.3%至148.87,为2022年10月以来的最高水平。,2023-09-25 22:14:37 23 | 121,,财联社9月25日电,现货白银日内跌幅达1%,现报23.31美元/盎司。,2023-09-25 22:19:09 24 | 122,报告:六成LP和GP认为投资环境改善 77%受访者认为美国2024年底将发生衰退,【报告:六成LP和GP认为投资环境改善 77%受访者认为美国2024年底将发生衰退】财联社9月25日电,2023年6月至7月,高盛对超过200家覆盖一级市场多投资策略的有限责任合伙人(LP)和普通合伙人(GP)进行了调研。9月25日,高盛发布的调研结果显示,与去年相比,LP和GP们对投资机会的乐观程度有所上升:64%的受访者认为投资环境改善,22%的受访者认为环境正趋于稳定。调查显示,投资者认为风险主要集中在宏观层面,而非市场因素;受访者认为前几大风险因素分别为:经济衰退、地缘政治冲突、通胀、利率。 二手份额、私募信贷和基础设施被视为前三大增长机会。在经济衰退风险方面,77%受访者认为未来两年美国将会陷入衰退,其中23%认为衰退将发生在2023年,53%认为是2024年。,2023-09-25 22:28:33 25 | 123,南海部分海域进行军事演习 禁止驶入,【南海部分海域进行军事演习 禁止驶入】财联社9月25日电,据中国海事局网站消息,广东海事局发布航行警告,9月26日4时至14时,南海部分海域进行军事演习,禁止驶入。,2023-09-25 22:29:38 26 | 124,,财联社9月25日电,美国9月达拉斯联储商业活动指数为-18.1,预期-13,前值-17.2。,2023-09-25 22:30:48 27 | 125,亚通股份:拟定增募资不超5.7亿元,【亚通股份:拟定增募资不超5.7亿元】财联社9月25日电,亚通股份公告,公司拟向特定对象发行股票募资不超过5.7亿元,扣除发行费用后的募资净额将用于长兴岛38号地块安置房项目、补充流动资金。,2023-09-25 22:32:47 28 | 126,,财联社9月25日电,ICE原糖期货日内跌幅达2.5%,报26.59美分/磅。,2023-09-25 22:33:41 29 | 127,欧盟2023年第二季度能源产品进口继续下降,【欧盟2023年第二季度能源产品进口继续下降】财联社9月25日电,据欧盟统计局当地时间25日公布的数据,继第一季度能源产品进口出现下降后,2023年第二季度欧盟能源产品进口继续下降。第二季度与去年同期相比,进口金额下降了39.4%,进口数量下降11.3%。2023年第二季度,俄罗斯在欧盟石油进口总额中所占份额为4.0%,去年同期为21.6%。,2023-09-25 22:35:58 30 | 128,湖北长江车谷产业投资基金正式成立 总规模100亿元,【湖北长江车谷产业投资基金正式成立 总规模100亿元】财联社9月25日电,武汉经开区官微消息,9月25日,在2023中国车谷汽车零部件招商大会上,总规模100亿元的湖北长江车谷产业投资基金正式成立,由长江产业集团联合武汉市、武汉经开区及国内整车龙头企业共同发起设立,首期规模20亿元,下设围绕整车企业产业链投资的子基金、支持重大产业项目落地的专项基金等。,2023-09-25 22:39:06 31 | 129,,财联社9月25日电,欧洲央行行长拉加德表示,中期通货膨胀要及时回到目标,所以这意味着我们不能只是缓慢前进。,2023-09-25 22:39:52 32 | 130,雪佛龙CEO:通过改善政策 美国的石油产量将会增加,【雪佛龙CEO:通过改善政策 美国的石油产量将会增加】财联社9月25日电,雪佛龙CEO表示,美国能源政策必须更加一致;通过改善政策,美国的石油产量将会增加;美国石油公司“并非政策的敌人”;石油和天然气的现金回报是持续的。,2023-09-25 22:40:52 33 | 131,哈萨克斯坦外交部否认该国将退出集安组织的传言,【哈萨克斯坦外交部否认该国将退出集安组织的传言】财联社9月25日电,哈萨克斯坦外交部发言人斯马迪亚罗夫当地时间9月25日表示,有关哈萨克斯坦计划退出集体安全条约组织(集安组织)的传言不符合事实。斯马迪亚罗夫说,有传言称哈萨克斯坦和亚美尼亚正在进行相关谈判,退出集安组织,这不符合事实。几天前,集安组织成员国外长还举行了会议,讨论了组织未来发展方向。据悉,目前集安组织共有6个成员国,分别为亚美尼亚、白俄罗斯、哈萨克斯坦、吉尔吉斯斯坦、俄罗斯和塔吉克斯坦。 (央视新闻),2023-09-25 22:47:07 34 | 132,COMEX期银日内下跌2%,【COMEX期银日内下跌2%】财联社9月25日电,COMEX期银日内下跌2%,现报23.37美元/盎司。,2023-09-25 22:47:31 35 | 133,欧洲央行行长拉加德:欧洲央行并未讨论降息,【欧洲央行行长拉加德:欧洲央行并未讨论降息】财联社9月25日电,欧洲央行行长拉加德表示,衰退不是基准情景的一部分;欧洲央行并未讨论降息。,2023-09-25 22:51:07 36 | 134,【电报解读】诺和诺德达成27亿美元人工智能药物协议,机构预计国内AI医疗市场规模5年增超5倍,这家公司自研产品助力药企实现分子砌块分析,诺和诺德达成27美亿元人工智能药物协议,机构预计国内AI医疗市场规模5年增超5倍,这家公司自研产品助力药企实现分子砌块分析,另一家已与一些AI公司形成战略合作。,2023-09-25 22:52:32 37 | 135,哈萨克斯坦总理与俄罗斯总理举行会晤,【哈萨克斯坦总理与俄罗斯总理举行会晤】财联社9月25日电,哈萨克斯坦总理斯迈洛夫当地时间9月25日与到访的俄罗斯总理米舒斯京在哈萨克斯坦首都阿斯塔纳举行了会晤。据介绍,米舒斯京此行是为了参加在阿斯塔纳举行的国际工业展览会全会,此次展览会共有来自18个国家的共超过1万人参加。米舒斯京现场参观了展览会上的机械制造、造船、机床制造、化工、纺织、航空和冶金等行业展台。,2023-09-25 22:54:35 38 | 136,法国总统宣布召回驻尼日尔大使并撤军,【法国总统宣布召回驻尼日尔大使并撤军】财联社9月25日电,法国总统马克龙24日在接受电视采访时宣布,将召回法国驻尼日尔大使,法国在尼日尔的驻军也将在今年年底前撤走。同一天,尼日尔军政府发表声明,对马克龙的撤军决定表示欢迎,称这一举措标志着尼日尔“向主权迈出了新的一步”,声明称,“帝国主义和新殖民主义势力在尼日尔领土上不再受欢迎,基于相互尊重和主权基础上的合作新时代已经开始”。尼日尔曾是法国殖民地,法国目前在尼日尔约有1500名驻军。 (CCTV国际时讯),2023-09-25 22:59:23 39 | 137,大商所、郑商所夜盘收盘普跌 焦煤跌超3%,【大商所、郑商所夜盘收盘普跌 焦煤跌超3%】财联社9月25日电,大商所、郑商所夜盘收盘普跌,焦煤、烧碱跌超3%,苯乙烯、铁矿石等跌逾2%,甲醇、菜粕等跌超1%,白糖、塑料等小幅下跌;仅棉花、粳米等极少数品种小幅上涨。,2023-09-25 23:01:07 40 | 138,,财联社9月25日电,芝加哥期权交易所全球市场和标普道琼斯指数将于9月27日推出CBOE标普500离散指数。,2023-09-25 23:02:45 41 | 139,标普将美国今年经济增速预测从1.7%提高至2.3% 预计还会再加息一次,【标普将美国今年经济增速预测从1.7%提高至2.3% 预计还会再加息一次】财联社9月25日电,标普称,现预计美国经济今年将增长2.3%,之前预计为1.7%;预计美国经济增长将在2024年放缓至1.3%,2025年为1.4%;预计美联储在这一轮加息周期中还会再加息一次。,2023-09-25 23:10:30 42 | 140,俄罗斯将国际刑事法院院长列入通缉名单,【俄罗斯将国际刑事法院院长列入通缉名单】财联社9月25日电,俄罗斯媒体25日援引俄内务部消息报道,俄罗斯已将国际刑事法院院长彼得·霍夫曼斯基列入通缉名单。国际刑事法院于今年3月对俄罗斯总统普京发出“逮捕令”。塔斯社在报道中说:“彼得·约瑟夫·霍夫曼斯基,波兰人。根据《俄罗斯联邦刑法典》条款,予以通缉。”,2023-09-25 23:14:30 43 | 141,外交部部长助理华春莹同乌拉圭副外长阿尔韦托尼举行中乌外交部第11次政治磋商,"【外交部部长助理华春莹同乌拉圭副外长阿尔韦托尼举行中乌外交部第11次政治磋商】2023年9月25日,外交部部长助理华春莹同乌拉圭副外长阿尔韦托尼在北京举行中乌外交部第11次政治磋商。 44 | 45 | 华春莹表示,中乌建交35年来,双边关系始终保持健康稳定发展,交流合作成果惠及两国人民。双方要进一步密切友好交往,巩固政治互信,持续高质量共建“一带一路”,深化各领域务实合作,推动中乌战略伙伴关系实现更大发展。 46 | 47 | 阿尔韦托尼积极评价双边关系发展,强调乌中两国相互尊重、理念相近。乌方坚定致力于深化乌中关系,希进一步密切两国高层交往,提升经贸合作水平,加强人文交流。",2023-09-25 23:26:57 48 | 142,缅甸国家管理委员会进行改组调整,【缅甸国家管理委员会进行改组调整】财联社9月25日电,缅甸国家管理委员会9月25日晚发布命令,根据宪法相关规定,对委员会进行改组,主要为成员人事调整,其中两名成员被替换。这次改组调整后的成员仍为18人,国防军总司令敏昂莱仍继续担任缅甸国家管理委员会主席。据了解,此次被替换的两名成员为莫敏吞中将和梭图中将,被貌貌埃中将和纽梭中将接替。,2023-09-25 23:38:39 49 | 143,何立峰与东布罗夫斯基斯主持第十次中欧经贸高层对话,"【何立峰与东布罗夫斯基斯主持第十次中欧经贸高层对话】中共中央政治局委员、国务院副总理何立峰与欧盟委员会执行副主席东布罗夫斯基斯25日在北京共同主持第十次中欧经贸高层对话。 50 | 51 | 何立峰表示,今年是中欧建立全面战略伙伴关系20周年,中方愿同欧方一道,落实好双方领导人达成的重要共识,巩固传统领域合作,积极拓展新的合作领域,共同应对全球性挑战,推动中欧全面战略伙伴关系迈上新台阶。 52 | 53 | 东布罗夫斯基斯表示,欧方愿与中方加强经贸领域务实合作,推动欧中关系持续向前发展。 54 | 55 | 中欧双方围绕宏观经济、贸易与投资、产业链供应链、金融合作等议题进行了坦诚务实的沟通交流,达成一系列互利共赢的成果和共识。",2023-09-25 23:39:47 56 | 144,欧洲主要股指集体收跌 德国DAX30指数跌0.99%,【欧洲主要股指集体收跌 德国DAX30指数跌0.99%】财联社9月25日电,欧洲主要股指集体收跌,德国DAX30指数跌0.99%,英国富时100指数跌0.75%,法国CAC40指数跌0.85%,欧洲斯托克50指数跌0.99%。,2023-09-25 23:44:02 57 | 145,前美联储主席伯南克:将评估英国央行在预测中是否应继续使用市场利率,【前美联储主席伯南克:将评估英国央行在预测中是否应继续使用市场利率】财联社9月25日电,前美联储主席本·伯南克对英国央行预测流程的评估将关注是否应继续将利率的市场路径作为建立预测的主要假设。英国央行周一公布了伯南克评估的职权范围,令这位前美联储主席关注评估过程的五个关键方面。其中涵盖“预测中的适当条件假设,包括该预测所依据的利率路径。”,2023-09-25 23:48:23 58 | 146,法国计划控制电价以促进绿色投资,【法国计划控制电价以促进绿色投资】财联社9月26日电,法国总统马克龙表示,法国将在今年年底前出台一项限制电价的法律,以鼓励其能源转型所需的数十亿欧元投资。马克龙周一在巴黎的一次演讲中概述了法国应对气候变化的战略,他说:“我们将在法国和欧洲层面重新控制我们的电力。”他补充说,将于10月出台的电价新规将使法国“在欧洲层面处于非常有利的竞争地位”。其目的是确保企业和家庭支付的价格(最近随着天然气价格上涨而上涨)更接近法国的生产成本。,2023-09-25 23:50:46 59 | 147,亚马逊云服务CEO:AWS用户获得Anthropic AI工具的早期接入权限,【亚马逊云服务CEO:AWS用户获得Anthropic AI工具的早期接入权限】财联社9月25日电,亚马逊云服务(AWS)的首席执行官Adam Selipsky表示,AWS用户获得Anthropic AI工具的早期接入权限;亚马逊继续开发专有的人工智能工具;亚马逊在推进生成式AI方面“完全有紧迫感”;亚马逊正“尽可能迅速地”扩大芯片供应链;生成式AI领域对芯片的“需求旺盛”;对Anthropic AI的初步投资为12.5亿美元。,2023-09-26 00:08:52 60 | 148,美联储研究:美国只有收入前20%人群现金财富多于疫情前,【美联储研究:美国只有收入前20%人群现金财富多于疫情前】财联社9月26日电,美联储对居民财务状况的最新研究显示,除了收入前20%的人以外,其他美国人已经用光了疫情期积攒的额外储蓄,现在手头的现金比疫情开始时要少。对收入后80%的居民而言,截至今年6月,经通胀调整后的银行存款和其他流动资产低于2020年3月水平。,2023-09-26 00:15:00 61 | 149,俄黑海舰队总部坍塌建筑被爆炸拆除,【俄黑海舰队总部坍塌建筑被爆炸拆除】财联社9月26日电,塞瓦斯托波尔市长于9月25日11、12、18时许三次发表声明称,当地正在引爆俄黑海舰队总部坍塌的建筑以降低受损建筑再次倒塌的风险,并提醒民众不要因巨大的爆炸声产生恐慌。当天乌克兰武装部队曾发消息称,乌军对俄黑海舰队总部的导弹袭击导致该建筑很难被修复。,2023-09-26 00:24:24 62 | 150,亚投行第八届理事会年会开幕 亚投行行长宣布启动《气候行动计划》,【亚投行第八届理事会年会开幕 亚投行行长宣布启动《气候行动计划》】财联社9月26日电,亚洲基础设施投资银行(亚投行)第八届理事会年会25日在埃及沙姆沙伊赫开幕,这是亚投行首次在非洲召开年会。亚投行行长金立群在开幕式上宣布,亚投行将启动《气候行动计划》,这是亚投行致力于应对气候变化的一个里程碑。,2023-09-26 00:27:13 63 | 151,黄金消费高景气度引关注 业内:A股在四季度有望迎来重大转机,【黄金消费高景气度引关注 业内:A股在四季度有望迎来重大转机】财联社9月26日电,根据Wind数据,截至9月25日,9月以来券商累计调研819只个股,环比增长约45%。值得一提的是,随着近段时间黄金珠宝需求热度升高,周大生、潮宏基、菜百股份等个股受到券商关注,在调研中黄金市场销售情况、产品布局、未来市场需求等多方面问题频频被追问。国泰君安研报预计,黄金珠宝有望受益于下半年金九银十旺季与新产品周期催化共振。市场方面,业内人士认为,在经历了二季度至三季度的调整后,A股迎来基本面、流动性、政策面的上行拐点,在四季度有望迎来重大转机。 (中证报),2023-09-26 00:40:35 64 | 152,白俄罗斯总统签署总统令 管理境内民用无人机的生产、销售及使用,【白俄罗斯总统签署总统令 管理境内民用无人机的生产、销售及使用】财联社9月26日电,白俄罗斯总统卢卡申科9月25日签署《关于民用无人机的国家登记和使用》的总统令。根据文件规定,只有经批准的组织和个体企业才能够在白俄罗斯境内以开展企业和专业活动为目的进行民用无人机的进口、持有、销售、 操作和制造。,2023-09-26 00:45:58 65 | 153,纳卡地区一油库发生爆炸,【纳卡地区一油库发生爆炸】财联社9月26日电,据俄罗斯卫星通讯社报道,纳戈尔诺-卡拉巴赫地区(纳卡地区)斯捷潘纳克特(汉肯德)一座油库25日发生爆炸,有人员伤亡。 (央视新闻),2023-09-26 01:02:55 66 | 154,,财联社9月26日电,戴文能源公司称,90美元/桶的油价使得二级页岩油井更具吸引力。,2023-09-26 01:06:07 67 | 155,阿根廷上空疑现8年来最大臭氧层空洞,【阿根廷上空疑现8年来最大臭氧层空洞】财联社9月26日电,据阿根廷国家气象局当地时间9月24日报告,当地时间21日和22日该国南部火地岛省上空现最大臭氧层空洞,专家表示,这可能是自2015年以来最大的臭氧空洞。每年,臭氧层空洞会在8月至12月之间形成,导致紫外线辐射的增加,对健康产生多种有害影响。近年来,随着各国环保意识的增强和产业的升级,臭氧空洞的面积呈现缩小趋势,2019年,臭氧空洞的面积约为630万平方公里,是自1982年首次测量以来的最小值。,2023-09-26 01:14:06 68 | 156,,财联社9月26日电,法荷航集团订购了50架A350空客飞机。,2023-09-26 01:14:33 69 | 157,,财联社9月26日电,周一美联储隔夜逆回购协议(RRP)使用规模为1.437万亿美元。,2023-09-26 01:16:54 70 | 158,,财联社9月26日电,意大利将把2024年预算赤字目标定在GDP的4.1%-4.3%之间,4月份设置的目标是3.7%。,2023-09-26 01:19:13 71 | 159,新疆阿克苏地区沙雅县发生3.2级地震,【新疆阿克苏地区沙雅县发生3.2级地震】财联社9月26日电,中国地震台网正式测定:09月26日01时13分在新疆阿克苏地区沙雅县(北纬41.12度,东经83.17度)发生3.2级地震,震源深度10千米。,2023-09-26 01:23:43 72 | 160,国际评级机构警告:政府停摆将对美国信用评级产生负面影响,【国际评级机构警告:政府停摆将对美国信用评级产生负面影响】财联社9月26日电,国际评级机构穆迪投资者服务公司(Moody’s)当地时间9月25日表示,美国政府如果在月底前无法通过支出法案而停摆,将对美国的信用评级产生负面影响。穆迪当天表示,政府停摆将凸显美国的机构和治理实力的薄弱。但是穆迪称,停摆不太可能对美国的债务偿还能力产生重大影响,预计政府停摆的时间将较为短暂,对政府的干扰有限。,2023-09-26 01:26:52 73 | 161,商务部:中欧双方同意加强中欧证券期货监管部门在多双边框架下的交流与合作 并加强“合格中央对手方”监管合作,【商务部:中欧双方同意加强中欧证券期货监管部门在多双边框架下的交流与合作 并加强“合格中央对手方”监管合作】财联社9月26日电,商务部新闻发言人就第十次中欧经贸高层对话有关情况答记者问时表示,双方同意加强中欧证券期货监管部门在多双边框架下的交流与合作,共同应对国际经济金融挑战,并加强“合格中央对手方”监管合作。中国证监会和欧委会有关部门将共同评估关于中央对手方监管和监管框架的等效性认定,为提供清算服务的中国期货交易所申请成为欧盟“合格中央对手方”创造条件。双方金融监管部门同意进一步加强交流合作,共同促进金融市场稳定发展。欧方欢迎中方近年来在优化外资银行在华分行监管要求方面取得的成果。中方希望欧方在修订银行业监管相关政策指引时充分考虑中方合理关切,为中资银行在欧发展提供良好营商环境。,2023-09-26 01:44:13 74 | 162,国际原子能机构第67届大会开幕 格罗西:扎波罗热核电站情况依旧脆弱,【国际原子能机构第67届大会开幕 格罗西:扎波罗热核电站情况依旧脆弱】财联社9月26日电,国际原子能机构第67届大会当地时间25日在奥地利首都维也纳开幕。国际原子能机构总干事格罗西在发言中说,目前扎波罗热核电站的情况依旧非常脆弱,国际原子能机构的10名安全专家轮换进入核电站,将继续在那里开展工作。,2023-09-26 01:49:50 75 | 163,美国战略石油储备连续增长八周,【美国战略石油储备连续增长八周】财联社9月26日电,美国能源部(DOE)的数据显示,美国战略石油储备(SPR)连续增长八周,至9月22日达到3.515亿桶。,2023-09-26 01:51:27 76 | 164,,财联社9月26日电,COMEX 12月黄金期货结算价收跌0.46%,报1945.6美元/盎司。COMEX 12月白银期货结算价收跌1.92%,报23.385美元/盎司。,2023-09-26 02:00:25 77 | 165,德国一难民中心因暴发麻疹疫情被隔离,【德国一难民中心因暴发麻疹疫情被隔离】财联社9月26日电,据德国媒体当地时间25日报道,由于德国柏林一处难民抵达中心暴发麻疹疫情,一栋容纳约600人的建筑已被隔离。柏林州难民事务办公室发言人萨沙·兰根巴赫当天向媒体证实,两名儿童被诊断出感染麻疹,居民暂时不得离开大楼。,2023-09-26 02:00:51 78 | 166,塞瓦斯托波尔市拉响防空警报 克里米亚大桥禁止汽车通行,【塞瓦斯托波尔市拉响防空警报 克里米亚大桥禁止汽车通行】财联社9月26日电,塞瓦斯托波尔市当地行政长官发布消息称,当地时间25日晚,塞瓦斯托波尔市拉响防空警报。克里米亚大桥暂时禁止汽车通行。,2023-09-26 02:11:50 79 | 167,三星电子计划10月份开始在印度生产笔记本电脑,【三星电子计划10月份开始在印度生产笔记本电脑】财联社9月26日电,据两位知情人士透露,三星电子计划下月开始在印度生产笔记本电脑,此举将通过财政激励、税收减免和进口限制等措施,加大印度政府推动国内生产的努力。“三星将开始在这里生产笔记本电脑。诺伊达(Noida)工厂是该公司在印度最大的手机制造工厂,将容纳用于生产笔记本电脑的额外生产线,”其中一位知情人士表示。另一知情人士表示,新设施将于下月开始运营,尽管产能有限。“可能会生产大约6万至7万台。这就是年产能,”该人士补充道。 (Mint),2023-09-26 02:17:58 80 | 168,以军称空袭加沙地带哈马斯军事目标,【以军称空袭加沙地带哈马斯军事目标】财联社9月26日电,根据以色列国防军发表的声明,当地时间9月25日晚间,以军出动无人机对加沙地带北部巴勒斯坦伊斯兰抵抗运动(哈马斯)的一处军事阵地发动了空袭。声明表示,当天稍早,巴勒斯坦人员在加沙边境向以军开枪,空袭行动是对此的回应。当天稍早,数十名巴勒斯坦青年继续在加沙边境地带举行游行活动,并沿着边界围栏焚烧轮胎等燃烧物。以军则发射催泪瓦斯、实弹等对人群进行驱离。根据加沙当地卫生部门消息,冲突导致一名巴勒斯坦人受伤。,2023-09-26 02:28:05 81 | 169,美油、布油期货结算价涨跌不一,【美油、布油期货结算价涨跌不一】财联社9月26日电,美油、布油期货结算价涨跌不一。WTI 11月原油期货结算价收跌0.35美元,跌幅0.39%,报89.68美元/桶。布伦特11月原油期货结算价收涨0.02美元,涨幅0.02%,报93.29美元/桶。,2023-09-26 02:34:45 82 | 170,标普:预计英国经济将继续保持低增长、接近停滞的状态直至2024年,【标普:预计英国经济将继续保持低增长、接近停滞的状态直至2024年】财联社9月26日电,标普称,预计英国经济将继续保持低增长、接近停滞的状态,直至2024年,因为实际利率将越来越具限制性;英国整体通胀率仍然较高,但我们预计在2024年下半年将逐渐回落接近目标水平;英国家庭消费在第二季度大幅增长,但在今年下半年将出现下调修正。,2023-09-26 02:39:38 83 | 171,,财联社9月26日电,美国10年期国债收益率当日上涨10个基点至4.538%。,2023-09-26 02:40:07 84 | 172,,财联社9月26日电,联合汽车工会(Unifor)称,将通用汽车(GM)列为下一个谈判目标。,2023-09-26 02:41:35 85 | 173,俄外交部:亚美尼亚总理对俄指责不可接受,【俄外交部:亚美尼亚总理对俄指责不可接受】财联社9月26日电,据媒体报道,当地时间25日,亚美尼亚总理帕希尼扬在首都埃里温会见了到访的俄罗斯内务部长科洛科利采夫,双方就两国间强力部门合作进行了讨论。按照俄罗斯内务部发布的通报,科洛科利采夫表示,西方企图利用乌克兰局势,将俄罗斯逐出南高加索地区并破坏俄亚两国关系。美国和欧盟正向其他国家强力推销自己关于改革安全、护法、国防和司法等关键体系的“药方”。这一举动正在破坏俄罗斯与亚美尼亚的联盟关系。 (央视新闻),2023-09-26 02:48:41 86 | 174,福特汽车暂停密歇根州电动汽车电池厂的建造,【福特汽车暂停密歇根州电动汽车电池厂的建造】财联社9月26日电,福特汽车表示,将在密歇根州Marshall暂停其电动汽车电池工厂的建造工作,并限制建造支出,直到该公司对其“有竞争力地运营该工厂的能力”充满信心。尚未就规划的投资做出最终决定。此前,《底特律新闻报》援引福特汽车发言人的话报道称,该公司这一商业决策中有“一系列考量因素”。施工暂停于周一生效。,2023-09-26 02:55:40 87 | 175,西方石油公司CEO:欧洲可能会在未来花更多的钱来购买美国天然气,【西方石油公司CEO:欧洲可能会在未来花更多的钱来购买美国天然气】西方石油公司CEO表示,公司到2025年将于美国二叠纪页岩油产区修建净零碳排放发电站;欧洲可能会在未来花更多的钱来购买美国天然气;能源转型风险是“无法承受的”。,2023-09-26 02:58:32 88 | 176,,财联社9月26日电,美国参议院民主党议员沃伦呼吁财政部化解与气候变化相关的金融风险。,2023-09-26 02:59:42 89 | 177,在岸人民币兑美元较上周五夜盘收盘跌135点,【在岸人民币兑美元较上周五夜盘收盘跌135点】财联社9月26日电,在岸人民币兑美元(CNY)北京时间03:00收报7.3115元,较上周五夜盘收盘跌135点。成交量97.34亿美元。,2023-09-26 03:09:47 90 | 178,最大美国长期国债ETF从历史高位暴跌48% 美联储加息前景带来压力,【最大美国长期国债ETF从历史高位暴跌48% 美联储加息前景带来压力】财联社9月26日电,因市场预期美联储将在更长时间维持高利率,最大的美国长期国债交易所交易基金(ETF)遭遇有记录以来最大跌势。据相关数据,规模390亿美元的iShares安硕20年期以上美国国债ETF(代码TLT)已从2020年的历史高点下跌48%,交易价格处于2011年以来最低。与此同时,IHS Markit Ltd.数据显示,对该ETF的做空已经增加,空头头寸占流通基金份额的比例达到约一个月来最高水平。“这都与利率预期有关——通胀引发了利率大幅上升,再加上经济强于预期,意味着利率将继续走高,”Strategas Securities的ETF和技术策略师Todd Sohn说,“还有进一步加息的可能,所以久期会受到影响。”,2023-09-26 03:18:45 91 | 179,苏丹镑持续贬值 创历史低点,【苏丹镑持续贬值 创历史低点】财联社9月26日电,据苏丹媒体报道,当地时间24日,苏丹本国货币苏丹镑对外汇率持续贬值,达到历史性的低点。在首都喀土穆,据外汇交易员介绍,目前在当地换汇市场,1美元可兑换880苏丹镑。而在苏丹武装冲突爆发的前一天,1美元可兑换607苏丹镑,至今已贬值超过四成。另外,现在1沙特里亚尔可兑换225苏丹镑,同样创下历史极值。,2023-09-26 03:19:03 92 | 180,美国能源部长格兰霍姆:美国计划在10年内建立一座商业核聚变设施,【美国能源部长格兰霍姆:美国计划在10年内建立一座商业核聚变设施】财联社9月26日电,美国能源部长格兰霍姆当地时间周一表示,核聚变是一项开创性的技术,拜登政府希望利用它作为向清洁能源过渡的一部分。格兰霍姆在维也纳接受采访时说,作为其能源议程的一部分,拜登政府希望在10年内建立一座商业核聚变设施。 (AP),2023-09-26 03:19:43 93 | 181,苹果一家供应商预计将花费数百亿日元 推动在泰国北部的一家工厂到2028年实现全面生产,【苹果一家供应商预计将花费数百亿日元 推动在泰国北部的一家工厂到2028年实现全面生产】财联社9月26日电,日本电子零部件制造商村田制作所(Murata Manufacturing)在泰国的一家新工厂已完成建设,将于11月投产,为增长奠定了基础,尽管该公司正经受着盈利下滑的冲击。这家苹果供应商预计将花费数百亿日元,计划到2028年其在泰国北部兰埔省的工厂能够实现全面生产。该工厂标志着对微型多层陶瓷电容器(MLCCs)未来需求的押注,这是手机和电动汽车的重要部件。村田在全球MLCC市场的占有率约为40%。 (日经新闻),2023-09-26 03:23:34 94 | 182,俄军防空系统在塞瓦斯托波尔别利别克机场附近拦截一枚导弹,【俄军防空系统在塞瓦斯托波尔别利别克机场附近拦截一枚导弹】财联社9月26日电,塞瓦斯托波尔市行政长官当地时间25日晚发布消息称,俄军防空系统在塞瓦斯托波尔别利别克机场附近拦截了一枚导弹。另据俄罗斯国防部通报,俄军防空系统25日晚在别尔哥罗德州拦截了乌克兰7架无人机。 (央视新闻),2023-09-26 03:25:41 95 | 183,业内人士:ETF费率的降低将进一步发挥ETF低成本的优势 提高对中长期资金的吸引力,【业内人士:ETF费率的降低将进一步发挥ETF低成本的优势 提高对中长期资金的吸引力】财联社9月26日电,公募降费效应正从主动权益类基金向被动权益类基金扩散。近期,易方达基金、工银瑞信基金、华安基金相继宣布降低旗下科创50ETF的费率。在业内人士看来,ETF费率的降低将进一步发挥ETF低成本的优势,提高对中长期资金的吸引力。业内人士分析认为,当前ETF市场渐成“红海市场”,对于基金管理人而言,要想在激烈的行业竞争中突围,除了提供低费率产品,还要加强对产品的前瞻性研究和创新性布局,并提供专业的服务,满足投资者多样化需求。 (上证报),2023-09-26 03:40:33 96 | 184,打造第二增长曲线 公募争设专业子公司,【打造第二增长曲线 公募争设专业子公司】财联社9月26日电,进入2023年,公募基金“看天吃饭”单一模式遭遇发展瓶颈,在政策的支持下,头部公募公司积极布局专业子公司。其中,REITs、私募股权投资、基金投顾、养老金融服务等业务受到基金公司的重点关注。在业内人士看来,在公募行业从高速发展转向高质量发展的过程中,基金公司设立专业子公司开拓新业务是实现差异化发展的一个重要方式,也是打造第二增长曲线的必经之路。 (上证报),2023-09-26 03:52:59 97 | 185,美股三大指数收盘均小幅上涨 大型科技股普涨,【美股三大指数收盘均小幅上涨 大型科技股普涨】财联社9月26日电,美股三大指数收盘均小幅上涨,纳指涨0.45%,标普500指数涨0.4%,道指涨0.13%。大型科技股普涨,亚马逊、奈飞、英伟达涨超1%,微软、谷歌、特斯拉、苹果、Meta小幅上涨。银行股多数上涨,摩根大通、富国银行、高盛、花旗小幅上涨,摩根士丹利、美国银行小幅下跌。,2023-09-26 04:00:25 98 | 186,热门中概股涨跌不一 理想汽车跌近10%,【热门中概股涨跌不一 理想汽车跌近10%】财联社9月26日电,热门中概股涨跌不一,纳斯达克中国金龙指数跌1.10%。理想汽车跌近10%,蔚来、京东跌超2%,哔哩哔哩、富途控股、阿里巴巴、网易跌超1%,百度、微博小幅下跌。小鹏汽车、唯品会涨超1%,拼多多、腾讯音乐、爱奇艺、满帮小幅上涨。法拉第未来重挫超24%,总市值仅剩5500万美元,创历史新低。,2023-09-26 04:00:46 99 | 187,中小基金公司争相入局 ETF赛道越来越“卷”,【中小基金公司争相入局 ETF赛道越来越“卷”】财联社9月26日电,近年来,ETF市场高速发展。在这过程中,不仅头部基金公司积极布局,不断拓展产品线,而且中小基金公司也陆续加入竞争行列。今年以来,鹏扬、西藏东财、兴银等中小基金公司均成立了ETF产品。海富通、永赢、平安等公司近日申报了新的ETF产品。据统计,目前约有20家中小基金公司布局ETF业务。 (上证报),2023-09-26 04:13:22 100 | 188,,财联社9月26日电,全美汽车工人联合会(UAW)称,与福特汽车关于劳资合同的磋商“非常积极”。,2023-09-26 04:14:31 101 | 189,蓝色起源的首席执行官Bob Smith辞职,【蓝色起源的首席执行官Bob Smith辞职】财联社9月26日电,蓝色起源的首席执行官Bob Smith辞职。公司将任命原亚马逊高管Dave Limp为新的CEO,以接替现任Smith将于12月4日辞职之后留下的职位空缺。,2023-09-26 04:21:04 102 | 190,青海果洛州玛多县发生3.0级地震,【青海果洛州玛多县发生3.0级地震】财联社9月26日电,中国地震台网正式测定:09月26日04时17分在青海果洛州玛多县(北纬35.57度,东经99.13度)发生3.0级地震,震源深度10千米。,2023-09-26 04:31:24 103 | 191,业内人士:TMT板块经过前期调整后 算力、游戏等细分赛道性价比逐步显现,【业内人士:TMT板块经过前期调整后 算力、游戏等细分赛道性价比逐步显现】财联社9月26日电,8月以来持续调整的科技股,正在获得越来越多机构加码布局。最新披露的华润信托阳光私募股票多头指数(CREFI指数)月报显示,8月CREFI指数成分基金持仓增幅最大的行业为技术硬件与设备。与此同时,数据显示,9月以来多只科技相关ETF获得大额净申购,部分头部私募重仓科技板块。在业内人士看来,TMT板块经过前期调整后,算力、游戏等细分赛道性价比逐步显现;港股科技股估值处于历史低位,相关龙头企业值得关注。 (上证报),2023-09-26 04:38:02 104 | 192,富国银行退出做多美国10年期通胀保值国债的交易策略,【富国银行退出做多美国10年期通胀保值国债的交易策略】财联社9月26日电,美国10年期通胀保值国债(TIPS)收益率升逾2.15%之际,富国银行策略师周一退出8月21日的建议,当时其建议在实际收益率为2%的水平买入10年期TIPS,未来两到三个月的收益率目标位为1.7%,止损设在2.15%。自从美联储9月20日暗示利率可能会在明年很长一段时间内保持高位以来,美国国债实际和名义收益率均已上升。更广泛的做多美国债券的建议是“建立在美联储很快暗示结束加息的基础之上,而这不是美联储周三发出的信息,”Angelo Manolatos和Mike Schumacher在报告中表示。,2023-09-26 04:39:18 105 | 193,今年以来发债规模突破万亿元 券商再融资“股冷债热”,【今年以来发债规模突破万亿元 券商再融资“股冷债热”】财联社9月26日电,今年以来,券商发债融资热情持续高涨,与低迷的股权再融资形成鲜明对照。近日,东方证券、财通证券、国元证券等多家券商获批发行公司债,规模均在百亿元级别。今年以来,券商发债融资规模已超过去年同期。数据显示,截至9月24日,券商今年以来已通过发行普通公司债、次级债、短期融资券累计募资10704.53亿元,而去年同期的发债规模合计为8937.68亿元,同比增长19.77%。券商发债规模为何大增?业内人士表示,当前券商发债踊跃,主要有三方面因素影响:一是业务发展和自身融资现金流的需要;二是“宽货币”环境下市场利率水平总体较低,有利于降低发债融资成本;三是受权益市场表现影响,券商股权再融资放缓,券商通过债券融资补充净资本,增强资产流动性。 (上证报),2023-09-26 04:49:46 106 | 194,澳大利亚一潜艇发生火灾 澳军方称无人伤亡,【澳大利亚一潜艇发生火灾 澳军方称无人伤亡】财联社9月26日电,据澳大利亚媒体当地时间9月26日报道,澳大利亚一艘柯林斯级潜艇在海上发生电气火灾。澳大利亚军方发言人表示,大火已被扑灭,无人伤亡。 (央视新闻),2023-09-26 04:51:45 107 | 195,,财联社9月26日电,韩国9月消费者信心指数为99.7,前值103.1。,2023-09-26 05:00:33 108 | 196,减持新规重塑市场生态 一个月逾百家上市公司股东按下减持“终止键”,【减持新规重塑市场生态 一个月逾百家上市公司股东按下减持“终止键”】财联社9月26日电,从8月27日中国证监会宣布进一步规范股份减持行为至今,已有超过百家上市公司的股东终止减持计划。其中,上市公司控股股东、实际控制人、董监高是终止减持的“主力”,在终止减持案例中占比约八成。 (上证报),2023-09-26 05:04:54 109 | 197,离岸人民币兑美元较上周五纽约尾盘跌167点,【离岸人民币兑美元较上周五纽约尾盘跌167点】财联社9月26日电,离岸人民币(CNH)兑美元北京时间04:59报7.3157元,较上周五纽约尾盘跌167点,盘中整体交投于7.2946-7.3180元区间。,2023-09-26 05:07:08 110 | 198,今年以来千余家上市公司变更募投项目 专家提醒警惕频繁变更带来相关风险,【今年以来千余家上市公司变更募投项目 专家提醒警惕频繁变更带来相关风险】财联社9月26日电,数据显示,截至9月24日,年内已有1147家公司披露募投项目变更。整体来看,主要有两种表现形式,一种是“小修小补”,即在原有项目基础上进行细节调整,包括调整实施地点、实施时间、实施主体等。而另一类则是“大改特改”,彻底改变募集资金的投向,甚至把募资用途变为偿还银行借款或永久补充流动资金等。中国金融智库特邀研究员余丰慧表示,投资者应关注上市公司相关募投项目的合理性和可行性,考虑整个公司的财务状况、行业前景、管理团队等因素。同时,也应密切关注公司的信息披露,及时了解募投项目的变化情况和相关风险提示。如果募投项目频繁变更,投资者可能需要重新评估公司的可靠性和投资价值,以免遭受损失。 (证券日报),2023-09-26 05:14:29 111 | 199,外商独资公募看好中国市场投资潜力 多元化布局新发产品线,【外商独资公募看好中国市场投资潜力 多元化布局新发产品线】财联社9月26日电,今年以来,在外商独资公募队伍快速扩容的背景下,外商独资公募产品“上新”也在提速。当前海外资管巨头加速布局中国基金市场。根据数据统计,截至2023年9月25日,今年以来,全市场已经有至少45只(不同份额产品分开计算)外商独资公募产品正式成立,合计发行规模超过160亿元。外商独资公募对于基金产品的排兵布阵各有不同。布局合格境内机构投资者基金产品的外商独资公募占比较多,在上述45只已成立的外商独资公募产品中,有15只为QDII基金。从产品类型来看,被动指数型QDII基金较多,另外FOF型、偏股混合型、普通股票型、REITs型等QDII基金均有布局,产品类别较为丰富。 (证券日报),2023-09-26 05:21:58 112 | 200,八大首席经济学家展望四季度宏观经济:复苏向好态势延续消费、房地产等表现值得期待,【八大首席经济学家展望四季度宏观经济:复苏向好态势延续消费、房地产等表现值得期待】财联社9月26日电,记者采访了民生银行首席经济学家温彬等八位“首席”。受访首席经济学家普遍认为,随着三季度宏观政策加码发力,国民经济恢复向好,三季度GDP同比增速或达到4.6%以上。四季度宏观经济将延续三季度的复苏态势,尤其消费、房地产等方面表现值得期待。此外,四季度货币政策、财政政策和产业政策仍有发力空间。 (证券日报),2023-09-26 05:26:56 113 | 201,央企战略性新兴产业发展基金助相关产业扬优势、补短板,【央企战略性新兴产业发展基金助相关产业扬优势、补短板】财联社9月26日电,“中国国新正在积极筹设中央企业战略性新兴产业发展基金,且有望在年内完成筹设和启动运营。”这是刚刚结束的第六届中国企业论坛上传来的一则重磅消息。记者进一步获悉,该基金以重大战略为导向。在产业突破方面,通过并购重组、培育孵化、成果转化等方式,多借助外部力量,多寻找外部优质项目,助力中央企业战略性新兴产业扬优势、补短板。在优化“面”的布局上,将梳理和细化产业板块不同的领域,坚持突出重点,牵引带动中央企业产业基金和社会资本,共同构建央企战略性新兴产业子基金群,加快形成全局性、多层次、高质量的产业布局。 (证券日报),2023-09-26 05:32:10 114 | 202,减持新规出台以来 A股上市公司重要股东减持金额同比降逾七成,【减持新规出台以来 A股上市公司重要股东减持金额同比降逾七成】财联社9月26日电,自8月27日证监会出台新规进一步规范股份减持行为以来,A股上市公司重要股东(包括控股股东、实际控制人、大股东、董监高等,下同)减持规模明显下降。据数据统计,8月28日至9月25日,上市公司重要股东减持金额同比下降71.44%。 (证券日报),2023-09-26 05:38:14 115 | 203,基金密集恢复大额申购 公募逆势布局中长期行情,【基金密集恢复大额申购 公募逆势布局中长期行情】财联社9月26日电,在市场处于相对低点之时,基金产品密集放开大额限制,重新“开门迎客”。9月25日,包括建信灵活配置混合型证券投资基金、南方兴锦利一年定期开放债券型发起式证券投资基金、长信乐信灵活配置混合型证券投资基金等在内的多只基金公告将恢复大额申购。接受采访的基金业内人士认为,基金恢复大额申购一般是因为对后市信心较强、基金策略能够承载更大规模等。同时,从近期的市场观察来看,积极性因素正在累积并产生效果,目前是逆势布局的较好时点。 (证券日报),2023-09-26 05:42:46 116 | 204,超六成私募看好A股中短期表现,【超六成私募看好A股中短期表现】财联社9月26日电,随着“双节”假期临近,投资者对于持股还是持币过节的问题,也将做最后抉择。9月25日,记者设计问卷并委托第三方机构进行的调查结果出炉。问卷调查结果显示,占比超一半的私募机构在长假持股、持币的抉择上,明显更倾向于“重仓或满仓持股”,选择轻仓或持币过节的私募占比则不足一成。超六成私募表示相对看好长假之后的A股短中期表现,其中,白马股最受关注。 (中证报),2023-09-26 05:59:39 117 | 205,经济日报:客运站转型势在必行,【经济日报:客运站转型势在必行】财联社9月26日电,经济日报第十版文章指出,供求关系决定了汽车客运市场的变化。据统计,截至去年底,全国二级以上汽车客运站有2800余个,客运业务普遍收不抵支,仅约20%汽车客运站通过“以商养站”等方式实现盈亏平衡,转型发展需求日益迫切。汽车客运站转型发展必须认清现状,进一步优化资源配置。各地情况不尽相同,汽车客运站在转型发展上不能千篇一律,要因地制宜、因企施策,创新发展路径。汽车客运站转型发展还离不开政策资金的扶持引导。同时,要采取相应政策措施鼓励客运站发挥企业主体责任,积极吸引社会资本投入,推动汽车客运站平稳转型。,2023-09-26 06:17:03 118 | 206,经济日报:稳汇率的关键是稳预期,【经济日报:稳汇率的关键是稳预期】财联社9月26日电,经济日报第五版文章称,展望下半年,尽管存在国内需求不足,一些企业经营困难,房地产、地方债领域风险隐患较多,国际形势复杂严峻等问题和挑战,但是我国基本面改善势头强劲,外汇供大于求格局不会逆转,稳汇率的基础更加牢靠。稳汇率的关键是稳预期。经济基本面是形成人民币汇率水平和趋势的决定性因素,是稳定市场预期的核心。要保持人民币汇率在合理均衡水平上的基本稳定,关键在于扎实推动经济高质量发展,供给侧结构性改革和拉动内需并重,实现经济提质增效并保持合理增速,继续巩固贸易大国和强国的地位,构建国际收支自主均衡的体制机制,将经常账户顺差控制在国际公认的合理范围内。,2023-09-26 06:18:12 119 | 207,周二你需要知道的隔夜全球要闻,"【周二你需要知道的隔夜全球要闻】 120 | 1、穆迪警告,若美国政府“关门”,将对其信用评级造成负面影响。 121 | 2、欧美股市涨跌不一,纳指涨0.45%,标普500指数涨0.4%,道指涨0.13%。热门中概股多数下跌,法拉第未来跌超24%,创历史新低。欧洲主要股指集体收跌,德国DAX30指数跌0.99%。 122 | 3、标普将美国今年经济增速预测从1.7%提高至2.3%,预计还会再加息一次。 123 | 4、芝加哥期权交易所全球市场和标普道琼斯指数将于9月27日推出CBOE标普500离散指数。 124 | 5、欧洲央行行长拉加德表示,欧洲央行并未讨论降息。 125 | 6、法国总统宣布召回驻尼日尔大使并撤军。 126 | 7、法国总统马克龙表示,法国将于10月份重获电价控制权。 127 | 8、白俄罗斯总统签署总统令,管理境内民用无人机的生产、销售及使用。 128 | 9、美国能源部长格兰霍姆表示,美国计划在10年内建造核聚变发电厂。 129 | 10、美油、布油期货结算价涨跌不一。WTI原油11月合约跌0.39%,布伦特原油11月合约涨0.02%。 130 | 11、苹果供应商预计将花费数百亿日元,推动在泰国北部的兰埔省工厂到2028年实现全面生产。 131 | 12、诺和诺德与科技公司Valo Health达成人工智能药物协议,价值可达27亿美元。 132 | 13、亚马逊云服务CEO表示,AWS用户获得Anthropic AI工具的早期接入权限。 133 | 14、Getty Images宣布推出生成式AI工具。 134 | 15、福特汽车表示,将在密歇根州Marshall暂停其电动汽车电池工厂的建造工作。 135 | 16、韩国三星电子计划10月份开始在印度生产笔记本电脑。 136 | 17、COMEX 12月黄金期货结算价收跌0.46%,COMEX 12月白银期货结算价收跌1.92%。 137 | 18、周一美联储隔夜逆回购协议使用规模为1.437万亿美元。",2023-09-26 06:29:34 138 | 208,加力打击违规行为 减持生态料优化,【加力打击违规行为 减持生态料优化】财联社9月26日电,北纬科技等公司9月22日公告,公司控股股东、实际控制人承诺不减持公司股份;西测测试9月18日披露了关于持股5%以上股东及其一致行动人减持股份累计达到1%暨减持计划实施进展及致歉公告;我乐家居大股东及其一致行动人违规减持股票被从重从快追究行政法律责任……在市场人士看来,8月27日减持新规发布以来,上市公司股东积极响应,以及监管部门严惩违规减持行为,在给予公司和投资者信心的同时,也对活跃资本市场有所帮助。随着监管部门不断提升规则效力层级,细化相关责任条款,加大对违规减持行为打击力度,将进一步改善A股投资生态。 (中证报),2023-09-26 06:34:55 139 | 209,瞄准睡眠账户 银行开启新一轮清卡行动,【瞄准睡眠账户 银行开启新一轮清卡行动】财联社9月26日电,针对持卡人长期不用且零余额的睡眠银行卡,近日,交通银行等多家银行启动新一轮“清卡”行动。对于“清卡”原因,多家银行表示,是为有效防范电信网络新型违法犯罪,保障客户的账户与资金安全和合法权益。分析人士表示,开户数量过多不利于持卡人对账户及资产妥善管理,也造成了银行资源的浪费。 (中证报),2023-09-26 06:38:39 140 | 210,机构和专家:港股底部特征较为明显 部分优质行业板块和个股正迎来买入良机,【机构和专家:港股底部特征较为明显 部分优质行业板块和个股正迎来买入良机】财联社9月26日电,港股主要指数9月25日出现回调。部分业内机构和专家表示,港股底部特征较为明显,部分优质行业板块和个股正迎来买入良机。从资金流向来看,南向资金也在加速入场。 (中证报),2023-09-26 06:39:26 141 | 211,改革效应良好 投资者积极开通北交所权限,【改革效应良好 投资者积极开通北交所权限】财联社9月26日电,记者获悉,北京证券交易所近日在行业内下发《北交所深改投资者入市工作简报》。北交所表示,改革效应良好,投资者积极入市。数据显示,北交所投资者适当性改革落地以来,累计新增开通北交所权限账户数为254471户(截至9月15日,下同);超一半科创板投资者账户已开通北交所权限。9月11日至15日一周,新增开通北交所权限账户数前五名券商分别为长江证券、招商证券、海通证券、平安证券、东方财富证券。 (中证报),2023-09-26 06:41:33 142 | 212,9月以来逾1500家A股公司获机构调研,【9月以来逾1500家A股公司获机构调研】财联社9月26日电,Wind数据显示,截至9月25日,9月以来共有1566家A股上市公司被机构调研,新能源汽车产业链、苹果产业链相关上市公司受到机构青睐。 (中证报),2023-09-26 06:43:07 143 | 213,,财联社9月26日电,澳大利亚10年期国债收益率悉尼盘初上涨11个基点,追随隔夜中长期美债收益率上涨的表现。,2023-09-26 06:43:36 144 | 214,业内人士:在监管大力推进下 各地“一省一策”推进农信社改革化险步伐加快,【业内人士:在监管大力推进下 各地“一省一策”推进农信社改革化险步伐加快】财联社9月26日电,国家企业信用信息公示系统网站日前公布,辽宁农村商业银行股份有限公司已于9月19日成立。今年以来,多地农信社改革取得新进展,部分农商联合银行、省级农商行获批筹建。业内人士表示,在监管大力推进下,各地“一省一策”推进农信社改革化险步伐加快,将在支持本地经济发展中发挥更多作用。 (中证报),2023-09-26 06:44:10 145 | 215,“加长版黄金周”将至 旅游业复苏提速,【“加长版黄金周”将至 旅游业复苏提速】财联社9月26日电,今年中秋节和国庆节的“加长版黄金周”,将进一步释放消费潜力,“一票难求”等词条冲上热搜。中国铁路数据显示,9月22日,铁路售票量达2695.2万张,再创单日售票量历史新高。9月13日至22日,铁路已累计发售车票1.99亿张。专家表示,在探亲游、出境游、亚运游等多重需求交织下,今年中秋节和国庆节假期将迎来一个大众出游高峰期,文化市场恢复势头强劲,旅游业复苏提速。 (中证报),2023-09-26 06:45:55 146 | 216,俄称打击乌雇佣兵营地 乌称打击俄目标,【俄称打击乌雇佣兵营地 乌称打击俄目标】财联社9月26日电,俄罗斯国防部25日通报称,在过去24小时,俄军对乌方的外国雇佣兵临时驻扎营地和武装破坏人员培训基地进行了打击。防空系统拦截了7枚“海马斯”火箭弹,击落33架无人机。在顿涅茨克和赫尔松地区,对乌方指挥观察点和军火库进行打击,击退乌方在顿涅茨克地区的7次进攻。乌克兰武装部队总参谋部同一天发布战报称,在过去24小时,前线地区发生17次战斗。乌克兰空军、火箭炮和炮兵部队对俄人员武器装备集中区、俄防空系统、弹药库等实施了打击,摧毁俄军9门火炮和1个电子战设施。,2023-09-26 06:46:45 147 | 217,券商调研热情高涨 黄金股备受关注,【券商调研热情高涨 黄金股备受关注】财联社9月26日电,Wind数据显示,截至9月25日,9月以来券商累计调研逾800只个股,环比增长约45%。值得一提的是,随着近段时间黄金珠宝销售热度提升,周大生、潮宏基、菜百股份等黄金概念股受到券商关注。在机构调研中,重点涉及黄金市场销售情况、产品布局、未来市场需求等多方面内容。有券商研报预计,黄金珠宝相关公司业绩有望受益于“金九银十”旺季与新产品周期催化共振。 (中证报),2023-09-26 06:47:45 148 | 218,AI商业化加快 终端算力市场机会凸显,【AI商业化加快 终端算力市场机会凸显】财联社9月26日电,随着大模型应用触达C端,个人用户终端的算力将成为新需求。微软AI助手Copilot计划9月26日起嵌入Office等核心应用程序。业内人士表示,AI大模型应用将给算力市场带来广泛影响。算力在云服务市场增长的同时,将加速在终端市场渗透,并驱动消费电子市场发展。 (中证报),2023-09-26 06:49:08 149 | 219,“北溪”管道爆炸事件一周年 俄方坚持主张进行公开透明的调查,【“北溪”管道爆炸事件一周年 俄方坚持主张进行公开透明的调查】财联社9月26日电,一年前的今天,也就是2022年9月26日,俄罗斯经波罗的海向欧洲输送天然气的“北溪”管道遭遇爆炸事件。俄罗斯驻德国大使涅恰耶夫25日表示,迄今为止,调查这一事件的相关国家尚未得出任何具体结果;对于这起对德国和俄罗斯造成了严重损害的袭击事件,俄方将坚持要求进行尽可能公开透明的调查,并确保真相公之于众。,2023-09-26 06:49:49 150 | 220,委内瑞拉驻哥伦比亚大使馆重新开馆,【委内瑞拉驻哥伦比亚大使馆重新开馆】财联社9月26日电,委内瑞拉驻哥伦比亚大使馆当地时间9月25日恢复运作。这是时隔4年后,委内瑞拉重新在哥伦比亚开设使馆。去年8月,哥伦比亚驻委内瑞拉大使抵达委内瑞拉首都加拉加斯,这标志着两国恢复全面外交关系。 (央视新闻),2023-09-26 06:50:22 151 | 221,A股公司密集披露增持回购计划,【A股公司密集披露增持回购计划】财联社9月26日电,9月以来,已有上百家A股公司发布增持或回购相关公告,部分公司同时披露了增持和回购计划。业内人士表示,上市公司实控人、董监高等基于对公司未来发展的坚定信心和长期价值高度认可,纷纷选择增持,增持和回购向市场传递出稳定发展的信心。 (中证报),2023-09-26 06:52:21 152 | 222,套期保值管理风险 成为上市公司主要选择,【套期保值管理风险 成为上市公司主要选择】财联社9月26日电,近年来,国务院、证监会就持续提升上市公司质量、支持上市公司健康发展等发布了一系列政策文件。上市公司利用期货衍生品工具管理风险的比例不断提高。9月21日,由中国上市公司协会、郑州商品交易所、北京证监局联合举办的上市公司风险管理及套期会计专题培训班(第一期)在北京顺利举办。记者在现场了解到,此次培训邀请了监管机构、证券交易所、高等院校以及会计师事务所等单位的专家讲师,围绕“期货市场功能及展望”“期货市场助力上市公司稳健经营”“上市公司套期会计运用情况”“上市公司套期保值业务信息披露要点及案例”等内容进行授课,课程体系设计科学,内容全面,针对性强。来自华能国际、五矿发展、恒力石化等70余家上市公司,以及中国盐业集团、国家能源集团等多家央企总部的近200人参加了本次培训。 (中证报),2023-09-26 06:54:26 153 | 223,政策效果渐显 民企生产经营预期改善,【政策效果渐显 民企生产经营预期改善】财联社9月26日电,8月中小企业发展指数连续三个月回升、制造业生产经营活动预期指数和服务业业务活动预期指数均保持在较高景气区间……近期公布的多项高频数据显示,支持民营企业发展壮大系列政策效果正在显现。专家认为,稳经济合力加快凝聚,有助于进一步改善民企生产经营预期,激发民间投资活力。 (中证报),2023-09-26 06:56:18 154 | 224,存量房贷利率下调 提前还贷需求减少,【存量房贷利率下调 提前还贷需求减少】财联社9月26日电,存量首套房贷利率9月25日起正式下调。记者了解到,存量房贷利率下调后,对于部分利率“高位站岗”的借款人而言,还款付息压力明显减弱,提前还贷需求也随之降低。多家银行表示,目前提前还贷业务减少,还有部分已预约提前还贷的客户选择撤销申请。 (中证报),2023-09-26 06:57:56 155 | 225,欧洲天然气价格收于5个月高位 挪威供应风险重燃,【欧洲天然气价格收于5个月高位 挪威供应风险重燃】财联社9月26日电,由于挪威的供应再度面临风险,欧洲基准天然气价格收于4月初以来最高水平。近月期货合约上涨12%,此前一度触及45欧元。将于本周到期的10月合约目前交投最为活跃,因此其走势对看涨因素较为敏感。Engie EnergyScan的分析师在一份报告中写道,期权到期前“在每兆瓦时40欧元的水平以上进行空头回补”可能持续提供支撑。挪威Skarv油气田减产以及大型Troll气田的新问题都加剧了周一的涨势。此外,咨询公司Zenergi表示,随着欧洲取暖季正式拉开序幕,下个月标志着天然气新一年的开始,因此9月的最后一周往往是看涨的。,2023-09-26 06:59:51 156 | 226,【研选】重磅!《深化集体林权制度改革方案》印发,林业碳汇是盘活林业资产的最有效手段,相关公司有望直接受益;新疆特色优势农产品加工企业,三大品种景气共振,核心产品以出口为主,前三季度业绩预告实现翻倍增长,"①重磅!《深化集体林权制度改革方案》印发,林业碳汇是盘活林业资产的最有效手段,相关公司有望直接受益; 157 | ②新疆特色优势农产品加工企业,三大品种景气共振,核心产品以出口为主,前三季度业绩预告实现翻倍增长。",2023-09-26 07:01:40 158 | 227,周二(9月26日)重点关注财经事件和经济数据,"【周二(9月26日)重点关注财经事件和经济数据】 159 | ①15:00 欧洲央行首席经济学家Lane、欧洲央行管委Simkus讲话; 160 | ②16:00 欧洲央行管委Madis Muller讲话; 161 | ③21:00 美国7月S&P/CS20座大城市房价指数,7月FHFA房价指数; 162 | ④22:00 美国8月新屋销售,9月谘商会消费者信心指数; 163 | ⑤时间待定 美国众议院就临时拨款法案进行投票; 164 | ⑥次日00:30 欧洲央行管委Holzmann讲话; 165 | ⑦次日01:30 美联储理事鲍曼讲话; 166 | ⑧次日04:30 美国石油协会(API)发布行业版原油库存周报。",2023-09-26 07:02:27 167 | 228,机器人在活体肺组织内“半自主导航”,【机器人在活体肺组织内“半自主导航”】财联社9月26日电,有些肿瘤非常小,隐藏在肺组织深处,医生很难触及它们。为应对这一挑战,美国北卡罗来纳大学教堂山分校和范德比尔特大学研究人员一直在研究一种能穿越肺组织的极其柔韧但坚固的机器人。他们在《科学·机器人》杂志上最新发表的一篇论文中,展现了新机器人可自主地从“A点”出发到达“B点”,同时避开活体实验室模型中的重要结构,例如微小气道和血管。,2023-09-26 07:14:52 168 | 229,新研究称外星生命或不以碳为基础,【新研究称外星生命或不以碳为基础】财联社9月26日电,美国科学家开展的一项新研究发现,许多行星上可能存在所谓的“自催化”化学反应,其能使用碳以外的多种化学元素,制造出与地球上的碳基生命截然不同的生命形式。相关研究论文刊发于最新一期《美国化学会杂志》。,2023-09-26 07:15:52 169 | 230,新政落地效果显现:多城新房周成交量环比翻倍 上海二手房单日成交量创4月以来新高,【新政落地效果显现:多城新房周成交量环比翻倍 上海二手房单日成交量创4月以来新高】财联社9月26日电,8月底,多部委落地多项政策组合拳,各地政策落地节奏加快,对购房者情绪带动明显。不过,受前期政策严厉程度不同、市场基本面及房价预期不同等因素影响,城市表现分化,部分核心城市政策效果逐渐显现。从周度情况看,上周(9.18-9.24),诸葛找房数据研究中心监测重点城市新房成交环比上升58.18%,二手住宅成交环比上升7.5%。分城市来看,上海、北京、东莞、郑州等地新房成交量实现翻倍增长,青岛、无锡、苏州等城涨幅可观,环比涨幅均在70%以上;东莞、郑州二手房涨幅领跑,环比涨超80%,上海单日二手房成交量创4月以来新高。 (澎湃新闻),2023-09-26 07:27:31 170 | 231,又见无理打压!美国商务部将11个中国实体及自然人列入“实体清单”,【又见无理打压!美国商务部将11个中国实体及自然人列入“实体清单”】财联社9月26日电,美国商务部工业与安全局当地时间周一(9月25日)在《联邦公报》(美国政府公报)刊登了一份定于9月27日发布的行政措施,准备将28个实体添加到出口管制名单,即所谓的“实体清单”。 28个实体中,10个实体和1名自然人来自中国、来自俄罗斯和巴基斯坦的分别有5个、来自芬兰的有3个、来自阿曼的有2个、来自德国和阿联酋的各有1个。其中包括中国科学院国家天文台南京天文光学技术研究所、杭州富阳科拓机械有限公司和桂林阿尔法橡塑科技有限公司等。此外,美国商务部从实体清单中移除了浙江完美新材料科技有限公司。,2023-09-26 07:34:00 171 | 232,摩根大通:中国股票正接近“买入区”,【摩根大通:中国股票正接近“买入区”】财联社9月26日电,摩根大通表示,中国股票正在接近“买入区”。Wendy Liu和Marko Kolanovic等策略师在一份报告中写道,10月关键数据可能构成交易机会,包括“黄金周”的旅游、零售销售和房地产销售等。报告指出,“摩根大通的中国增长指数在8月份升至复苏象限,且我们认为9月还有进一步上升的空间。虽然未来几周仍可能振荡,但MSCI中国指数有望突破年迄今58左右的底部,且预计第四季有望反弹并回升至66上方。”,2023-09-26 07:42:07 172 | 233,投资日历:周二资本市场大事提醒,"【投资日历:周二资本市场大事提醒】 173 | ①今日共有1只新股申购,为北交所的骑士乳业(832786)。 174 | ②上海市政府将于9月26日举行新闻发布会,介绍上海推进全球著名体育城市建设等有关情况。 175 | ③微软:AI Copilot将于9月26日在Windows系统铺开。 176 | ④2023汽车半导体生态峰会暨全球汽车电子博览会将于9月26日至27日在深圳举办。 177 | ⑤2023世界设计之都大会将于9月26日开幕,主会期为9月26日至28日,展览和活动延续至10月2日。 178 | ⑥横琴口岸客货车联合一站式部分车道9月26日正式通行。 179 | ⑦全国首单红树林保护碳汇将于9月26日在深圳进行拍卖。 180 | ⑧润达医疗:公司大模型“良医小慧”的产品发布会将于9月26日在上海举行。 181 | ⑨朝鲜第十四届最高人民会议第九次会议召开。 182 | ⑩今日有2080亿元7天期逆回购到期。 183 | ⑪今日将公布美国8月新屋销售总数年化等数据。",2023-09-26 07:42:22 184 | 234,今日申购指南及新股定位分析,【今日申购指南及新股定位分析】财联社9月26日电,今日有1只新股申购,为北交所的骑士乳业;1只新股上市,为北交所的科强股份。,2023-09-26 07:42:27 185 | 235,月末叠加跨季流动性有所收紧 央行加码逆回购呵护资金面,【月末叠加跨季流动性有所收紧 央行加码逆回购呵护资金面】财联社9月26日电,近期央行逆回购量较大。上周(9月18日至9月22日),公开市场到期7040亿元,均为7天期逆回购到期。投放12560亿元,其中7天期逆回购7660亿元、14天期逆回购4900亿元,合计净投放5520亿元。对于上述操作,光大银行金融市场部宏观研究员周茂华对记者表示,受短期公开市场到期工具量相对较大、月末跨季和节日临近、专项债发行节奏加快等影响,近期银行间市场流动性明显收敛,短期资金利率升至政策利率上方,尤其是14天期利率明显上升,反映跨季、跨节短期资金需求明显增加。央行近期加大公开市场操作,实现资金净投放,重启14天期逆回购操作,以满足机构短期资金需求,释放呵护资金面信号。,2023-09-26 07:47:34 186 | 236,中信建投:工业互联网与工业自动化将是实现新型工业化的关键领域,【中信建投:工业互联网与工业自动化将是实现新型工业化的关键领域】财联社9月26日电,中信建投指出,围绕新型工业化发展需求,走自主可控之路推动制造业数字技术与实体经济融合;工业互联网与工业自动化将是实现新型工业化的关键领域;后续有望围绕产业链韧性与安全水平推进新型工业化落地配套实施方案,推荐工业互联网、工业母机、工控软件、半导体等方向。,2023-09-26 07:50:53 187 | 237,【九点特供】一图前瞻国庆节前后国内外重要数据;25亿元27个机器人项目集中签约,机器人应用落地正在加速且国内8-9月订单边际向好,这家公司四轴机器人加速时间更短,定位精度更高,"①25亿元27个机器人项目集中签约,机器人应用落地正在加速且国内8-9月订单边际向好,这家公司四轴机器人加速时间更短,定位精度更高; 188 | ②30年发电效率大于86.9%,龙头发布全球首款搭载BC电池的BIPV产品,机构认为设备厂商率先受益行业扩产,这家公司2022年取得该电池领域40GW量产订单; 189 | ③海外映射:拜登政府希望在10年内建立一座商业核聚变设施,届时净能量收益多出50%。",2023-09-26 07:52:07 190 | 238,华泰证券:看好快充板块景气度提升,【华泰证券:看好快充板块景气度提升】财联社9月26日电,华泰证券指出,快充技术或重演智能手机发展中的角色、成为新能源汽车发展中的重要催化,而快充应用的落地需自下而上打通“网-桩-车”三端,为快充体验的兑现扫清障碍,看好板块景气度提升。,2023-09-26 07:55:46 191 | 239,中信建投:酒企运营仍有分化 坚定龙头企业长期价值,【中信建投:酒企运营仍有分化 坚定龙头企业长期价值】财联社9月26日电,中信建投指出,当前白酒市场对于中秋预期较为平淡,对于消费升级趋势放缓有所担忧,板块处于“低情绪”、“低预期”状态中,市场交易拥挤度、活跃度、融资力度回落至历史较低水平。白酒龙头企业凭借运营优势及创新营销能力,有望实现稳中求进高质量发展。站在长期维度考虑,高端酒具备良好的投资价值,随着宏观经济回暖次高端也有望在年内迎来预期回升。,2023-09-26 07:56:29 192 | 240,,财联社9月26日电,日经225指数低开0.12%。韩国首尔综指基本持平。,2023-09-26 08:01:23 193 | 241,中信证券:巨头布局加速产业化 看好合成生物学龙头,【中信证券:巨头布局加速产业化 看好合成生物学龙头】财联社9月26日电,中信证券研报指出,近期,巴斯夫和陶氏在生物基BDO和PDO有相关动作,早些时候,东丽、DSM、索维尔、奇华顿、雀巢等各行业全球龙头公司均在合成生物学领域有所布局。我们认为传统领域巨头的积极探索有助于加快合成生物学作为新兴技术的产业化进度和对各行业的变革,看好拥有先发优势、丰富产品管线和工程化能力的相关合成生物学龙头企业。,2023-09-26 08:05:24 194 | 242,中信证券:供求关系悄然转向 生物育种产业化迫近,【中信证券:供求关系悄然转向 生物育种产业化迫近】财联社9月26日电,第20届全国种子“双交会”上发布最新全国种子供需形势,2023/24年“两杂种子”严重供大于求。中信证券研报认为,生物育种产业化落地迫近;转基因技术呈现求稳、求新、求差异化趋势;除转基因技术外,还应高度关注其他生物育种技术的研发及应用进展;2023/24销售季行业竞争激烈,具备品种优势、预售进度快的企业或有效回避激烈的竞争;中长期来看,行业集中度也有望持续提升,有利于种业长期高质量发展。建议积极配置种业与生物育种板块。,2023-09-26 08:11:23 195 | 243,财联社9月26日早间新闻精选,"【财联社9月26日早间新闻精选】 196 | 1、中办、国办印发《深化集体林权制度改革方案》。其中提出,支持符合条件的林业碳汇项目开发为温室气体自愿减排项目并参与市场交易,探索实施林业碳票制度。 197 | 2、华为25日宣布,将于11月发布首款轿车智界S7。华为终端BG CEO余承东表示,智界S7将在各个规格上超越Model S。余承东表示,华为Mate 60系列广受消费者喜爱,目前正加班加点紧急生产。 198 | 3、北交所投资者适当性改革落地以来,累计新增开通北交所权限账户数为254471户(截至9月15日) ;逾一半科创板投资者账户已开通北交所权限。 199 | 4、北向资金25日大幅净卖出80.39亿元。三花智控、顺丰控股、中国平安分别遭净卖出3.45亿元、2.44亿元、1.79亿元。隆基绿能净买入额居首,金额为2.51亿元。 200 | 5、三连板华脉科技公告,公司业务侧重于通信基础设施方面,不涉及人工智能。 201 | 6、常山药业发布股票交易异动公告称,公司没有涉及减肥功效产品的收入。 202 | 7、赛力斯公告,赣锋锂业拟10亿元认购瑞驰电动新增注册资本1亿元。 203 | 8、四连板精伦电子公告,目前在新型工业化方面尚未形成销售和服务收入。 204 | 9、6天4板丰华股份公告,与华为没有业务往来,不是华为的供应商。 205 | 10、美股三大指数周一小幅收涨,纳指涨0.45%,标普500指数涨0.4%,道指涨0.13%。热门中概股涨跌不一,纳斯达克中国金龙指数跌1.10%。理想汽车跌近10%,法拉第未来重挫超24%,创历史新低。欧洲主要股指集体收跌,德国DAX30指数跌0.99%。 206 | 11、美国10年期和30年期国债收益率再创多年以来新高,10年期国债收益率上涨9.97个基点,报4.5334%;30年期国债收益率上涨12.76个基点,报4.6521%。 207 | 12、标普称,现预计美国经济今年将增长2.3%,之前预计为1.7%。 208 | 13、穆迪表示,若联邦政府停摆,美国信用评级将受负面影响。 209 | 14、鉴于美联储料维持紧缩货币政策,最大美国长期国债ETF从历史高位累计暴跌48%。 210 | 15、受挪威供应风险影响,欧洲基准天然气期货结算价创下5个月高点,涨幅达到12%。 211 | 16、俄罗斯考虑调整石油产品出口禁令,排除船用燃料油等品种。 212 | 17、欧洲央行行长拉加德表示,只要有必要,利率会持续保持在限制性水平以遏制通胀。 213 | 18、朝鲜宣布从9月25日起外国人可依照规定入境朝鲜,入境后需接受2天医学隔离。",2023-09-26 08:12:21 214 | 244,【点金互动易】减肥药+创新药,利拉鲁肽仿制药已获批II型糖尿病和减肥适应症,这家企业利拉鲁肽注射液在几百家医院实现入院销售,①减肥药+创新药,利拉鲁肽仿制药已获批II型糖尿病和减肥适应症,这家企业利拉鲁肽注射液在几百家医院实现入院销售;②拥有200余种多肽合成试剂产品,这家企业是全球少数具备全系列多肽合成试剂研发与产业化能力的公司之一。,2023-09-26 08:13:59 215 | 245,,财联社9月26日电,美国10年期国债收益率升至2007年10月以来最高4.552%。,2023-09-26 08:15:21 216 | 246,美国汽车工人罢工进入第11天 罢工继续扩大,【美国汽车工人罢工进入第11天 罢工继续扩大】财联社9月26日电,美国汽车工人联合会对底特律三大汽车制造商的罢工当地时间25日进入第11天,罢工潮进一步扩大。当天,又有数千名汽车工人加入罢工行列,罢工规模继续扩大。美国汽车工人联合会主席肖恩·费恩表示,目前工会与三大汽车制造商中的福特的谈判取得了一定进展,或将达成协议;但与通用和斯泰兰蒂斯两家的谈判陷入停滞,工会因此决定采取更多措施,扩大罢工范围。受罢工影响,通用和斯泰兰蒂斯的汽车零件运输受阻,分销商表示,顾客需要等上几天才能拿到所需零件,而且不知道这一情况还将持续多久。,2023-09-26 08:20:13 217 | 247,日本宫城县近海海域发生4.6级地震,【日本宫城县近海海域发生4.6级地震】财联社9月26日电,据日本广播协会(NHK)26日报道,当地时间当天上午8时39分左右,日本宫城县近海海域发生4.6级地震,最大震感为3,震源深度80公里。,2023-09-26 08:24:45 218 | 248,寒武纪:实际控制人自愿承诺不减持公司股份,"【寒武纪:实际控制人自愿承诺不减持公司股份】《科创板日报》26日讯,寒武纪公告,公司于9月25日收到了公司实际控制人、董事长、总经理陈天石出具的《承诺函》。陈天石自愿承诺:本人直接持有的公司股份(119,530,650股),自本承诺函出具之日起至2024年12月31日,将不以任何方式进行减持,包括承诺期间该部分股份若因资本公积转增、派送股票红利、配股、增发等事项产生的新增股份。",2023-09-26 08:29:21 219 | 249,摩根大通CEO称世界可能尚未准备好美联储把利率升至7%,【摩根大通CEO称世界可能尚未准备好美联储把利率升至7%】财联社9月26日电,摩根大通首席执行官杰米.戴蒙接受印度时报采访时表示,针对美联储的基准利率,最糟糕的情况是升至7%且出现滞胀。 关于升息,他表示,从5%升至7%的200个基点会比从3%升至5%更痛苦:从0%升至2%,几乎等于没有升息;从0%升至5%让一些人措手不及,但没有人会认为不可能升至5%。他说,他不确定世界是否准备好迎接7%。,2023-09-26 08:35:08 220 | 250,两市融资余额增加35.66亿元,【两市融资余额增加35.66亿元】财联社9月26日电,截至9月25日,上交所融资余额报8029.76亿元,较前一交易日增加13.73亿元;深交所融资余额报7214.79亿元,较前一交易日增加21.93亿元;两市合计15244.55亿元,较前一交易日增加35.66亿元。,2023-09-26 08:39:56 221 | 251,蜂巢能源:无钴电芯今年国内出货量预计可达160万只,【蜂巢能源:无钴电芯今年国内出货量预计可达160万只】财联社9月26日电,在蜂巢能源媒体日上获悉,公司无钴电池目前在国内主要供应某大型车企,今年出货无钴电芯预计可达160万只;海外市场方面,已与美国某储能系统上市公司已经达成供货协议,2024年初开始供货,预计每年向该储能客户供应无钴电芯80万只,后续动力市场客户预计会再扩展。 (证券时报),2023-09-26 08:51:23 222 | 252,,财联社9月26日电,富时中国A50指数期货在上一交易日夜盘收涨0.32%的基础上低开,现涨0.14%。,2023-09-26 09:00:21 223 | 253,,财联社9月26日电,国内商品期市开盘多数下跌,焦煤跌超3%,烧碱、焦炭跌超2%,燃油、纯碱跌超1%。,2023-09-26 09:00:35 224 | 254,湖北孝感:至今年年底 高学历人才买首套房最高可享10万元补贴,【湖北孝感:至今年年底 高学历人才买首套房最高可享10万元补贴】财联社9月26日电,据孝感市住建局9月25日消息,继推行购房支持政策以及认房不认贷后,湖北省孝感市中心城区购房利好政策再“加码”,即日起至2023年12月31日购房补贴范围进一步扩大,高学历人才首套房最高可享10万元补贴。具体来看,除对购买新建商品房为商铺的给予购房契税100%补贴外,公寓也纳入购房契税100%补贴范围。全日制博士研究生、硕士研究生、本科生在孝感中心城区新购买首套面积不超过144㎡的新建商品住房的,分别给予10万元、5万元、3万元的补贴。,2023-09-26 09:03:39 225 | 255,李在明拄拐离开医院赴法庭接受审查,【李在明拄拐离开医院赴法庭接受审查】财联社9月26日电,据韩国《首尔新闻》报道,当地时间9月26日早上,韩国最大在野党共同民主党党首李在明离开医院,出庭接受逮捕必要性审查。李在明是否被捕,最快将于今天晚上见分晓。,2023-09-26 09:05:34 226 | 256,【电报解读】AI商业化加快带动算力需求增加,这家企业积极推进大数据算力中心等工程建设,微软AI助手Copilot将在Windows系统全面推广,AI商业化加快带动算力需求增加,未来相关产业规模或超4.4万亿,这家企业积极推进大数据算力中心等工程建设。,2023-09-26 09:07:11 227 | 257,TCL中环调降单晶硅片价格,【TCL中环调降单晶硅片价格】财联社9月26日电,TCL中环9月26日公示本期单晶硅片价格。与最近一次8月21日调价相比,P型150微米182硅片价格每片降0.25元,报价3.10元/片;P型150微米210硅片价格每片降0.27元,报价4.08元/片;P型150微米218.2硅片价格每片降0.29元,报价4.41元/片;N型130微米210硅片价格每片降0.27元,报价4.20元/片。,2023-09-26 09:07:54 228 | 258,,财联社9月26日电,美联储卡什卡利称如果经济过于强劲,可能需要提高利率并维持更长时间;如果实际利率收紧,可能需要降息。,2023-09-26 09:11:30 229 | 259,,财联社9月26日电,集运指数(欧线)期货主力合约跌超5%,报816.3点。,2023-09-26 09:13:06 230 | 260,,财联社9月26日电,人民币兑美元中间价报7.1727,与上个交易日持平。,2023-09-26 09:16:52 231 | 261,【盘中宝】应用增长及多模态数据处理催生强烈需求,华为孟晚舟力挺需求将增加500倍,这家公司已成立研究院,布局下一代技术,Open AI推出语音和图像功能!多模态能力再次加强带来该项需求,这家公司已成立研究院,布局下一代技术。,2023-09-26 09:19:27 232 | 262,央行公开市场净投放1700亿元,【央行公开市场净投放1700亿元】财联社9月26日电,央行公开市场开展3780亿元14天期逆回购操作,中标利率1.95%,与此前持平。因今日有2080亿元逆回购到期,实现净投放1700亿元。,2023-09-26 09:21:26 233 | 263,恒生指数开盘跌0.38%,【恒生指数开盘跌0.38%】财联社9月26日电,香港恒生指数开盘跌0.38%。恒生科技指数跌0.42%。理想汽车跌超4%,腾讯跌超1%。途虎养车开盘报28港元,IPO价格为28港元。,2023-09-26 09:21:46 234 | 264,宁德时代:与福特在美建厂计划推进顺利,【宁德时代:与福特在美建厂计划推进顺利】《科创板日报》26日讯,对于福特停止与宁德时代在美建厂计划的传闻,《科创板日报》记者今日以投资者身份致电宁德时代证券部,其工作人员回应称:“是虚假消息,我们推进是顺利的。”(记者 余佳欣),2023-09-26 09:22:39 235 | 265,猫眼娱乐高开近3% 中秋国庆11部新片上映,【猫眼娱乐高开近3% 中秋国庆11部新片上映】财联社9月26日电,截至发稿,猫眼娱乐(01896.HK)涨2.80%。消息方面,中秋叠国庆,十一电影票房有望创纪录。将有11部新片在中秋国庆假期上映,五部定档9月28日,剩余六部全在9月29日上映,除《好像也没那么热血沸腾》外,其余新片均未开启点映。光大证券研究所认为,国庆档票房有望超越2019年档期最高值44.6亿元,档期上映影片的最终票房总和(包括国庆档内及后续的票房)区间在54.9-77.4亿元。,2023-09-26 09:23:59 236 | 266,理想汽车低开超4% 遭非执行董事王兴连续减持,【理想汽车低开超4% 遭非执行董事王兴连续减持】财联社9月26日电,截至发稿,理想汽车-W(02015.HK)跌4.22%。根据香港联交所股权披露,9月12日至15日期间,美团首席执行官兼理想汽车非执行董事王兴,连续4天减持理想汽车,累计减持194.79万股,合共套现金额约3.11亿港元。据悉,今年3月,王兴10天9次减持理想汽车,合计套现金额达4.2亿港元。意味着王兴年内累计套现金额达到7.31亿港元。,2023-09-26 09:24:53 237 | 267,三大指数集体低开,【三大指数集体低开】财联社9月26日电,沪指低开0.05%,深成指低开0.10%,创业板指低开0.25%,华为·星闪、家电、光刻机等板块指数跌幅居前。,2023-09-26 09:25:11 238 | 268,IMAX中国低开近4% 日前投资者反对私有化,【IMAX中国低开近4% 日前投资者反对私有化】财联社9月26日电,截至发稿,IMAX中国(01970.HK)跌3.66%。根据公告,IMAX公司回应Letko关于IMAX中国拟议私有化的声明。Letko于2023年9月22日发布声明,表示有意投票反对该私有化交易。IMAX公司重申其相信该交易符合IMAX中国股东的最佳利益,是一项令人信服的要约。拟议交易的要约价较公告前30个完整交易日平均收盘价溢价49%。,2023-09-26 09:26:01 239 | 269,竞价看龙头:精伦电子一字涨停晋级5连板,【竞价看龙头:精伦电子一字涨停晋级5连板】财联社9月26日电,市场焦点股捷荣技术(19天14板)高开4.98%,机器人概念股精伦电子(4板)竞价涨停、科力尔(6天3板)高开0.19%、冀凯股份(6天3板)竞价涨停,华为汽车概念股丰华股份(6天4板)低开7.43%、三联锻造(3板)高开3.12%、铭科精技(6天3板)低开2.36%,华为算力板块华脉科技(8天4板)低开2.21%、剑桥科技(2板)高开2.44%、远东传动(4天2板)高开3.00%,减肥药概念股德展健康(4天3板)高开5.14%。,2023-09-26 09:27:31 240 | 270,多人购买内部低价房被骗?西安 :警方已经立案 11名嫌犯被采取刑事强制措施,【多人购买内部低价房被骗?西安 :警方已经立案 11名嫌犯被采取刑事强制措施】财联社9月26日电,据西安高新公安微博26日凌晨通报,近期,该局先后接多名群众报警称购买内部低价房被骗,接报警后警方立即展开调查。经查,以牛某为首的犯罪团伙通过虚构有“低价房、内部房”出售,骗取群众购房款。目前,警方已经立案,11名犯罪嫌疑人被采取刑事强制措施,同时在全市范围内对该犯罪团伙其他犯罪线索开展全面排查,案件仍在进一步侦办中。,2023-09-26 09:28:29 241 | 271,“佐餐卤味第一股”紫燕食品营收稳增 智能化供应链夯实竞争壁垒,【“佐餐卤味第一股”紫燕食品营收稳增 智能化供应链夯实竞争壁垒】财联社9月26日电,“佐餐卤味第一股”紫燕食品上市一周年,期间每季度营收均实现同比上涨;截至今年上半年,品牌全国门店总数达6137家,增速可观。上市以来,紫燕食品积极施行创新升级,通过自研技术、改进生产线等方式,持续优化工厂机械化、自动化水平,进而助推新渠道、新模式、新产品的落实和推广。坚持“佐餐”定位以及数字化、智能化供应链的搭建,也一定程度提振了紫燕食品的持续盈利能力和长期价值,从而实现可持续发展。,2023-09-26 09:31:15 242 | 272,新型工业化板块持续活跃 精伦电子5连板,【新型工业化板块持续活跃 精伦电子5连板】财联社9月26日电,新型工业化板块反复活跃,精伦电子5连板,天永智能、亚威股份2连板,德恩精工冲高10%,金自天正、东土科技、沈阳机床等冲高。消息面上,9月25日,工信部党组书记、部长金壮龙主持召开党组会议,会议强调,要准确把握推进新型工业化的战略定位,加快建设制造强国,持续提升工业现代化水平,构建以先进制造业为骨干的现代化产业体系。,2023-09-26 09:32:27 243 | 273,ChatGPT概念走强 多模态方向领涨,【ChatGPT概念走强 多模态方向领涨】财联社9月26日电,ChatGPT概念股大幅走强,海天瑞声涨超14%,万兴科技、虹软科技、科大讯飞、昆仑万维等纷纷冲高。消息面上,OpenAI宣布,将在ChatGPT推出新的语音和图像功能,新功能将于未来两周内面向Plus和企业用户推出。新功能允许用户将与ChatGPT进行语音对话(适用于iOS和Android),并在对话中以图片形式向ChatGPT展示正在谈论的内容(适用于所有平台)。,2023-09-26 09:33:39 244 | 274,,财联社9月26日电,恒生科技指数跌超1%。理想汽车跌超5%,众安在线跌超3%。,2023-09-26 09:35:37 245 | 275,华为·星闪概念早盘下挫 创耀科技跌超8%,【华为·星闪概念早盘下挫 创耀科技跌超8%】财联社9月26日电,早盘华为·星闪概念震荡下挫,创耀科技大跌9%,高鸿股份、荣联科技、泰凌微、天邑股份等多股跌超4%。,2023-09-26 09:37:48 246 | 276,游戏股开盘活跃 冰川网络领涨,【游戏股开盘活跃 冰川网络领涨】财联社9月26日电,游戏股早盘表现活跃,冰川网络涨超5%,盛天网络、汤姆猫、恺英网络、三七互娱、姚记科技等跟涨。消息面上,国家新闻出版署发布9月国产网络游戏审批信息,共89款游戏获批。其中获批厂商包括三七互娱、吉比特、恺英网络、完美世界等。,2023-09-26 09:39:19 247 | 277,,财联社9月26日电,美联储卡什卡利称,其是认为今年还会有一次加息的政策制定者之一;在可预见的未来还将继续缩减资产负债表。,2023-09-26 09:40:57 248 | 278,华为汽车概念探底回升 赛力斯大涨7%,【华为汽车概念探底回升 赛力斯大涨7%】财联社9月26日电,早盘华为汽车概念探底回升,赛力斯大涨7%,博俊科技、三联锻造、德迈仕、贝斯特等纷纷跟涨。消息面上,华为将在12月发布问界M9,余承东称这将是“1000万以内最好的SUV”。此外在华为秋季全场景新品发布会上,华为还宣布将于11月发布首款轿车智界S7。,2023-09-26 09:44:02 249 | 279,美财政部以涉伊为由制裁中国实体和个人 商务部:立即停止无理打压,"【美财政部以涉伊为由制裁中国实体和个人 商务部:立即停止无理打压】财联社9月26日电,商务部新闻发言人就美财政部以涉伊为由制裁中国实体和个人答记者问。 250 | 251 | 有记者问:近期,美国财政部以涉伊朗无人机和军用飞机开发为由,宣布制裁部分中国实体和个人,请问中方对此有何评论? 252 | 253 | 答:中方注意到,美方以所谓涉伊朗无人机和军用飞机开发为由,将部分中国企业和个人列入“特别指定国民清单”,中方对此坚决反对。 254 | 255 | 美方滥用单边制裁和“长臂管辖”的做法,破坏国际贸易秩序和规则,阻碍国际间正常的经贸往来,损害中国企业和个人的合法权益。美方应立即停止对中国企业和个人的无理打压。中方将采取必要措施,坚决维护自身合法权益。",2023-09-26 09:47:00 256 | 280,航行警告!黄海海域进行实弹射击,【航行警告!黄海海域进行实弹射击】财联社9月26日电,据中国海事局网站消息,青岛海事局发布航行警告,2023年9月26日8时30分至28日17时,在36-04.5N 120-59.2E、36-04.5N 121-11.5E、35-58.6N 121-04.9E和35-58.6N 120-52.8E四点连线范围内进行实弹射击。禁止驶入。,2023-09-26 09:48:31 257 | 281,捷荣技术再度涨停 走出20天15板,【捷荣技术再度涨停 走出20天15板】财联社9月26日电,华为概念人气股捷荣技术再度涨停,走出20天15板,累计涨幅超360%。,2023-09-26 09:48:42 258 | 282,印尼发生6.3级地震,【印尼发生6.3级地震】财联社9月26日电,据印尼气象、气候和地球物理局消息,当地时间9月26日8时39分,印尼北苏拉威西省(北纬4.63度,东经127.38)发生6.3级地震。,2023-09-26 09:50:24 259 | 283,减肥药板块震荡回升 双鹭药业涨停,【减肥药板块震荡回升 双鹭药业涨停】财联社9月26日电,减肥药板块盘中震荡回升,双鹭药业涨停,翰宇药业、博瑞医药冲高5%,圣诺生物、华东医药、德展健康等冲高。消息面上,根据GlobalData估计,受GLP-1类药物全球研发热潮和相关产品在减肥适应症上的亮眼临床数据驱动,到2031年全球减肥药物市场规模将达到371亿美元,2021年-2031年复合年均增长率为31.3%。中国减肥药市场也有望实现快速增长,未来空间广阔。,2023-09-26 09:55:03 260 | 284,安徽利辛:农村居民购买新建商品住房 最高补贴1万元,【安徽利辛:农村居民购买新建商品住房 最高补贴1万元】财联社9月26日电,据“利辛发布”25日晚间消息,安徽省亳州市利辛县发布多项住房消费利好措施,涉及契税补贴、购房补贴、公积金贷款等12条措施。措施的有效期为2023年9月23日至2023年12月31日。利辛县将对购房给予契税补贴。凡购买新建商品住房的,购房人可按实际缴纳契税的50%申请补贴,需在商品住房交付后一年内缴清契税,申请补贴。文件提出,支持农村居民进城购房。积极推进城镇化进程,农村居民购买新建商品住房,可按实际购房款的1%申请补贴,最高1万元,补贴在办理不动产登记后兑现。,2023-09-26 09:59:17 261 | 285,国务院新闻办公室发布《携手构建人类命运共同体:中国的倡议与行动》白皮书,【国务院新闻办公室发布《携手构建人类命运共同体:中国的倡议与行动》白皮书】财联社9月26日电,今日(26日)上午10时,中国国务院新闻办公室发布《携手构建人类命运共同体:中国的倡议与行动》白皮书,并举行新闻发布会。白皮书全面介绍了构建人类命运共同体的思想内涵和生动实践,旨在增进国际社会了解和理解,凝聚广泛共识。,2023-09-26 10:01:52 262 | 286,,财联社9月26日电,中国地震台网正式测定:09月26日09时39分在印尼塔劳群岛(北纬4.60度,东经127.45度)发生6.0级地震,震源深度110千米。,2023-09-26 10:01:57 263 | 287,ChatGPT概念股持续走强 海天瑞声20CM涨停,【ChatGPT概念股持续走强 海天瑞声20CM涨停】财联社9月26日电,ChatGPT概念股持续走强,海天瑞声20CM涨停,万兴科技涨超10%,云从科技、昆仑万维、科大讯飞、神州泰岳等跟涨。消息面上,根据OpenAI官网信息,ChatGPT即将在两周内对plus用户与企业用户开放一系列新功能,包括图像读取与理解(即图生文),以及语音对话能力。,2023-09-26 10:02:22 264 | 288,【盘中宝·独家】华为在这个细分领域首家合作厂商,这家公司大模型产品年内将择机公测,财联社资讯独家获悉,这家公司基于盘古大模型构建的产品年内将择机公测,目前已有意向订单,公司是华为在该细分领域大模型方面的首家合作厂商。,2023-09-26 10:08:35 265 | 289,CPO概念股探底回升 源杰科技涨超10%,【CPO概念股探底回升 源杰科技涨超10%】财联社9月26日电,CPO概念股早盘调整后震荡回升,源杰科技涨超10%,华西股份涨停,仕佳光子、中际旭创涨超5%,剑桥科技、新易盛、联特科技、太辰光等跟涨。消息面上,中际旭创近日在互动平台表示,公司800G产品仍在持续放量中。,2023-09-26 10:09:38 266 | 290,韩国法院对李在明拘留前审查开始 系韩国宪政史上首次,【韩国法院对李在明拘留前审查开始 系韩国宪政史上首次】财联社9月26日电,据韩联社报道,韩国法院对李在明拘留前审查从当地时间10时7分开始。报道称,原计划是在上午10时开始审查,但由于当天下雨导致交通堵塞,李在明到达时间推迟。报道称,由于李在明连续绝食了24天,导致他的健康状况变得不佳。为了应对可能出现的紧急情况,法庭特别安排了一名医疗人员,并且还准备好了轮椅。据韩联社26日稍早前报道,韩国首尔中央地方法院将于当地时间上午10时对李在明进行拘留前审查。报道称,韩国在野党代表出席拘留前嫌疑人审查在韩国宪政史上是首次。 (环球网),2023-09-26 10:10:18 267 | 291,【风口研报·公司】ChatGPT更新“图形+语音”多模态功能,这家公司聚焦“视觉+AI”研发、构建“光机电算软”全链路技术能力,同时在XR拍摄系统实现国产突破,ChatGPT更新“图形+语音”多模态功能,这家公司聚焦“视觉+AI”研发、构建“光机电算软”全链路技术能力,成功填补工业领域视觉大模型的空白,同时在XR拍摄系统实现国产突破,上半元宇宙业务同比增长37%。,2023-09-26 10:11:15 268 | 292,卫星导航板块持续走弱 华力创通跌超10%,【卫星导航板块持续走弱 华力创通跌超10%】财联社9月26日电,卫星导航板块盘中持续走弱,华力创通跌超10%,四川九洲、震有科技跌近5%,创意信息、航锦科技、通宇通讯等纷纷跟跌。,2023-09-26 10:14:55 269 | 293,,财联社9月26日电,日本财务大臣铃木俊一表示,带着高度紧迫性关注汇市波动。不排除针对汇率过度波动采取任何选项,将采取合适行动应对汇率快速波动。,2023-09-26 10:17:46 270 | 294,中国质量认证获证组织突破100万家,【中国质量认证获证组织突破100万家】财联社9月26日电,市场监管总局9月26日发布《中国质量认证发展报告》,截至目前,我国共批准设立1261家认证机构,累计颁发有效的产品、管理体系、服务认证证书361万余张,获证组织突破100万家。,2023-09-26 10:24:42 271 | 295,中国贸促会:8月RCEP原产地证书签证份数同比增长16.04%,【中国贸促会:8月RCEP原产地证书签证份数同比增长16.04%】财联社9月26日电,根据中国贸促会26日发布的全国贸促系统商事认证数据,8月RCEP原产地证书签证份数为21672份,同比增长16.04%;办证企业3552家,同比增长15.18%,出口目的国包括日本、印尼、韩国、越南等12个成员国,预计为我国产品在RCEP进口成员国减免关税0.11亿美元。,2023-09-26 10:26:52 272 | 296,国家药监局药品审评中心征求意见:第一家过评后三年后不再受理同品种申请,【国家药监局药品审评中心征求意见:第一家过评后三年后不再受理同品种申请】财联社9月26日电,国家药监局药品审评中心发布关于公开征求《仿制药质量和疗效一致性评价受理审查指南(征求意见稿)》意见的通知。文件显示,自第一家品种通过一致性评价后,三年后不再受理其他药品生产企业相同品种的一致性评价申请。企业经评估认为属于临床必需、市场短缺品种的,可向所在地省级药品监管部门提出延期评价申请,经省级药品监管部门会同卫生行政部门组织研究认定后,可予适当延期;境外生产药品或港澳台生产医药产品,可向国家药品监管部门提出延期评价申请。行业人士普遍认为,如今过评几乎是挂网采购的最低门槛,这或许意味着,对于仿制药企业来说,如果手上品种还未开展一致性评价,但已有其他企业过评,要抓紧了。不过评、不采购的大环境下,或将有大量“老批文”面临被清退风险。,2023-09-26 10:26:58 273 | 297,生态环境部:全国352.5万个固定污染源纳入排污许可管理范围,【生态环境部:全国352.5万个固定污染源纳入排污许可管理范围】财联社9月26日电,生态环境部环境影响评价与排放管理司司长刘志全26日在北京举行的发布会上表示,推动实现固定污染源”全覆盖“。截至2023年9月,已将全国352.5万个固定污染源纳入排污许可管理范围,其中核发排污许可证35.8万张,排污登记316.7万家;管控水污染物排放口25.7万个、大气污染物排放口107.3万个。,2023-09-26 10:28:13 274 | 298,一带一路板块异动拉升 贝肯能源冲击涨停,【一带一路板块异动拉升 贝肯能源冲击涨停】财联社9月26日电,一带一路板块异动拉升,贝肯能源冲击涨停,鼎汉技术涨超10%,锦州港、南方路机、龙建股份、西藏天路等纷纷跟涨。消息面上,第三届“一带一路”国际合作高峰论坛将于今年10月在北京举办。今年前8个月,我国对152个“一带一路”共建国家进出口12.62万亿元,同比增长3.6%,占我国外贸规模的比重达到了46.6%。,2023-09-26 10:32:39 275 | 299,,财联社9月26日电,集运指数(欧线)期货主力合约向下触及800点,日内跌超7%。,2023-09-26 10:35:02 276 | -------------------------------------------------------------------------------- /notebooks/baseline_with_news.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": 1, 6 | "metadata": {}, 7 | "outputs": [], 8 | "source": [ 9 | "%load_ext autoreload\n", 10 | "%autoreload 1\n", 11 | "\n", 12 | "import sys\n", 13 | "sys.path.append('./../app/')\n", 14 | "%aimport room\n", 15 | "%aimport agent_delegater\n", 16 | "from room import Room\n", 17 | "from agent_delegater import BaseAgentDelegater\n", 18 | "from prompt_generator import genrate_agent_predict_prompt_with_news_normal\n", 19 | "import configs\n", 20 | "import datetime\n", 21 | "configs.GLOBAL_VERBOSE=False" 22 | ] 23 | }, 24 | { 25 | "cell_type": "code", 26 | "execution_count": 2, 27 | "metadata": {}, 28 | "outputs": [ 29 | { 30 | "name": "stderr", 31 | "output_type": "stream", 32 | "text": [ 33 | "100%|██████████| 1/1 [00:00<00:00, 2.81it/s]\n", 34 | "100%|██████████| 1/1 [00:00<00:00, 11.56it/s]\n" 35 | ] 36 | }, 37 | { 38 | "name": "stdout", 39 | "output_type": "stream", 40 | "text": [ 41 | "**Background**: Chinese Stock trade Market, you should play the Role below and give your action(buy/sell) and your possibility(0 to 100)\n", 42 | "**Aim**: Maximum your profit in short term, depends on your Investment style\n", 43 | "**Role Description**: \n", 44 | " Senior Trader: You are a senior stock trader, renowned in the trading community for your decades of experience and keen market insights. You are responsible for managing a substantial portfolio, often encompassing multi-million dollar positions across various asset classes.\n", 45 | " - **Asset Distribution**: Given your vast experience, your portfolio is diverse, ranging from blue-chip stocks, growth stocks, ETFs, commodities, to foreign exchange.\n", 46 | " - **Investment Philosophy**: Over the years, you've developed a refined trading strategy that melds technical analysis with fundamental research.\n", 47 | " \n", 48 | " if your investment_aggressiveness is high:\n", 49 | " - **Approach**: You employ strategies such as high-frequency trading or leveraged investments to amplify returns. You are not averse to dabbling in volatile sectors, emerging markets, or innovative industries like biotech and fintech.\n", 50 | " - **Objective**: Your primary goal is to beat market benchmarks consistently, aiming for top-tier returns.\n", 51 | "\n", 52 | " if your investment_aggressiveness is low:\n", 53 | " - **Approach**: You lean heavily on blue-chip stocks, established companies, and government or corporate bonds. You might also have a significant position in precious metals as a hedge against market volatility.\n", 54 | " - **Objective**: Your primary aim is wealth preservation with steady growth, targeting returns that outpace inflation while avoiding significant drawdowns.\n", 55 | "\n", 56 | " if your greediness is high:\n", 57 | " - **Risk Management**: While you have risk management strategies in place, your focus tends to be on maximizing each trade's profit potential. This might involve holding positions longer than initially planned or leveraging positions to amplify gains.\n", 58 | " - **Trading Frequency**: You are an active trader, making multiple trades per week, if not per day. Your keen eye is always on the lookout for short-term opportunities or market inefficiencies.\n", 59 | "\n", 60 | " if your greediness is low:\n", 61 | " - **Risk Management**: You employ stringent stop-loss orders, diversification strategies, and often consult with risk management tools or teams before making substantial moves.\n", 62 | " - **Trading Frequency**: You believe in the 'buy and hold' strategy, making infrequent trades, focusing instead on the long-term value proposition of each asset.\n", 63 | "\n", 64 | " Market Influence: Given the size and volume of your trades, your actions have the potential to cause minor price movements, especially when dealing with small-cap stocks or less liquid markets. This influence demands discretion and strategy in execution to avoid inadvertently moving the market.\n", 65 | "\n", 66 | " \n", 67 | "Role Info: \n", 68 | "Role:Senior Trader\n", 69 | "Investment style: Value Investing \n", 70 | "Risk tolerance (0-10): 1 Ultra Conservative (Primarily in ultra-safe instruments like treasury bills)\n", 71 | "Greediness (0-10): 1 Very slightly greedy\n", 72 | "Investment aggressiveness (0-10): 1 Very Conservative\n", 73 | "\n", 74 | "**Stock Fundamental Info**:Fundamental Information of 佳力图:\n", 75 | "null\n", 76 | "\n", 77 | "\n", 78 | "**Technical indicators Info**:Price Info List sampled by 1 day:\n", 79 | "Price List: [9.32, 9.0, 9.39, 9.13, 8.93, 8.68, 8.61, 8.5, 8.73, 8.58, 8.51, 8.45, 7.93, 7.96, 8.03]\n", 80 | "Volume List: [85506.0, 80568.0, 179067.0, 113359.0, 83313.0, 75645.0, 41781.0, 38256.0, 62983.0, 46714.0, 31768.0, 39931.0, 339153.0, 219737.0, 323271.0]\n", 81 | "The mean price is sampled by frequency 1 day\n", 82 | "The long term period is 30 days, the short term period is 10\n", 83 | "The cross information is No cross\n", 84 | "The Bollinger info:\n", 85 | "bollinger status:normal, no reacing neither up nor down\n", 86 | "bollinger trend: Bollinger Middle Band Trend Down\n", 87 | "MACD Info:\n", 88 | "The macd line is no crossover and the histogram is -0.09\n", 89 | "\n", 90 | "**Related News**:[\n", 91 | " {\n", 92 | " \"date\": \"2023-06-09 19:35:25\",\n", 93 | " \"title\": \"周末证券|加码建设数字经济 算力进入业绩兑现期\",\n", 94 | " \"content\": \"建议关注液冷温控解决方案设备供应商英维克、申菱环境、高澜股份、同飞股份、曙光数创。 潜力股精选英维克002837)高澜股份300499)强瑞技术301128)佳力图603912)CPO:市场需求持续走高 在AI算力高弹性、国产化进程持续推进、下游模块厂商海外业务拓展等的共同催化下,光芯片领域发展前景广阔\"\n", 95 | " },\n", 96 | " {\n", 97 | " \"date\": \"2023-06-01 11:43:43\",\n", 98 | " \"title\": \"今日122只个股突破半年线\",\n", 99 | " \"content\": \"70 0.36 5.73 5.76 0.46 000848 承德露露 1.29 0.70 8.57 8.61 0.44 603912 佳力图 2.19 1.63 13.48 13.54 0.44 002249 大洋电机 1.70 0.57 5.35 5.37 0.44\"\n", 100 | " },\n", 101 | " {\n", 102 | " \"date\": \"2023-06-10 00:05:29\",\n", 103 | " \"title\": \"加码建设数字经济 算力进入业绩兑现期\",\n", 104 | " \"content\": \"为客户提供液冷相关多工站设备及整线解决方案。若重大资产重组顺利落地,公司液冷业务将实现设备+核心部件一体化布局,有望驶入发展快车道,为公司打造第二成长极。 佳力图(603912) 公司继续专注于数据机房等精密环境控制技术的研发,为数据机房等精密环境控制领域提供节能、控温设备以及相关节能技术服务,产品服务于中国电信、中国联通、中国移动、华为等知名企业\"\n", 105 | " },\n", 106 | " {\n", 107 | " \"date\": \"2023-05-25 20:04:57\",\n", 108 | " \"title\": \"公告精选:杭州热电、剑桥科技提示风险;恒盛能源无储能和虚拟电厂业务\",\n", 109 | " \"content\": \"通过深交所交易系统(包括但不限于集中竞价、大宗交易等),以自有资金择机增持公司股份,拟增持股份金额不低于5000万元,不超过1亿元。本次增持不设置价格区间。 佳力图:股东拟减持公司不超3%股份 佳力图603912)5月25日晚间公告,持股16.83%的公司股东安乐工程集团有限公司(简称“安乐集团”)拟通过集中竞价交易方式和大宗交易方式合计减持不超过(含)1160\"\n", 110 | " },\n", 111 | " {\n", 112 | " \"date\": \"2023-04-26 15:18:04\",\n", 113 | " \"title\": \"涨停股复盘:5股封单超亿元\",\n", 114 | " \"content\": \"80机械设备003022联泓新科27.315.31281.937699.47电力设备002900哈三联12.402.40486.376030.99医药生物603912佳力图 16.3712.51365.405981.53机械设备603199九华旅游29.391.68176.625190.86社会服务002518科士达47\"\n", 115 | " },\n", 116 | " {\n", 117 | " \"date\": \"2023-04-18 16:13:42\",\n", 118 | " \"title\": \"【互动掘金】中科曙光:已为“紫东太初”等多个国内大模型训练提供算力支持\",\n", 119 | " \"content\": \"是影响电堆性能以及寿命的关键之一。金属双极板技术文件的交付为金属极板燃料电池电堆顺利完成开发奠定良好的基础。 佳力图:南京楷德悠云数据中心项目一期已完成土建工程及主要机电设备安装 佳力图603912)在互动平台表示,截至2023年3月31日,“南京楷德悠云数据中心项目(一期)”已完成土建工程及主要机电设备安装\"\n", 120 | " },\n", 121 | " {\n", 122 | " \"date\": \"2023-03-22 15:15:04\",\n", 123 | " \"title\": \"涨停股复盘:9股封单超亿元\",\n", 124 | " \"content\": \"54轻工制造002888惠威科技15.6817.96396.866222.70电子600303ST曙光 6.180.28970.175995.64汽车603912佳力图 14.426.58390.265627.55机械设备600605汇通能源11.788.78463.865464.29商贸零售000504南华生物12\"\n", 125 | " },\n", 126 | " {\n", 127 | " \"date\": \"2023-03-08 12:18:44\",\n", 128 | " \"title\": \"27只股上午收盘涨停附股)\",\n", 129 | " \"content\": \"76有色金属001366播恩集团14.760.492309.3434085.89农林牧渔002115三维通信6.4714.034684.9230311.40通信603912佳力图 14.162.351955.5627690.74机械设备300252金信诺10.648.902221.9823641.91国防军工600476湘邮科技20\"\n", 130 | " },\n", 131 | " {\n", 132 | " \"date\": \"2023-03-08 15:34:04\",\n", 133 | " \"title\": \"涨停股复盘:6股封单超亿元\",\n", 134 | " \"content\": \"%)涨停板封单万股)封单资金万元)行业001337四川黄金13.590.265299.7172023.11有色金属603061金海通 112.291.79502.4456418.99电子603912佳力图 14.162.461073.6315202.56机械设备001366播恩集团14.760.60983.4114515.20农林牧渔600476湘邮科技20\"\n", 135 | " },\n", 136 | " {\n", 137 | " \"date\": \"2023-03-08 15:12:17\",\n", 138 | " \"title\": \"A股市场尾盘拉升小幅收跌:成交不足7200亿元 逾3500股收涨\",\n", 139 | " \"content\": \"6亿元,深股通净流入2.46亿元。 6G板块再度爆发 在板块方面,6G板块短暂调整后再度爆发,东数西算、IDC等板块大幅飙涨,佳力图603912)、南兴股份002757)、金信诺300252)、南凌科技300921)等涨停或涨超10%。 石油石化板块领跌两市,中曼石油603619)、海油工程600583)等跌超5%\"\n", 140 | " },\n", 141 | " {\n", 142 | " \"date\": \"2023-04-20 21:48:36\",\n", 143 | " \"title\": \"公告精选:宁德时代一季度净利同比增长557.97%;中国移动一季度净利281亿元\",\n", 144 | " \"content\": \"经理、董事会秘书兼财务负责人王莉拟通过集中竞价交易方式减持不超过0.0199%的公司股份;副总经理金衍华拟通过集中竞价交易方式减持不超过0.0191%的公司股份。 佳力图:控股股东拟减持公司不超1%股份 佳力图603912)4月20日晚间公告,公司控股股东楷得投资拟通过集中竞价交易方式,减持不超过386.9万股(占公司总股本的1%)\"\n", 145 | " },\n", 146 | " {\n", 147 | " \"date\": \"2022-12-19 12:31:25\",\n", 148 | " \"title\": \"18只股上午收盘涨停附股)\",\n", 149 | " \"content\": \"86食品饮料002172澳洋健康4.4914.072100.959433.27医药生物002330得利斯7.569.331231.859312.79食品饮料603912佳力图 11.315.64748.248462.57机械设备003010若羽臣21.0310.96322.596784.04商贸零售600684珠江股份4\"\n", 150 | " },\n", 151 | " {\n", 152 | " \"date\": \"2022-12-20 12:14:28\",\n", 153 | " \"title\": \"24只股上午收盘涨停附股)\",\n", 154 | " \"content\": \"57石油石化002327富安娜8.147.091161.019450.62纺织服饰001209洪兴股份17.7132.07472.258363.48纺织服饰603912佳力图 12.449.27649.478079.42机械设备002186全聚德14.748.83512.127548.65社会服务600847万里股份15\"\n", 155 | " },\n", 156 | " {\n", 157 | " \"date\": \"2023-01-04 11:54:16\",\n", 158 | " \"title\": \"57只股上午收盘涨停附股)\",\n", 159 | " \"content\": \")涨停板封单万股)封单资金万元)行业002235安妮股份8.970.7915488.88138935.26轻工制造000938紫光股份22.410.633449.0477292.98计算机603912佳力图 15.200.824871.7774050.84机械设备000948南天信息25.251.991663.4942003.19计算机001301尚太科技71\"\n", 160 | " },\n", 161 | " {\n", 162 | " \"date\": \"2022-12-20 15:33:23\",\n", 163 | " \"title\": \"35只股涨停 最大封单资金3.43亿元\",\n", 164 | " \"content\": \"57电力设备002327富安娜8.1410.29917.967472.16纺织服饰002186全聚德14.7411.10505.577452.05社会服务603912佳力图 12.449.52572.807125.57机械设备600847万里股份15.404.36440.786788.03电力设备002235安妮股份5\"\n", 165 | " },\n", 166 | " {\n", 167 | " \"date\": \"2023-01-05 17:23:44\",\n", 168 | " \"title\": \"主力动向:1月5日特大单净流入147.84亿元\",\n", 169 | " \"content\": \"7.36-1.37传媒000419通程控股6.94-9.75-1.31商贸零售002555三七互娱20.184.99-1.29传媒603912佳力图14.47-4.80-1.19机械设备000620新华联3.67-6.62-1.11房地产603000人民网17.40-2.58-1\"\n", 170 | " },\n", 171 | " {\n", 172 | " \"date\": \"2023-01-04 15:27:44\",\n", 173 | " \"title\": \"涨停股复盘:11股封单超亿元\",\n", 174 | " \"content\": \"36计算机002696百洋股份8.137.463586.4729157.96农林牧渔000948南天信息25.252.231095.5427662.37计算机603912佳力图 15.200.921572.2623898.33机械设备001301尚太科技71.4350.76297.3721240.80电力设备002279久其软件8\"\n", 175 | " },\n", 176 | " {\n", 177 | " \"date\": \"2023-01-03 15:17:22\",\n", 178 | " \"title\": \"116只股涨停 最大封单资金10.87亿元\",\n", 179 | " \"content\": \"39计算机000409云鼎科技7.052.64819.835779.82计算机002343慈文传媒7.1612.08800.985735.00传媒603912佳力图 13.826.48409.105653.82机械设备603881数据港 25.885.20217.575630.79计算机002394联发股份8\"\n", 180 | " },\n", 181 | " {\n", 182 | " \"date\": \"2023-04-18 10:48:15\",\n", 183 | " \"title\": \"佳力图:南京楷德悠云数据中心项目一期已完成土建工程及主要机电设备安装\",\n", 184 | " \"content\": \"佳力图603912)在互动平台表示,截至2023年3月31日,“南京楷德悠云数据中心项目(一期)”已完成土建工程及主要机电设备安装,内部变电站施工建设已经完成,但外部电力线路尚在施工建设中,电力线施工过程中需要多个政府部门协调配合,预计将于三季度完成,待外部电力线路施工完成后\"\n", 185 | " },\n", 186 | " {\n", 187 | " \"date\": \"2023-01-01 01:18:19\",\n", 188 | " \"title\": \"新冠特效药、信创、供销社 2022年十大爆炒概念都有谁?\",\n", 189 | " \"content\": \"其中,依米康2月18日至3月9日的累积涨幅为147.23%;首都在线于2月18日至2月23日的涨幅也有90.76%。另外概念股佳力图603912.SH)在2月17日至3月1日也有70.27%的涨幅表现,黑牡丹600510.SH)在2月18日至3月10日的累积涨幅为111.01%\"\n", 190 | " }\n", 191 | "]\n", 192 | "\n", 193 | "You should only respond in JSON format as described below \n", 194 | "Response Format: \n", 195 | "{'Risk tolerance': 0, 'Investment style': 'style', 'Investment aggressiveness': 2, 'decisions': [{'action': 'buy or sell', 'probability': 20, 'percent': 'how much percent you wanna sell/buy. float type,0-100'}]} \n", 196 | "Ensure the response can be parsed by Python json.loads. Don't explain reasons\n", 197 | "[ResponseAgent(risk_tolerance=1, investment_style='Value Investing', investment_aggressiveness='1', decisions=[AgentDecision(action='buy', probability=20, percent=50.0)]), ResponseAgent(risk_tolerance=1, investment_style='Value Investing', investment_aggressiveness='1', decisions=[AgentDecision(action='sell', probability=20, percent=50.0)]), ResponseAgent(risk_tolerance=1, investment_style='Value Investing', investment_aggressiveness='1', decisions=[AgentDecision(action='buy', probability=30, percent=50.0)]), ResponseAgent(risk_tolerance=1, investment_style='Value Investing', investment_aggressiveness='1', decisions=[AgentDecision(action='sell', probability=20, percent=50.0)]), ResponseAgent(risk_tolerance=1, investment_style='Value Investing', investment_aggressiveness='1', decisions=[AgentDecision(action='sell', probability=30, percent=20.0)])]\n" 198 | ] 199 | }, 200 | { 201 | "ename": "AttributeError", 202 | "evalue": "'list' object has no attribute 'decisions'", 203 | "output_type": "error", 204 | "traceback": [ 205 | "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", 206 | "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", 207 | "\u001b[1;32m/Users/zhejianzhang/PrivateProject/quant_agents/notebooks/baseline_with_news.ipynb 单元格 2\u001b[0m line \u001b[0;36m1\n\u001b[1;32m 10\u001b[0m delegater\u001b[39m.\u001b[39mset_agents_prompt_func(genrate_agent_predict_prompt_with_news_normal)\n\u001b[1;32m 11\u001b[0m \u001b[39m# all_orders = delegater.predict_belief()\u001b[39;00m\n\u001b[0;32m---> 12\u001b[0m all_orders \u001b[39m=\u001b[39m\u001b[39mawait\u001b[39;00m delegater\u001b[39m.\u001b[39mapredict_believes()\n\u001b[1;32m 13\u001b[0m \u001b[39mfor\u001b[39;00m item \u001b[39min\u001b[39;00m all_orders:\n\u001b[1;32m 14\u001b[0m \u001b[39mprint\u001b[39m(item)\n", 208 | "File \u001b[0;32m~/PrivateProject/quant_agents/notebooks/./../app/agent_delegater.py:67\u001b[0m, in \u001b[0;36mBaseAgentDelegater.apredict_believes\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 65\u001b[0m \u001b[39mfor\u001b[39;00m agent \u001b[39min\u001b[39;00m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39magents:\n\u001b[1;32m 66\u001b[0m belief \u001b[39m=\u001b[39m \u001b[39mawait\u001b[39;00m agent\u001b[39m.\u001b[39mapredict_believes()\n\u001b[0;32m---> 67\u001b[0m agent\u001b[39m.\u001b[39;49mset_agent_belief(belief)\n\u001b[1;32m 68\u001b[0m orders \u001b[39m=\u001b[39m agent\u001b[39m.\u001b[39mplan()\n\u001b[1;32m 69\u001b[0m order_list \u001b[39m+\u001b[39m\u001b[39m=\u001b[39m orders\n", 209 | "File \u001b[0;32m~/PrivateProject/quant_agents/notebooks/./../app/agents.py:127\u001b[0m, in \u001b[0;36mBaseTraderAgent.set_agent_belief\u001b[0;34m(self, agent_response)\u001b[0m\n\u001b[1;32m 125\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mset_agent_belief\u001b[39m(\u001b[39mself\u001b[39m, agent_response:schemas\u001b[39m.\u001b[39mResponseAgent):\n\u001b[1;32m 126\u001b[0m buy_probability, buy_percent, sell_probability, sell_percent \u001b[39m=\u001b[39m \u001b[39m0\u001b[39m,\u001b[39m0\u001b[39m,\u001b[39m0\u001b[39m,\u001b[39m0\u001b[39m\n\u001b[0;32m--> 127\u001b[0m \u001b[39mfor\u001b[39;00m decision \u001b[39min\u001b[39;00m agent_response\u001b[39m.\u001b[39;49mdecisions:\n\u001b[1;32m 128\u001b[0m \u001b[39mif\u001b[39;00m decision\u001b[39m.\u001b[39maction\u001b[39m.\u001b[39mlower() \u001b[39m==\u001b[39m \u001b[39m'\u001b[39m\u001b[39mbuy\u001b[39m\u001b[39m'\u001b[39m:\n\u001b[1;32m 129\u001b[0m buy_probability \u001b[39m=\u001b[39m decision\u001b[39m.\u001b[39mprobability\n", 210 | "\u001b[0;31mAttributeError\u001b[0m: 'list' object has no attribute 'decisions'" 211 | ] 212 | } 213 | ], 214 | "source": [ 215 | "room = Room(code='603912',date=datetime.datetime(2023,10,10))\n", 216 | "delegater = BaseAgentDelegater()\n", 217 | "# delegater._init_agents(cls = BeginnerTrader, size = 10)\n", 218 | "delegater._init_stock_info(\n", 219 | " fundamental_info_prompt=room.fundamental_info.to_prompt(),\n", 220 | " tech_info_prompt=room.stock_tech_info.to_prompt(),\n", 221 | " price = room.stock_tech_info.get_price_by_freq_and_index(),\n", 222 | " news_info=room.news_info\n", 223 | ")\n", 224 | "delegater.set_agents_prompt_func(genrate_agent_predict_prompt_with_news_normal)\n", 225 | "# all_orders = delegater.predict_belief()\n", 226 | "all_orders =await delegater.apredict_believes()\n", 227 | "for item in all_orders:\n", 228 | " print(item)" 229 | ] 230 | }, 231 | { 232 | "cell_type": "code", 233 | "execution_count": null, 234 | "metadata": {}, 235 | "outputs": [], 236 | "source": [ 237 | "\n", 238 | "from market import StockExchange\n", 239 | "# import importlib\n", 240 | "# importlib.reload(market)\n", 241 | "market = StockExchange()\n", 242 | "for item in all_orders:\n", 243 | " market.add_order(item)\n", 244 | "market.match_orders()\n", 245 | "print('last match order:', market.last_traded_price)\n", 246 | "if market.last_traded_price is None:\n", 247 | " print('last trade price:',max([item.price for item in market.buy_orders]))" 248 | ] 249 | }, 250 | { 251 | "cell_type": "code", 252 | "execution_count": null, 253 | "metadata": {}, 254 | "outputs": [], 255 | "source": [] 256 | } 257 | ], 258 | "metadata": { 259 | "kernelspec": { 260 | "display_name": "quant_gpt", 261 | "language": "python", 262 | "name": "python3" 263 | }, 264 | "language_info": { 265 | "codemirror_mode": { 266 | "name": "ipython", 267 | "version": 3 268 | }, 269 | "file_extension": ".py", 270 | "mimetype": "text/x-python", 271 | "name": "python", 272 | "nbconvert_exporter": "python", 273 | "pygments_lexer": "ipython3", 274 | "version": "3.11.4" 275 | }, 276 | "orig_nbformat": 4 277 | }, 278 | "nbformat": 4, 279 | "nbformat_minor": 2 280 | } 281 | -------------------------------------------------------------------------------- /notebooks/demo.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": 1, 6 | "metadata": {}, 7 | "outputs": [], 8 | "source": [ 9 | "%load_ext autoreload\n", 10 | "%autoreload 1\n", 11 | "%aimport market\n", 12 | "from room import Room\n", 13 | "from agent_delegater import BaseAgentDelegater" 14 | ] 15 | }, 16 | { 17 | "cell_type": "code", 18 | "execution_count": 2, 19 | "metadata": {}, 20 | "outputs": [ 21 | { 22 | "name": "stderr", 23 | "output_type": "stream", 24 | "text": [ 25 | "100%|██████████| 1/1 [00:00<00:00, 3.13it/s]\n", 26 | "100%|██████████| 1/1 [00:00<00:00, 11.95it/s]\n" 27 | ] 28 | }, 29 | { 30 | "name": "stdout", 31 | "output_type": "stream", 32 | "text": [ 33 | "163 98\n" 34 | ] 35 | } 36 | ], 37 | "source": [ 38 | "\n", 39 | "room = Room()\n" 40 | ] 41 | }, 42 | { 43 | "cell_type": "code", 44 | "execution_count": 5, 45 | "metadata": {}, 46 | "outputs": [ 47 | { 48 | "name": "stdout", 49 | "output_type": "stream", 50 | "text": [ 51 | "\n" 52 | ] 53 | } 54 | ], 55 | "source": [ 56 | "print(room.index_store.node_vector_store)" 57 | ] 58 | }, 59 | { 60 | "cell_type": "code", 61 | "execution_count": 6, 62 | "metadata": {}, 63 | "outputs": [ 64 | { 65 | "name": "stdout", 66 | "output_type": "stream", 67 | "text": [ 68 | "[(Document(page_content='德恩精工', metadata={'node_id': '-5715628551663223860'}), 3.3888425e-06), (Document(page_content='东莞捷荣模具制造工业有限公司', metadata={'node_id': '1820658998594346237'}), 0.30786487), (Document(page_content='精伦电子', metadata={'node_id': '-3232971585479397085'}), 0.3127393), (Document(page_content='精密模具', metadata={'node_id': '-2064289296388941708'}), 0.315022)]\n", 69 | "[IndexNode(id='-5715628551663223860', embedding=None, content='德恩精工'), IndexNode(id='1820658998594346237', embedding=None, content='东莞捷荣模具制造工业有限公司'), IndexNode(id='-3232971585479397085', embedding=None, content='精伦电子'), IndexNode(id='-2064289296388941708', embedding=None, content='精密模具')]\n" 70 | ] 71 | } 72 | ], 73 | "source": [ 74 | "print(room.index_store.search_nodes('德恩精工'))" 75 | ] 76 | }, 77 | { 78 | "cell_type": "code", 79 | "execution_count": 7, 80 | "metadata": {}, 81 | "outputs": [ 82 | { 83 | "name": "stdout", 84 | "output_type": "stream", 85 | "text": [ 86 | "[Order(uid='Senior Trader_fa5041a586d4413a921c76fe69a3e14f', action='buy', price=48.848, share=117), Order(uid='Senior Trader_e3f73c726fb54ffea313dca352d691cd', action='buy', price=48.406, share=114), Order(uid='Senior Trader_b31cceb0192544919ab6eb19fdb418e2', action='buy', price=48.49, share=68), Order(uid='Senior Trader_a7ed38cce1664dbbb11d7f9417f11168', action='buy', price=48.823, share=113), Order(uid='Senior Trader_db9046bcb0714fdd8f9787fde2a59e64', action='buy', price=47.444, share=99), Order(uid='Beginner Trader_335db523902046ff8ac1c772b0805b95', action='buy', price=48.839, share=98), Order(uid='Beginner Trader_a9c683ced4614888ac2217060cd2e413', action='buy', price=48.956, share=78), Order(uid='Beginner Trader_c04c049e684947b2ab204343d6b5cde5', action='buy', price=48.219, share=97), Order(uid='Beginner Trader_d3aec3336e4f4c599ace6e231bb9eef5', action='buy', price=49.062, share=66), Order(uid='Beginner Trader_b53e663ece9c4b47bbf363044a3fec7d', action='buy', price=47.691, share=129), Order(uid='FUND MANAGER_be9ffa44bc7443889620cb08480de0e2', action='buy', price=47.746, share=224), Order(uid='FUND MANAGER_cfa36ac7bbe346be8e30767139376308', action='buy', price=48.17, share=113), Order(uid='FUND MANAGER_b3be1fae216640af91dcb195fc825d23', action='buy', price=49.056, share=154), Order(uid='FUND MANAGER_49876b19efcb42b8982f407faa127232', action='buy', price=47.65, share=218), Order(uid='FUND MANAGER_9b92901da9924f3da6143cb8e4870d13', action='buy', price=48.569, share=191)]\n" 87 | ] 88 | } 89 | ], 90 | "source": [ 91 | "delegater = BaseAgentDelegater()\n", 92 | "# delegater._init_agents(cls = BeginnerTrader, size = 10)\n", 93 | "delegater._init_stock_info(\n", 94 | " fundamental_info_prompt=room.fundamental_info.to_prompt(),\n", 95 | " tech_info_prompt=room.stock_tech_info.to_prompt(),\n", 96 | " price = room.stock_tech_info.get_price_by_freq_and_index()\n", 97 | ")\n", 98 | "all_orders = delegater.predict_belief()\n", 99 | "print(all_orders)" 100 | ] 101 | }, 102 | { 103 | "cell_type": "code", 104 | "execution_count": 9, 105 | "metadata": {}, 106 | "outputs": [ 107 | { 108 | "name": "stdout", 109 | "output_type": "stream", 110 | "text": [ 111 | "last match order: None\n", 112 | "last trade price: 49.062\n" 113 | ] 114 | } 115 | ], 116 | "source": [ 117 | "\n", 118 | "\n", 119 | "from market import StockExchange\n", 120 | "# import importlib\n", 121 | "# importlib.reload(market)\n", 122 | "market = StockExchange()\n", 123 | "for item in all_orders:\n", 124 | " market.add_order(item)\n", 125 | "market.match_orders()\n", 126 | "print('last match order:', market.last_traded_price)\n", 127 | "if market.last_traded_price is None:\n", 128 | " print('last trade price:',max([item.price for item in market.buy_orders]))\n" 129 | ] 130 | }, 131 | { 132 | "cell_type": "code", 133 | "execution_count": null, 134 | "metadata": {}, 135 | "outputs": [], 136 | "source": [] 137 | } 138 | ], 139 | "metadata": { 140 | "kernelspec": { 141 | "display_name": "quant_gpt", 142 | "language": "python", 143 | "name": "python3" 144 | }, 145 | "language_info": { 146 | "codemirror_mode": { 147 | "name": "ipython", 148 | "version": 3 149 | }, 150 | "file_extension": ".py", 151 | "mimetype": "text/x-python", 152 | "name": "python", 153 | "nbconvert_exporter": "python", 154 | "pygments_lexer": "ipython3", 155 | "version": "3.11.4" 156 | }, 157 | "orig_nbformat": 4 158 | }, 159 | "nbformat": 4, 160 | "nbformat_minor": 2 161 | } 162 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | pandas 2 | numpy 3 | langchain 4 | openai 5 | pydantic 6 | python-dotenv==1.0.0 7 | 8 | tiktoken 9 | qstock 10 | retry 11 | pyexecjs 12 | beautifulsoup4 13 | lxml 14 | 15 | faiss_cpu==1.7.3 -------------------------------------------------------------------------------- /stock_news.csv: -------------------------------------------------------------------------------- 1 | ,date,code,title,content,url 2 | 0,2023-09-26 10:02:29,002855,捷荣技术连收5个涨停板,证券时报网讯,捷荣技术盘中涨停,已连收5个涨停板,截至09:47,该股报43.48元,换手率5.87%,成交量1444.14万股,成交金额6.11亿元,涨停板封单金额为810.62万元,连续涨停期间,该股累计上涨61.04%,累计换手率为68.06%。最新A股总市值达107.14亿元,http://finance.eastmoney.com/a/202309262858577321.html 3 | 1,2023-09-26 09:48:37,002855,捷荣技术再度涨停 走出20天15板,华为概念人气股捷荣技术再度涨停,走出20天15板,累计涨幅超360%。,http://finance.eastmoney.com/a/202309262858559234.html 4 | 2,2023-09-25 22:38:31,002855,捷荣技术:目前公司从事的主要业务和经营无重大变化,捷荣技术9月25日在互动平台表示,目前公司从事的主要业务和经营无重大变化,公司不断提升越南、印度等海外公司生产制造及服务能力,海外公司已具备了包括模具制造、维修、注塑成型到成品生产及交付的完整工艺能力,将充分利用海外本地化优势,挖掘海外市场潜力。,http://finance.eastmoney.com/a/202309252857741971.html 5 | 3,2023-09-25 17:15:21,002855,遥遥领先!华为首款黄金表卖21999元 刘德华担任非凡大师品牌大使 这些概念股涨疯了,问界M9将是1000万以内最好的SUV。 资本市场上,今日午后,A股华为概念股持续活跃,多只个股涨停,其中捷荣技术再收获涨停,8月28日华为Mat60Pro开售至今,捷荣技术股价已累计上涨335%。 相关报道 一图了解华为发布会新亮点 秒杀蓝牙!华为发布全球首款星闪终端 多家上市公司布局,http://finance.eastmoney.com/a/202309252857570679.html 6 | 4,2023-09-25 12:05:23,002855,两只“妖股”罕见狂飙!减肥药概念暴涨,这类产品目前在国内上市的数量较少,已上市的或者处于临床后期的有竞争力的GLP-1产品,在中期仍有持续放量的机会,支撑公司估值继续抬升。 捷荣技术再度涨停 今天上午,华为概念股捷荣技术再度涨停,迎来四连板。从8月29日上涨以来,该股累计涨超326%。 消息面上,据华为终端微博消息,华为秋季全场景新品发布会将于9月25日14,http://finance.eastmoney.com/a/202309252857348558.html 7 | 5,2023-09-25 12:44:12,002855,牛股10天翻倍!华为概念股再掀涨停潮 捷荣技术20个交易日上涨3倍,公司尚未开展艾本那肽针对肥胖或减重的临床试验。 华为概念股再掀涨停潮 捷荣技术20个交易日上涨3倍 今日早盘,华为概念股持续活跃,多股涨停。其中,捷荣技术再度涨停,股价续创历史新高。截至午间收盘,旋极信息涨超16%,亚威股份、远东传动、恒为科技、科力尔、剑桥科技、嘉环科技、捷荣技术涨停。 9月22日晚间,旋极信息发布公告称,http://finance.eastmoney.com/a/202309252857354943.html 8 | 6,2023-09-25 10:40:34,002855,捷荣技术20个交易日涨超3倍,上证报中国证券网讯截至9月25日10时23分,捷荣技术涨停,股价续创历史新高,20个交易日涨超3倍。数据来源:Choic金融终端,http://finance.eastmoney.com/a/202309252857290956.html 9 | 7,2023-09-25 10:31:09,002855,捷荣技术连收4个涨停板,捷荣技术盘中涨停,已连收4个涨停板,截至10:13,该股报39.53元,换手率7.29%,成交量1793.35万股,成交金额6.93亿元,涨停板封单金额为174.72万元,连续涨停期间,该股累计上涨46.41%,累计换手率为59.01%。最新A股总市值达97.41亿元,A股流通市值97,http://finance.eastmoney.com/a/202309252857285675.html 10 | 8,2023-09-25 10:26:45,002855,捷荣技术盘中触及涨停,北京商报讯(记者马换换)9月25日,妖股捷荣技术(002855)盘中再度触及涨停。 交易行情显示,捷荣技术9月25日大幅高开5.56%,开盘后公司股价震荡上行,早盘冲上涨停。截至北京商报记者发稿,捷荣技术股价报涨停价39.53元股,总市值为97.41亿元。 经东方财富统计,http://finance.eastmoney.com/a/202309252857283573.html 11 | 9,2023-09-25 11:34:45,002855,捷荣技术涨停再创新高 近20日已累计大涨超300%,捷荣技术002855)今日强势拉升涨停,截至发稿,该股报39.53元,再创历史新高。至此,该股自8月29日以来的20个交易日已累计大涨约327%,且有14个交易日涨停。 公司近日发布风险提示称,近期公司经营情况及内外部经营环境未发生重大变化,公司郑重提醒广大投资者,股票价格可能受到宏观经济、行业政策、金融市场流动性、公司经营情况等,http://finance.eastmoney.com/a/202309252857342084.html 12 | 10,2023-09-25 10:17:52,002855,华为概念股持续活跃 捷荣技术20个交易日涨超3倍,华为概念股盘中持续活跃,捷荣技术再度触及涨停,20个交易日涨超3倍。此外远东传动、科力尔、恒为科技、海得控制等涨停。消息面上,华为将于今日下午2:30举行华为秋季全场景新品发布会。,http://stock.eastmoney.com/a/202309252857271991.html 13 | 11,2023-09-25 18:35:24,002855,沪指跌0.54% 捷荣技术、三联锻造等创历史新高,9月25日,沪指跌0.54%,深证成指跌0.57%,创业板指跌0.40%。东方财富Choic数据显示,今日有10只个股盘中股价创历史新高,为捷荣技术、三联锻造等。 东方财富Choic数据显示,今日7只个股盘中股价创历史新低。 仅供投资者参考,不构成投资建议。股市有风险,投资需谨慎,http://finance.eastmoney.com/a/202309252857631185.html 14 | 12,2023-09-23 08:39:21,002855,业绩连年亏损 股价暴涨近300% 星闪概念最强股的证代宣布辞职!,捷荣技术证券事务代表辞职 9月22日晚间,捷荣技术公告,董事会于近日收到公司证券事务代表徐中清先生的书面辞职报告。徐中清先生因个人原因申请辞去公司证券事务代表职务,辞职后将不在公司担任任何职务,徐中清先生的辞职自辞职报告送达董事会之日起生效。 受星闪概念炒作,捷荣技术是近期震荡市中罕见的大牛股,http://finance.eastmoney.com/a/202309232856667782.html 15 | 13,2023-09-22 18:42:19,002855,捷荣技术:证券事务代表辞职,9月22日,捷荣技术公告,董事会于近日收到公司证券事务代表徐中清先生的书面辞职报告。徐中清先生因个人原因申请辞去公司证券事务代表职务,辞职后将不在公司担任任何职务,徐中清先生的辞职自辞职报告送达董事会之日起生效。,http://finance.eastmoney.com/a/202309222856056225.html 16 | 14,2023-09-22 17:11:12,002855,图解牛熊股:华为概念强势股涨幅“遥遥领先” 主力资金抢筹算力股,汽车产业链、华为概念、算力概念股本周均有亮眼表现。 从本周牛股榜上来看,华为产业链个股继续走强,部分强势股本周涨幅“遥遥领先”。日久光电、捷荣技术、科力尔、光弘科技、三联锻造纷纷上榜。本周周涨幅居于前三的日久光电、捷荣技术、精伦电子均涨约40%。值得一提的是,精伦电子此前也被封“华为概念股”,但公司发布公告称与华为没有业务往来,http://finance.eastmoney.com/a/202309222855973633.html 17 | 15,2023-09-23 08:37:29,002855,业绩连年亏损 股价暴涨近300% 星闪概念最强股的证代宣布辞职!下周解禁市值1500亿 医美龙头居首,捷荣技术证券事务代表辞职 9月22日晚间,捷荣技术公告,董事会于近日收到公司证券事务代表徐中清先生的书面辞职报告。徐中清先生因个人原因申请辞去公司证券事务代表职务,辞职后将不在公司担任任何职务,徐中清先生的辞职自辞职报告送达董事会之日起生效。 受星闪概念炒作,捷荣技术是近期震荡市中罕见的大牛股,http://finance.eastmoney.com/a/202309232856667865.html 18 | 16,2023-09-22 17:02:47,002855,龙虎榜 | 捷荣技术今日涨停 机构净买入3062.45万元,捷荣技术9月22日涨停,龙虎榜数据显示,上榜营业部席位全天成交3.29亿元,占当日总成交金额比例为22.47%。其中,买入金额为1.84亿元,卖出金额为1.45亿元,合计净买入3942.74万元。 具体来看,机构买入3157.61万元,卖出95.16万元,合计净买入3062,http://finance.eastmoney.com/a/202309222855956317.html 19 | 17,2023-09-22 19:16:54,002855,19天13板捷荣技术:公司股价短期波动幅度较大 经营情况及内外部经营环境未发生重大变化 证代辞职,捷荣技术9月22日公告,股票于2023年9月20日、2023年9月21日连续两个交易日收盘价格涨幅偏离值累计超过20%,公司股价短期波动幅度较大。敬请广大投资者理性投资,注意投资风险。 近期,公司经营情况及内外部经营环境未发生重大变化,公司郑重提醒广大投资者,股票价格可能受到宏观经济、行业政策、金融市场流动性、公司经营情况等多重因,http://finance.eastmoney.com/a/202309222856080727.html 20 | 18,2023-09-22 10:16:59,002855,捷荣技术涨停走出3连板,9月22日上午,捷荣技术涨停走出3连板,成交量超8亿元。,http://finance.eastmoney.com/a/202309222855614935.html 21 | 19,2023-09-22 12:30:31,002855,18天12板捷荣技术发第6份异动公告:公司连年亏损市盈率为负,连续18个交易日,捷荣技术(002855.SZ)累计涨幅252.81%,期间12个涨停板,被市场津津乐道。9月22日早盘,捷荣技术也再接再厉,有超9%的冲高。 9月21日晚间,捷荣技术再发异动公告,提示公司于2023年8月30日披露了《2023年半年度报告》,2023年半年度实现营业收入约9,http://finance.eastmoney.com/a/202309222855687886.html 22 | 20,2023-09-21 12:33:40,002855,罕见!多只超级慢牛股大跌!华为概念火爆 新龙头是它?,三天内两个涨停板。 华为概念中的两大牛股,一是芯片概念+卫星导航的华力创通,另外就是捷荣技术。后者堪称两市新龙头,近一个月以来累计录得10多个涨停板,期间最大涨幅高达262%。 资料显示,捷荣技术在精密模具和精密结构件领域具有丰富的行业经验,目前已成为多家全球知名品牌厂商的主要供应商,http://finance.eastmoney.com/a/202309212854326434.html 23 | 21,2023-09-21 19:43:05,002855,捷荣技术:2021年至今年度经营业绩均为亏损 目前市盈率为负,捷荣技术21日晚间发布股价异动公告称,公司股票于9月20日、9月21日连续两个交易日收盘价格涨幅偏离值累计超过20%,公司股价短期波动幅度较大。敬请广大投资者理性投资,注意投资风险。公司2023年半年度实现归属于上市公司股东的净利润为-4688.86万元。公司2021年度、2022年度及2023年上半年度经营业绩均为亏损,http://finance.eastmoney.com/a/202309212854662084.html 24 | 22,2023-09-21 20:34:23,002855,捷荣技术:近期公司经营情况及内外部经营环境未发生重大变化,捷荣技术披露股票交易异常波动公告称,近期公司经营情况及内外部经营环境未发生重大变化。公司2021年度、2022年度及2023年上半年度经营业绩均为亏损,请投资者注意公司经营风险。公司当前市盈率显著偏离行业平均水平。公司股价短期与同期深证A股指数偏离度较大,且远高于同行业公司的同期涨幅,http://finance.eastmoney.com/a/202309212854694984.html 25 | 23,2023-09-21 13:36:01,002855,捷荣技术午后涨停 18个交易日累计涨超250%,证券时报公司讯,华为概念股捷荣技术午后再度涨停,18个交易日内12天涨停,累计涨幅超250%。,http://finance.eastmoney.com/a/202309212854375471.html 26 | 24,2023-09-21 13:32:42,002855,捷荣技术午后再度涨停 18个交易日累计超250%,南方财经9月21日电,华为概念股龙头捷荣技术午后再度涨停,18个交易日内12天涨停,累计涨幅超250%。,http://finance.eastmoney.com/a/202309212854374720.html 27 | 25,2023-09-21 18:52:21,002855,交易异动!捷荣技术:近3个交易日上涨25.03% 无未披露的重大信息,"捷荣技术(SZ 002855,收盘价:32.67元)9月21日晚间发布公告称,东莞捷荣技术股份有限公司股票于2023年9月20日、2023年9月21日连续两个交易日收盘价格涨幅偏离值累计超过20%,公司股价短期波动幅度较大,敬请广大投资者理性投资,注意投资风险。公司前期披露的信息不存在需要更正、补充之处",http://finance.eastmoney.com/a/202309212854629255.html 28 | 26,2023-09-21 19:28:34,002855,17天12板捷荣技术:2021年至今年度经营业绩均为亏损 目前市盈率为负,17天12板捷荣技术9月21日发布股票交易异常波动公告,公司股票于9月20日、9月21日连续两个交易日收盘价格涨幅偏离值累计超过20%,公司股价短期波动幅度较大。敬请广大投资者理性投资,注意投资风险。 公司2023年半年度实现营业收入约9.47亿元,同比下降31.53%;实现归属于上市公司股东的净利润为,http://finance.eastmoney.com/a/202309212854654145.html 29 | 27,2023-09-21 16:58:40,002855,捷荣技术涨停 上榜营业部合计净卖出1253.00万元,捷荣技术今日涨停,全天换手率14.76%,成交额11.43亿元,振幅12.27%。龙虎榜数据显示,营业部席位合计净卖出1253.00万元。 深交所公开信息显示,当日该股因日涨幅偏离值达10.83%上榜,营业部席位合计净卖出1253.00万元。 证券时报·数据宝统计显示,上榜的前五大买卖营业部合计成交2,http://finance.eastmoney.com/a/202309212854546583.html 30 | 28,2023-09-22 09:27:28,002855,竞价看龙头:市场焦点股捷荣技术(17天12板)高开4.01%,市场焦点股捷荣技术(17天12板)高开4.01%,医药股通化金马(17天9板)高开5.07%,华为产业链的日久光电(10天5板)高开8.19%、荣联科技(3天2板)高开0.76%、丰华股份(4天2板)高开5.63%,光伏股罗普斯金(2板)低开4.99%,机器人概念股精伦电子(2板)高开5,http://stock.eastmoney.com/a/202309222855497975.html 31 | 29,2023-09-21 13:31:10,002855,捷荣技术午后触及涨停,成交量超10亿元,9月21日下午,捷荣技术午后触及涨停,成交量超10亿元,近一月累计涨幅超250%。,http://finance.eastmoney.com/a/202309212854372266.html 32 | 30,2023-09-20 15:25:16,002855,孟晚舟发声!华为平板全球发货量超1亿台!“华为”股涨疯了:这家公司16天11板,9月20日,午后华为概念股再度活跃,捷荣技术(002855.SZ)再度涨停,收获16天11板,股价创历史新高,自8月29日启动以来17个交易日暴涨220%。 另外,赛摩智能、新炬网络、万润科技、日久光电、国华网安、精伦电子等多股也都涨停。神思电子大涨9.35%、荣联科技、格林精密、中富通等纷纷跟涨,http://finance.eastmoney.com/a/202309202853090923.html 33 | 31,2023-09-20 13:49:05,002855,捷荣技术午后再度触及涨停,捷荣技术午后再度触及涨停,股价创历史新高,8月29日启动以来17个交易日暴涨220%。,http://finance.eastmoney.com/a/202309202853009255.html 34 | 32,2023-09-20 16:51:31,002855,捷荣技术龙虎榜数据(9月20日),证券时报网讯,捷荣技术今日涨停,全天换手率19.95%,成交额13.72亿元,振幅16.42%。龙虎榜数据显示,营业部席位合计净买入6880.32万元。 深交所公开信息显示,当日该股因日振幅值达16.42%、日涨幅偏离值达10.59%上榜,营业部席位合计净买入6880.32万元,http://finance.eastmoney.com/a/202309202853190116.html 35 | 33,2023-09-20 13:44:46,002855,捷荣技术午后再度触及涨停 股价创历史新高,9月20日下午,捷荣技术午后再度触及涨停,股价创历史新高,8月29日启动以来17个交易日暴涨220%。,http://finance.eastmoney.com/a/202309202853006476.html 36 | 34,2023-09-20 14:24:22,002855,捷荣技术等成立公司 经营范围含可穿戴智能设备制造,企查查APP显示,近日,东莞新捷化工有限公司成立,注册资本1000万元,经营范围包含:新材料技术研发;高性能纤维及复合材料制造;智能家庭消费设备制造;可穿戴智能设备制造;模具制造等。该公司由捷荣技术002855)全资子公司东莞捷荣模具制造工业有限公司、广东新秀新材料股份有限公司共同持股。,http://finance.eastmoney.com/a/202309202853038123.html 37 | 35,2023-09-19 10:55:21,002855,半月股价累计涨幅达188% 捷荣技术回复关注函:不存在主动迎合市场热点炒作股价的情形,A股多只华为手机概念股也纷纷涨停或跟涨。其中,股价涨幅与公司基本面背离的个股遭到了监管的重点关注。 9月18日晚间,主营精密结构件业务的华为概念股捷荣技术(SZ002855,股价26.13元,市值64.39亿元)发布了回复深交所问询函的公告称,公司不存在主动迎合市场热点炒作公司股价的情形,并郑重提醒广大投资者:“公司2021年度、2022年度及2023年上半,http://finance.eastmoney.com/a/202309192851576920.html 38 | 36,2023-09-20 13:27:31,002855,捷荣技术涨7.70%,股价创历史新高,证券时报网讯,捷荣技术股价创出历史新高,截至13:10,该股上涨7.70%,股价报29.08元,成交量3277.36万股,成交金额8.90亿元,换手率13.32%,最新A股总市值达71.66亿元,A股流通市值71.57亿元。 证券时报·数据宝统计显示,捷荣技术所属的电子行业,今日整体跌幅为0,http://finance.eastmoney.com/a/202309202852985381.html 39 | 37,2023-09-20 16:40:31,002855,主力复盘:超6亿拉升拓维信息 捷荣技术16天11板,9月20日主力净买入前20大个股中,拓维信息排名第一,主力净买入6.33亿元,该股今日涨超7%;翰宇药业排名第二,主力净买入4.28亿元。 捷荣技术排名第六,主力净买入2.27亿元,该股今日再度涨停,录得16天11板。 图片来源:东方财富Choic数据) 主力净卖出TOP20 东方财富Choic数据显示,http://finance.eastmoney.com/a/202309202853177921.html 40 | 38,2023-09-21 13:20:29,002855,捷荣技术午后触及涨停,捷荣技术午后触及涨停,成交量超10亿元,近一月累计涨幅超250%。,http://finance.eastmoney.com/a/202309212854361682.html 41 | 39,2023-09-21 09:27:05,002855,竞价看龙头:市场焦点股捷荣技术(16天11板)高开1.01%,市场焦点股捷荣技术(16天11板)高开1.01%,次新股金帝股份(3板)高开1.12%,华为产业链的日久光电(5天3板)高开5.09%、万润科技(3天2板)高开0.15%,国货概念的龙头股份(3天2板)低开2.65%,算力板块的远东传动(4天2板)平开,机器人概念股赛摩智能(创业板首板)平开,http://stock.eastmoney.com/a/202309212854172686.html 42 | 40,2023-09-22 17:29:46,002855,沪指涨1.55% 捷荣技术、新诺威等创历史新高,9月22日,沪指涨1.55%,深证成指涨1.97%,创业板指涨2.32%。东方财富Choic数据显示,今日有3只个股盘中股价创历史新高,为捷荣技术、新诺威等。 东方财富Choic数据显示,今日57只个股盘中股价创历史新低。 仅供投资者参考,不构成投资建议。股市有风险,投资需谨慎,http://finance.eastmoney.com/a/202309222855996668.html 43 | 41,2023-09-19 17:43:38,002855,捷荣技术回复关注函称不存在炒作股价 或将开展新能源及投资新业务,华为概念股捷荣技术近期股价大幅拉升,引发了监管层的关注。 9月14日晚间,捷荣技术收到深交所下发的关注函。关注函指出,8月29日至9月14日,捷荣技术累计涨幅高达188.34%,期间股票交易触及五次涨幅异常波动情形。深交所在关注函中要求公司对营业收入下降、净利润亏损情况进行充分的分析说明与风险提示,http://finance.eastmoney.com/a/202309192851854775.html 44 | 42,2023-09-19 09:59:14,002855,捷荣技术回复深交所关注函:近期公司基本面未发生重大变化,南方财经9月19日电,捷荣技术回复深交所关注函:经自查,近期公司基本面未发生重大变化,不存在主动迎合市场热点炒作公司股价的情形。捷荣集团、捷荣汇盈及捷荣技术实控人在捷荣技术股票异动期间,不存在买卖捷荣技术股票的行为。,http://finance.eastmoney.com/a/202309192851510834.html 45 | 43,2023-09-20 13:09:43,002855,华为概念股午后走强 捷荣技术涨7%刷新历史高点,华为概念股午后走强,捷荣技术涨7%刷新历史高点,利和兴、强瑞技术短线拉高。,http://stock.eastmoney.com/a/202309202852969782.html 46 | 44,2023-09-15 07:43:56,002855,华为引爆?12天10板 暴涨188%!交易所出手了,据证券时报,捷荣技术2017年年报中,“华为终端(东莞)有限公司”在捷荣技术前五大客户排名由第一位降至第五位,营收金额从3.83亿元猛降至0.85亿元,营收占比降至5.62%。而另外一家“华为终端有限公司”则被挤出前五之列。 2019年年报,捷荣技术提到主要客户时,顺序为“华勤、OPPO、三星、LG、GOOGLE、华为等”,http://finance.eastmoney.com/a/202309152847982684.html 47 | 45,2023-09-14 20:35:36,002855,捷荣技术收关注函:要求说明是否存在主动迎合市场热点炒作公司股价的情形,捷荣技术收关注函:要求说明公司基本面是否发生重大变化,近期股价涨幅与公司基本面是否匹配,结合同行业上市公司估值、市盈率、股价变动幅度等,就公司近期股价大幅波动进行充分的风险提示,并核查是否存在应披露而未披露的重大信息,是否存在主动迎合市场热点炒作公司股价的情形。要求说明股权转让事项进展,http://finance.eastmoney.com/a/202309142847721136.html 48 | 46,2023-09-15 22:16:38,002855,暴涨188%的捷荣技术收到关注函 交易所追问“是否主动迎合炒作”,从2017年上市到现在,捷荣技术的业绩一直处于下滑态势。上市当年,捷荣技术的营收和归母净利润分别下滑17.23%、28.26%。2018年-2020年的3年间,捷荣技术只在2019年实现过营收净利双增长,其余2年均为同比下滑。2021年与2022年,捷荣技术的归母净利润分别亏损2.45亿元、1,http://finance.eastmoney.com/a/202309152849179722.html 49 | 47,2023-09-15 21:18:26,002855,对妖股监管重点应放在交易环节,9月14日捷荣技术收出12天10板,堪称妖股,14日晚公司收到深交所关注函,关注函要求公司说明基本面是否发生重大变化,核查是否存在应披露而未披露的重大信息,是否存在主动迎合市场热点炒作公司股价的情形。笔者认为,对妖股监管重点或应放在交易环节。 2023 年上半年,捷荣技术实现营业收入,http://finance.eastmoney.com/a/202309152849148983.html 50 | 48,2023-09-13 18:20:28,002855,人气高标抱团取暖!最高录得11天9板 游资、量化身影频现 回顾上轮极致行情,捷荣技术、华映科技、立达信分别录得11天9板、10天8板、6天4板,此外,联合精密成功晋级4连板,通化金马、京华激光也分别获3连板、2连板。 注:近日获多个涨停的人气高标今日再度走强(截至9月13日收盘) 游资量化齐聚高标,抱团个股人气渐涨 据悉,此批高标股中,捷荣技术、华映科技、立达信属于华为概念,http://finance.eastmoney.com/a/202309132846296285.html 51 | 49,2023-09-15 23:52:41,002855,捷荣技术近14个交易日累计涨超179% 深交所质疑是否主动迎合市场热点炒作股价,85亿元。自2020年起,捷荣技术已不再披露具体客户名称。 日前,有投资者在互动易平台上向捷荣技术提问,是否能具体介绍公司与华为有哪些方面的合作?对此,捷荣技术回复称,“公司具体客户及产品合作涉及商业保密条款,敬请谅解。” 此外,前不久,捷荣技术发布了两则对外设立子公司的公告,http://finance.eastmoney.com/a/202309152849201247.html 52 | 50,2023-09-15 12:07:10,002855,华为概念股捷荣技术13天10板,上半年亏近5000万,监管质疑迎合热点炒作,记者|赵阳戈 捷荣技术(002855.SZ)一口气将气氛拉满。 盘面看,自8月29日启动到9月14日,捷荣技术用了13天时间,将累计涨幅推到了188%,期间有10个涨停板,如此惊艳之举,还在于其“华为概念”。 来源:同花顺 据悉,捷荣技术的主营面向3C行业客户提供精密模具、精密结构件及高外观需求组合组件的设计、研发、制,http://finance.eastmoney.com/a/202309152848708819.html 53 | 51,2023-09-14 20:46:04,002855,深交所向捷荣技术发出关注函,2023年9月14日,深交所向捷荣技术(SZ 002855,收盘价:26.7元)发出关注函:2023年8月29日至9月14日,你公司股票价格累计涨幅为188.34%,期间你公司股票交易触及五次涨幅异常波动情形。我部对此高度关注,于9月8日向你公司发出问询函,回函期限为9月15日,http://finance.eastmoney.com/a/202309142847732480.html 54 | 52,2023-09-15 18:30:17,002855,13个交易日股价涨188% “华为概念股”捷荣技术被深交所追问基本面与股权转让进展,审慎决策、理性投资。 捷荣技术在业绩并未有利好的情况下而股价大涨,背后原因或与公司身上“华为概念股”的标签有关。 捷荣技术曾因第一大客户是华为,而被市场视为华为产业链公司。捷荣技术主营精密结构件业务,是手机等消费电子产品的必备件,招股书显示,捷荣技术在2011年就已建立华为供应商认证代码,http://finance.eastmoney.com/a/202309152849044976.html 55 | 53,2023-09-14 20:46:52,002855,捷荣技术收关注函:要求说明是否主动迎合市场热点炒作股价,深交所向捷荣技术002855)下发关注函,要求结合经营情况说明公司基本面是否发生重大变化,近期股价涨幅与公司基本面是否匹配,结合同行业上市公司估值、市盈率、股价变动幅度等,就公司近期股价大幅波动进行充分的风险提示,并核查是否存在应披露而未披露的重大信息,是否存在主动迎合市场热点炒作公司股价的情形,http://finance.eastmoney.com/a/202309142847734163.html 56 | 54,2023-09-14 18:54:44,002855,交易异动!捷荣技术:近3个交易日上涨15.53% 无未披露的重大信息,"捷荣技术(SZ 002855,收盘价:26.7元)9月14日晚间发布公告称,东莞捷荣技术股份有限公司股票于2023年9月13日、2023年9月14日连续两个交易日收盘价格涨幅偏离值累计超过20%,公司股价短期波动幅度较大,敬请广大投资者理性投资,注意投资风险。公司前期披露的信息不存在需要更正、补充之处",http://finance.eastmoney.com/a/202309142847644874.html 57 | 55,2023-09-14 20:04:36,002855,捷荣技术:近期公司经营情况及内外部经营环境未发生重大变化,捷荣技术披露股票交易异常波动公告称,近期公司经营情况及内外部经营环境未发生重大变化。公司当前市盈率显著偏离行业平均水平。公司股价短期与同期深证A股指数偏离度较大,且高于同行业公司的同期涨幅,请投资者充分了解二级市场交易风险,审慎决策、理性投资。,http://finance.eastmoney.com/a/202309142847700335.html 58 | 56,2023-09-14 22:00:44,002855,12天10板捷荣技术收关注函:要求说明是否迎合市场热点炒作股价,“华为概念股”捷荣技术收关注函。 9月14日,东莞捷荣技术股份有限公司(捷荣技术,002855)收到深交所关注函,关注函称,8月29日至9月14日,捷荣技术股票价格累计涨幅为188.34%,期间公司股票交易触及五次涨幅异常波动情形。深交所要求捷荣技术说明的情况包括:对公司营业收入下降、净利润亏损情况进行充分的分析说明与风险提示,http://finance.eastmoney.com/a/202309142847772523.html 59 | 57,2023-09-15 15:43:13,002855,10个涨停板、股价暴涨188%后 “华为概念股”捷荣技术收关注函,截至发稿,捷荣技术尚未回复该关注函。 9月15日,捷荣技术股价低开,午间收盘报25.6元股,跌4.12%,总市值约63亿元。 真是“华为概念股”吗?从第一大客户降到第五大客户 红星资本局翻阅捷荣技术历年财报发现,华为曾是捷荣技术的第一大客户。 2016年,捷荣技术的前两大客户分别是华为终端(东莞)有限公司、华为终端有限公司,http://finance.eastmoney.com/a/202309152848860262.html 60 | 58,2023-09-14 21:23:44,002855,捷荣技术收关注函,近12个交易日斩获10个涨停板,捷荣技术(002855)9月14日晚间收到了深交所下发的关注函,要求公司说明是否存在主动迎合市场热点炒作公司股价的情形。 根据《2023年半年度报告》,2023年上半年,捷荣技术实现营业收入9.47亿元,较上年同期下降31.53%;实现净利润,http://finance.eastmoney.com/a/202309142847756494.html 61 | 59,2023-09-14 10:18:25,002855,高位股继续活跃 捷荣技术12天10板,高位股继续活跃,捷荣技术再度涨停实现12天10板,立达信7天5板,联合精密5连板,通化金马4连板。,http://finance.eastmoney.com/a/202309142847270685.html 62 | 60,2023-09-14 19:06:23,002855,12天10板捷荣技术:目前公司股票市盈率为负 股价短期与同期深证A股指数偏离度较大,12天10板捷荣技术9月14日发布异动公告,公司股票于2023年9月13日、2023年9月14日连续两个交易日收盘价格涨幅偏离值累计超过20%,公司股价短期波动幅度较大。 公司董事会对有关事项进行了核实,公司前期披露的信息不存在需要更正、补充之处。公司未发现近期公共传媒报道了可能或已经对公司股票交易价格产生较大影响的未公开重大信息,http://finance.eastmoney.com/a/202309142847660295.html 63 | 61,2023-09-14 20:46:44,002855,12天10板捷荣技术收关注函 被要求说明是否主动迎合市场热点炒作公司股价 是否涉嫌内幕交易,深交所9月14日向捷荣技术下发关注函,被要求说明公司基本面是否发生重大变化,近期股价涨幅与公司基本面是否匹配,结合同行业上市公司估值、市盈率、股价变动幅度等,就公司近期股价大幅波动进行充分的风险提示,并核查是否存在应披露而未披露的重大信息,是否存在主动迎合市场热点炒作公司股价的情形,http://finance.eastmoney.com/a/202309142847732920.html 64 | 62,2023-09-14 10:05:58,002855,捷荣技术早盘一度触及涨停,9月14日上午,捷荣技术早盘一度触及涨停,此前录得11天9板,成交额近7亿元。,http://finance.eastmoney.com/a/202309142847257368.html 65 | 63,2023-09-15 11:14:39,002855,华为概念股捷荣技术12天10板背后:双方合作规模已缩小 公司连亏两年半,9月14日,华为概念股捷荣技术(002855.SZ)再度涨停,录得12天10板,当日收盘报收于26.7元,该股自8月29日以来的13个交易日已累计大涨约188%。9月以来,捷荣技术已发布4次股票交易异动公告。 然而,记者梳理公司近年来财报发现,公司与华为合作规模已缩小。同时,http://finance.eastmoney.com/a/202309152848687957.html 66 | 64,2023-09-13 20:18:04,002855,华为“带飞”卫星通信板块 多家A股公司主动提示风险,股整体走势(期间上证指数、深证成指、创业板指涨幅分别仅 0.1%、-1.56%、-3.56%)。 相关概念股如华力创通(300045.SZ)、中英科技(300936.SZ)、捷荣技术(002855.SZ)、冠石科技(605588.SZ)、华映科技(000536.SZ)等快速蹿升,涨幅更是达到惊人的116.91%、9.61%、100,http://finance.eastmoney.com/a/202309132846368515.html 67 | 65,2023-09-14 10:17:22,002855,捷荣技术盘中再度触及涨停 录得12天10板,9月14日上午,捷荣技术盘中再度触及涨停,录得12天10板,成交额超8亿元。,http://finance.eastmoney.com/a/202309142847270710.html 68 | 66,2023-09-14 19:00:51,002855,捷荣技术:经营情况及经营环境未发生重大变化,捷荣技术002855)9月14日晚间披露股票交易异动公告,公司股价短期波动幅度较大。近期,公司经营情况及内外部经营环境未发生重大变化。目前公司股票市盈率为负,显著偏离行业平均水平。公司股价短期与同期深证A股指数偏离度较大,且高于同行业公司的同期涨幅,请投资者审慎决策、理性投资,http://finance.eastmoney.com/a/202309142847650238.html 69 | 67,2023-09-14 18:53:52,002855,捷荣技术:目前公司股票市盈率为负 股价短期与同期深证A股指数偏离度较大,捷荣技术发布股票交易异常波动公告,目前公司股票市盈率为负,根据中证指数有限公司官方网站,公司所属证监会行业C39计算机、通信和其他电子设备制造业的最新滚动市盈率为33.42,公司当前市盈率显著偏离行业平均水平。公司股价短期与同期深证A股指数偏离度较大,且高于同行业公司的同期涨幅,http://finance.eastmoney.com/a/202309142847645134.html 70 | 68,2023-09-14 18:53:52,002855,12天10板捷荣技术:目前公司股票市盈率为负 经营情况未发生重大变化,捷荣技术披露股票交易异常波动公告,近期公司经营情况及内外部经营环境未发生重大变化。目前公司股票市盈率为负。公司股价短期与同期深证A股指数偏离度较大,且高于同行业公司的同期涨幅,请投资者充分了解二级市场交易风险,审慎决策、理性投资。,http://finance.eastmoney.com/a/202309142847643012.html 71 | 69,2023-09-14 10:19:26,002855,资金继续抱团高位股 捷荣技术12天10板,南方财经9月14日电,资金继续抱团高位股,捷荣技术再度涨停实现12天10板,立达信7天5板,联合精密5连板,通化金马4连板。,http://finance.eastmoney.com/a/202309142847273239.html 72 | 70,2023-09-14 17:22:39,002855,捷荣技术涨停 上榜营业部合计净卖出6160.29万元,捷荣技术今日涨停,全天换手率21.07%,成交额13.48亿元,振幅9.79%。龙虎榜数据显示,营业部席位合计净卖出6160.29万元。 深交所公开信息显示,当日该股因日涨幅偏离值达10.65%上榜,营业部席位合计净卖出6160.29万元。 证券时报·数据宝统计显示,上榜的前五大买卖营业部合计成交2,http://finance.eastmoney.com/a/202309142847567925.html 73 | 71,2023-09-14 17:41:03,002855,主力复盘:近7亿封板赛力斯 捷荣技术12天10板,9月14日主力净买入前20大个股中,N盛科-U排名第一,主力净买入6.85亿元;赛力斯排名第二,主力净买入6.79亿元,该股今日涨停。 捷荣技术位列第十七,主力净买入1.07亿元,该股今日再度涨停,录得12天10板。 图片来源:东方财富Choic数据) 主力净卖出TOP20 东方财富Choic数据显示,http://finance.eastmoney.com/a/202309142847590261.html 74 | 72,2023-09-14 14:41:01,002855,捷荣技术再度涨停 近13个交易日累计大涨近2倍,捷荣技术002855)14日再度强势拉升,截至发稿,该股涨停报26.7元,股价逼近历史高点。至此,该股自8月29日以来的13个交易日已累计大涨约188%。 公司近日发布风险提示称,近期公司经营情况及内外部经营环境未发生重大变化,公司提醒广大投资者,股票价格可能受到宏观经济、行业政策、金融市场流动性、公司经营情况等多重因素影响,http://finance.eastmoney.com/a/202309142847438159.html 75 | 73,2023-09-15 09:27:50,002855,竞价看龙头:市场焦点股捷荣技术(12天10板)低开1.50%,市场焦点股捷荣技术(12天10板)低开1.50%,工业大麻概念股通化金马(12天7板)高开4.21%,芯片产业链的联合精密(5板)高开0.73%、立达信(7天5板)低开4.51%、冠石科技(7天5板)高开0.11%,福建本地股欣贺股份(2板)高开1.43%,东北振兴概念股龙江交通(3天2板)高开2,http://stock.eastmoney.com/a/202309152848516915.html 76 | 74,2023-09-11 20:40:28,002855,交易异动!捷荣技术:近3个交易日上涨30.49% 无未披露的重大信息,"捷荣技术(SZ 002855,收盘价:23.11元)9月11日晚间发布公告称,东莞捷荣技术股份有限公司股票于2023年9月8日、2023年9月11日连续两个交易日收盘价格涨幅偏离值累计超过20%,公司股价短期波动幅度较大,敬请广大投资者理性投资,注意投资风险。公司前期披露的信息不存在需要更正、补充之处",http://finance.eastmoney.com/a/202309112843672160.html 77 | 75,2023-09-11 11:19:12,002855,捷荣技术再度涨停,捷荣技术午前再度涨停,录得9日8板,区间涨幅高达131%,日内振幅高达17%。,http://finance.eastmoney.com/a/202309112843253439.html 78 | 76,2023-09-11 13:45:38,002855,“游资”热炒 捷荣技术9天8板,9月11日早盘,华为概念股龙头捷荣技术再度涨停,录得9天8板,累计涨幅高达131.10%,在近期连涨股中位列第一。截至发稿,该股成交金额为9.66亿元,换手率17.87%,总市值达56.95亿元。 消息面上,近期“华为Mat60系列”相关产品突然开售引发销售市场及资本市场同步火热,http://finance.eastmoney.com/a/202309112843335543.html 79 | 77,2023-09-11 11:16:01,002855,捷荣技术录得9天8板,捷荣技术再度涨停,9个交易日内录得8个涨停,累计涨幅为131.10%,累计换手率为69.04%。截至11:03,该股今日成交量3901.77万股,成交金额8.51亿元,换手率15.85%。最新A股总市值达56.95亿元,A股流通市值56.88亿元。 龙虎榜数据显示,该股近9日内因连续三个交易日内,http://finance.eastmoney.com/a/202309112843250016.html 80 | 78,2023-09-11 21:03:24,002855,9天8板捷荣技术:当前市盈率显著偏离行业平均水平 上半年净亏4688.86万元,9天8板捷荣技术9月11日发布股票交易异常波动公告,公司股票于9月8日、9月11日连续两个交易日收盘价格涨幅偏离值累计超过20%,公司股价短期波动幅度较大。敬请广大投资者理性投资,注意投资风险。 公司于2023年8月30日披露了《2023年半年度报告》,公司2023年半年度实现营业收入约9,http://finance.eastmoney.com/a/202309112843686498.html 81 | 79,2023-09-08 13:01:16,002855,华为“王炸”!Mat 60“超大杯”上架 新款折叠屏手机或同样搭载“中国芯”,带给人们无限的想象空间。Mat 60 Pro+又会带来怎样的惊喜呢,消费者充满期待。 二级市场上,华为概念股又掀起了一轮上涨热潮。截至9月8日上午收盘,捷荣技术、华映科技涨停,华力创通涨逾16%。 财信证券表示,进入第三季度,市场已从上半年主题概念炒作风格转向业绩驱动逻辑,市场更关心业绩的实际兑现情况,http://finance.eastmoney.com/a/202309082841900126.html 82 | 80,2023-09-14 09:27:56,002855,竞价看龙头:市场焦点股捷荣技术(11天9板)高开0.95%,市场焦点股捷荣技术(11天9板)高开0.95%,华为产业链的华映科技(10天8板)平开、立达信(6天4板)竞价涨停,大麻概念股通化金马(11天6板)高开3.28%,光刻机板块联合精密(4板)高开0.06%、蓝英装备(创业板6天3板)低开7.00%、京华激光(6天3板)高开6,http://stock.eastmoney.com/a/202309142847155830.html 83 | 81,2023-09-10 09:26:22,002855,暴涨的华为概念股 基本面如何?知名游资现身龙虎榜!,55%和39.52%,捷荣技术对华为的收入来自两家公司,分别为华为终端(东莞)有限公司和华为终端有限公司。 不过,2017年后,尽管华为仍是捷荣技术主要客户,但华为对其贡献的营收占比有所下滑。 据捷荣技术2017年年报,当年,华为终端(东莞)有限公司在捷荣技术前五大客户排名中由第一位降至第五位,http://finance.eastmoney.com/a/202309102842682651.html 84 | 82,2023-09-13 14:18:39,002855,捷荣技术临近尾盘再度触及涨停 录得11天9板,捷荣技术临近尾盘再度触及涨停,录得11天9板,成交额超11亿元。,http://finance.eastmoney.com/a/202309132846091069.html 85 | 83,2023-09-11 12:21:52,002855,【财联社午报】两市迎普涨反弹!医药股集体大涨 这一人气龙头录得9天8板,一、【早盘盘面回顾】 财联社9月11日讯,市场早盘震荡攀升,三大指数均小幅收高。盘面上,华为产业链延续活跃,其中星闪概念强势,捷荣技术走出9天8板,冠石科技4连板,荣联科技、创耀科技等涨停。医药股集体大涨,创新药、减肥药方向领涨,常山药业、通化金马、灵康药业涨停。光刻机板块继续活跃,http://finance.eastmoney.com/a/202309112843276426.html 86 | 84,2023-09-08 10:05:33,002855,捷荣技术录得8天7板,捷荣技术再度涨停,8个交易日内录得7个涨停,累计涨幅为110.10%,累计换手率为51.75%。截至09:54,该股今日成交量3582.43万股,成交金额7.10亿元,换手率14.56%。最新A股总市值达51.77亿元,A股流通市值51.71亿元。 龙虎榜数据显示,该股近8日内因连续三个交易日内,http://finance.eastmoney.com/a/202309082841794590.html 87 | 85,2023-09-12 09:27:38,002855,竞价看龙头:市场焦点股捷荣技术(9天8板)低开0.52%,市场焦点股捷荣技术(9天8板)低开0.52%,光刻机概念股张江高科(4板)高开2.86%、奥普光电(4天3板)低开4.93%、联合精密(2板)高开0.97%,芯片产业链的冠石科技(4板)高开4.39%,BC电池概念股广信材料(创业板5天3板)低开12.56%,华为产业链的荣联科技(2板)高开8,http://stock.eastmoney.com/a/202309122844481836.html 88 | 86,2023-09-08 16:39:35,002855,捷荣技术涨停,上榜营业部合计净买入4570.39万元,证券时报网讯,捷荣技术今日涨停,全天换手率16.00%,成交额7.85亿元,振幅12.35%。龙虎榜数据显示,营业部席位合计净买入4570.39万元。 深交所公开信息显示,当日该股因日涨幅偏离值达10.07%上榜,营业部席位合计净买入4570.39万元。 证券时报·数据宝统计显示,http://finance.eastmoney.com/a/202309082842100317.html 89 | 87,2023-09-07 09:44:36,002855,捷荣技术盘中涨停,已连收7个涨停板,9月7日上午,捷荣技术盘中涨停,已连收7个涨停板,截至09:26,该股报19.48元,换手率0.77%,成交量189.17万股,成交金额3685.03万元,涨停板封单金额为2.14亿元,连续涨停期间,该股累计上涨94.80%,累计换手率为23.47%。最新A股总市值达48.00亿元,http://finance.eastmoney.com/a/202309072840395447.html 90 | 88,2023-09-11 11:13:29,002855,捷荣技术9天8板 日内成交近10亿,捷荣技术拉升触板,盘中再度涨停录得9天8板,日内成交额近10亿元。,http://finance.eastmoney.com/a/202309112843248917.html 91 | 89,2023-09-07 20:00:04,002855,交易异动!捷荣技术:近3个交易日上涨30.46% 无未披露的重大信息,捷荣技术(SZ 002855,收盘价:19.1元)9月7日晚间发布公告称,东莞捷荣技术股份有限公司股票于2023年9月6日、2023年9月7日连续两个交易日收盘价格涨幅偏离值累计超过20%。公司前期披露的信息不存在需要更正、补充之处。 2023年1至6月份,捷荣技术的营业收入构成为:计算机和通信和其他设备制造业占比100,http://finance.eastmoney.com/a/202309072840879415.html 92 | 90,2023-09-07 09:38:42,002855,竞价看龙头:捷荣技术一字涨停晋级7连板,9月7日,市场焦点股我乐家居(8板)高开2.98%,华为产业链的捷荣技术(6板)竞价涨停、华映科技(5天4板)高开9.09%、蓝箭电子(创业板2板)低开0.55%,芯片产业链的广信材料(创业板2板)高开13.95%、蓝英装备(创业板首板)高开6.84%、扬帆新材(创业板首板)高开5,http://finance.eastmoney.com/a/202309072840388021.html 93 | 91,2023-09-07 19:52:28,002855,捷荣技术:近期经营情况及内外部经营环境未发生重大变化,捷荣技术002855)9月7日晚间披露股票交易异动及严重异动的公告,经自查,公司不存在违反公平信息披露的情形。公司不存在导致股票交易严重异常波动的未披露事项。近期公司经营情况及内外部经营环境未发生重大变化。,http://finance.eastmoney.com/a/202309072840870583.html 94 | 92,2023-09-11 09:28:27,002855,竞价看龙头 市场焦点股捷荣技术(8天7板)高开7.09%,市场焦点股捷荣技术(8天7板)高开7.09%,华为产业链的华映科技(7天6板)高开6.58%、冠石科技(3板)竞价涨停、创耀科技(科创板首板)高开11.09%,光刻机概念股张江高科(3板)高开9.73%、蓝英装备(创业板3天2板)高开5.20%、奥普光电(3天2板)高开0.56%,http://stock.eastmoney.com/a/202309112843064681.html 95 | 93,2023-09-07 20:06:54,002855,7天6板捷荣技术:股票交易严重异常波动 市盈率为负 近期经营情况及内外部经营环境未发生重大变化,8天7板捷荣技术9月7日公告,公司股票于2023年9月6日、2023年9月7日连续两个交易日收盘价格涨幅偏离值累计超过20%,根据有关规定,属于股票交易异常波动情形。 同时,公司股票于2023年8月29日至2023年9月7日连续八个交易日收盘价格涨幅偏离值累计超过100%,根据有关规定,http://finance.eastmoney.com/a/202309072840885259.html 96 | 94,2023-09-05 19:16:08,002855,交易异动!捷荣技术:近3个交易日上涨33.06% 无未披露的重大信息,捷荣技术(SZ 002855,收盘价:16.1元)9月5日晚间发布公告称,东莞捷荣技术股份有限公司股票于2023年9月4日、2023年9月5日连续两个交易日收盘价格涨幅偏离值累计超过20%。公司前期披露的信息不存在需要更正、补充之处。 2023年1至6月份,捷荣技术的营业收入构成为:计算机和通信和其他设备制造业占比100,http://finance.eastmoney.com/a/202309052838104986.html 97 | 95,2023-09-05 09:31:42,002855,捷荣技术连收5个涨停板,捷荣技术盘中涨停,已连收5个涨停板,截至09:25,该股报16.10元,换手率0.49%,成交量121.18万股,成交金额1950.99万元,涨停板封单金额为4.56亿元,连续涨停期间,该股累计上涨61.00%,累计换手率为16.49%。最新A股总市值达39.67亿元,A股流通市值39,http://finance.eastmoney.com/a/202309052837482625.html 98 | 96,2023-09-06 09:37:13,002855,捷荣技术连收6个涨停板,捷荣技术盘中涨停,已连收6个涨停板,截至09:30,该股报17.71元,换手率5.06%,成交量1244.62万股,成交金额2.16亿元,涨停板封单金额为1.24亿元,连续涨停期间,该股累计上涨77.10%,累计换手率为22.19%。最新A股总市值达43.64亿元,A股流通市值43,http://finance.eastmoney.com/a/202309062839037117.html 99 | 97,2023-09-08 12:33:47,002855,彻底引爆!华为Mat60 Pro+、X5突然开售,刚上线就被秒光!这些股涨疯了,Pro开售行情,这两机型10:08分开启预售后继续被火速抢光! 消息发布后,A股华为概念股再度持续活跃,捷荣技术、华映科技、东睦股份、先锋电子等个股涨停,其中捷荣技术已8天7板,华映科技已7天6板。 据华为介绍,Mat60 Pro+采用丹青弧设计,作为全球首款搭载双星卫星通信的手机,http://finance.eastmoney.com/a/202309082841887638.html 100 | 98,2023-09-05 22:03:09,002855,5连板捷荣技术:控股股东拟转让所持29.9%公司股份 原定签署正式协议期限调为180天内签署正式协议,"捷荣技术9月5日公告,公司股票于9月4日、9月5日连续两个交易日收盘价格涨幅偏离值累计超过20%,达成6连板,根据深圳证券交易所的有关规定,属于股票交易异常波动情形。近期公司经营情况及内外部经营环境未发生重大变化。 控股股东捷荣科技集团有限公司拟将其持有公司73,679,484股股份(占公司总股本29",http://finance.eastmoney.com/a/202309052838194128.html 101 | 99,2023-09-07 08:08:35,002855,六连板捷荣技术或难扛“华为概念股”大旗,在资本市场上名不见经传的捷荣技术(002855.SZ)正扛起“华为概念股”大旗。 9月6日,捷荣技术已拿下第六个连续涨停板,短短七个交易日,股价累积涨幅超过90%。公司已连发两份股票交易异动公告。 是炒作,还是真实订单支撑?究竟捷荣技术“含华量”几何,能否匹配如此妖的走势? 捷荣技术近几年未披露具体客户信息,http://finance.eastmoney.com/a/202309072839962327.html 102 | --------------------------------------------------------------------------------