Python中,我们可以编写一个脚本,用于查询任意地区的历史天气数据,并基于这些数据生成气温走势的折线图。这里,我们将使用Python的第三方库来简化天气数据的获取和图形绘制过程。以下是一个分步指南,包含必要的代码和说明。
### 第一步:获取地区代码
首先,我们需要一个方法来获取每个地区对应的天气代码。这通常涉及到一个API调用,但为简化说明,我们假设这些代码已经被整理成一个CSV文件(实际中你可能需要从天气服务API获取这些代码)。
import requests
import csv
import re
import os
from lxml import etree
import pyecharts.options as opts
from pyecharts.charts import Line
# 设置请求头
headers={
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36 Edg/127.0.0.0',
}
def input_data():
"""输入地点,时间"""
city=input("请输入查询城市:")
month=input("请输入查询月份(格式:202307):")
return city, month
def get_date_url(city, month):
"""获取当月日期地址"""
if os.path.exists('city_data.csv'):
with open('city_data.csv', mode='r', encoding='utf-8') as f:
reader=csv.reader(f)
for row in reader:
if city==row[0]:
city_id=row[1]
month_url=f"https://lishi.tianqi.com/{city_id}/{month}.html"
return month_url
def extract_numbers(string):
"""提取字符串中的数字"""
numbers=re.findall(r'\d+', string)[0]
return float(numbers)
def spider_weather(date_url, city, month):
try:
response=requests.get(url=date_url, headers=headers)
html=etree.HTML(response.text)
tree=html.xpath('/html/body/div[7]/div[1]/div[4]/ul/li')
date_name_list=[]
high_temperatures=[]
low_temperatures=[]
weathers=[]
for i in tree:
date=i.xpath('./div[1]/text()')[0].split(' ')[0]
high_temperature=extract_numbers(i.xpath('./div[2]/text()')[0])
low_temperature=extract_numbers(i.xpath('./div[3]/text()')[0])
weather=i.xpath('./div[4]/text()')[0]
wind=i.xpath('./div[5]/text()')[0]
print(date, high_temperature, low_temperature, weather, wind)
date_name_list.append(date)
high_temperatures.append(high_temperature)
low_temperatures.append(low_temperature)
weathers.append(weather)
line=(
Line(init_opts=opts.InitOpts(width="1200px", height="600px",page_title='月份气温折线图'))
.add_xaxis(xaxis_data=date_name_list)
.add_yaxis(
series_name="最高气温",
y_axis=high_temperatures,
markpoint_opts=opts.MarkPointOpts(
data=[
opts.MarkPointItem(type_="max", name="最大值"),
]
),
markline_opts=opts.MarkLineOpts(
data=[opts.MarkLineItem(type_="average", name="平均值")]
),
)
.add_yaxis(
series_name="最低气温",
y_axis=low_temperatures,
markpoint_opts=opts.MarkPointOpts(
data=[opts.MarkPointItem(type_="min", name="最小值")]
),
markline_opts=opts.MarkLineOpts(
data=[
opts.MarkLineItem(type_="average", name="平均值"),
]
),
)
.set_global_opts(
# 设置主副标题
title_opts=opts.TitleOpts(title=f"{city}地区{month[0:4]}年{month[4:]}月气温走势折线图", subtitle=f"{city}"),
tooltip_opts=opts.TooltipOpts(trigger="axis"),
toolbox_opts=opts.ToolboxOpts(is_show=True, feature=opts.ToolBoxFeatureOpts(save_as_image=opts.ToolBoxFeatureSaveAsImageOpts(pixel_ratio=3, type_='jpg', background_color='#fff'))),
xaxis_opts=opts.AxisOpts(type_="category", boundary_gap=False, name='日期', min_=0, max_=len(date_name_list), axisline_opts=opts.AxisLineOpts(symbol=['none', 'arrow'])),
datazoom_opts=opts.AxisLineOpts(),
)
)
line.render(f"{city}地区{month[0:4]}年{month[4:]}月气温走势折线图.html")
except Exception as e:
print(e)
def main():
city, month=input_data()
month_url=get_date_url(city, month)
spider_weather(month_url, city, month)
if __name__=='__main__':
main()
```
第二步import requests
import csv
import re
import os
from lxml import etree
import pyecharts.options as opts
from pyecharts.charts import Line
# 设置请求头
headers={
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36 Edg/127.0.0.0',
}
def input_data():
"""输入地点,时间"""
city=input("请输入查询城市:")
month=input("请输入查询月份(格式:202307):")
return city, month
def get_date_url(city, month):
"""获取当月日期地址"""
if os.path.exists('city_data.csv'):
with open('city_data.csv', mode='r', encoding='utf-8') as f:
reader=csv.reader(f)
for row in reader:
if city==row[0]:
city_id=row[1]
month_url=f"https://lishi.tianqi.com/{city_id}/{month}.html"
return month_url
def extract_numbers(string):
"""提取字符串中的数字"""
numbers=re.findall(r'\d+', string)[0]
return float(numbers)
def spider_weather(date_url, city, month):
try:
response=requests.get(url=date_url, headers=headers)
html=etree.HTML(response.text)
tree=html.xpath('/html/body/div[7]/div[1]/div[4]/ul/li')
date_name_list=[]
high_temperatures=[]
low_temperatures=[]
weathers=[]
for i in tree:
date=i.xpath('./div[1]/text()')[0].split(' ')[0]
high_temperature=extract_numbers(i.xpath('./div[2]/text()')[0])
low_temperature=extract_numbers(i.xpath('./div[3]/text()')[0])
weather=i.xpath('./div[4]/text()')[0]
wind=i.xpath('./div[5]/text()')[0]
print(date, high_temperature, low_temperature, weather, wind)
date_name_list.append(date)
high_temperatures.append(high_temperature)
low_temperatures.append(low_temperature)
weathers.append(weather)
line=(
Line(init_opts=opts.InitOpts(width="1200px", height="600px",page_title='月份气温折线图'))
.add_xaxis(xaxis_data=date_name_list)
.add_yaxis(
series_name="最高气温",
y_axis=high_temperatures,
markpoint_opts=opts.MarkPointOpts(
data=[
opts.MarkPointItem(type_="max", name="最大值"),
]
),
markline_opts=opts.MarkLineOpts(
data=[opts.MarkLineItem(type_="average", name="平均值")]
),
)
.add_yaxis(
series_name="最低气温",
y_axis=low_temperatures,
markpoint_opts=opts.MarkPointOpts(
data=[opts.MarkPointItem(type_="min", name="最小值")]
),
markline_opts=opts.MarkLineOpts(
data=[
opts.MarkLineItem(type_="average", name="平均值"),
]
),
)
.set_global_opts(
# 设置主副标题
title_opts=opts.TitleOpts(title=f"{city}地区{month[0:4]}年{month[4:]}月气温走势折线图", subtitle=f"{city}"),
tooltip_opts=opts.TooltipOpts(trigger="axis"),
toolbox_opts=opts.ToolboxOpts(is_show=True, feature=opts.ToolBoxFeatureOpts(save_as_image=opts.ToolBoxFeatureSaveAsImageOpts(pixel_ratio=3, type_='jpg', background_color='#fff'))),
xaxis_opts=opts.AxisOpts(type_="category", boundary_gap=False, name='日期', min_=0, max_=len(date_name_list), axisline_opts=opts.AxisLineOpts(symbol=['none', 'arrow'])),
datazoom_opts=opts.AxisLineOpts(),
)
)
line.render(f"{city}地区{month[0:4]}年{month[4:]}月气温走势折线图.html")
except Exception as e:
print(e)
def main():
city, month=input_data()
month_url=get_date_url(city, month)
spider_weather(month_url, city, month)
if __name__=='__main__':
main()
注意:以上代码提供了一个基本的框架,你可以根据实际需求进行调整和扩展。
效果图
卢昊:中美日三边关系动向及日本的战略应对
作者:卢昊,中国社会科学院日本研究所副研究员
来源:《东北亚学刊》2021年第5期;中国社科院日本研究所
注释
1例如,2020年4月27日,特朗普在白宫记者招待会上公开谴责并声言废除美国自中美建交以来对华接触战略;7月23日蓬佩奥在加州尼克松图书馆发表演讲,鼓吹西方团结起来对中国发起“新冷战”。ScottKennedy,“A Complex Inheritance:Transitioning to a New Approach onChina”,https://www.csis.org/analysis/complex-inheritance-transitioning-new-approach-china.
2Charlie Campbell,“In His Speech to Congress,Joe BidenSets Out a Vision for ‘Competition,Not Conflict’ withChina”.https://time.com/5995109/biden-congress-speech-china/.
3例如,2021年2月4日,拜登在外交政策演讲中称,中国是美国“最严峻的竞争对手”;3月3日,美国务卿布林肯称,中美关系未来将会是“应该时竞争、可以时合作、必要时对抗”;4月9日,拜登在国会演讲中称美国将与中国竞争,但不会寻求冲突。
4Li Cheng,“Biden’s China Strategy:Coalition-drivenCompetition or Cold War-styleConfrontation?”.https://www.brookings.edu/research/bidens-china-strategy-coalition-driven-competition-or-cold-war-style-confrontation.
5朱锋:《中美战略竞争与日本的安全战略选择》,《日本学刊》2021年第3期。
6期间中美高层交流包括:2021年3月18日至19日,中美在阿拉斯加进行高层战略对话;4月14日至16日,美总统气候变化事务特使克里访华;7月25日至26日,美副国务卿舍曼访华。
7「日米安保条約60年特集」、『日本経済新聞』2020年1月20日;「安保戦略多角的に改定」、『日本経済新聞』2020年6月23日。
8[日] 外務省:「日米安全保障協議委員会」、2021年3月16日。https://www.mofa.go.jp/mofaj/na/st/page1_000942.html.
9[日] 外務省:「日米首脳共同声明:新たな時代における日米グローバル·パートナーシップ」、2021年4月16日。https://www.mofa.go.jp/mofaj/files/100200052.pdf.
10[日] 細谷雄一:「インド太平洋の地域秩序を主導せよ」、『Voice』2021年3月号。
112021年,日美协调达成并对外发表以下涉华负面观点:第一,公开指责中方行为“与现行国际秩序不符”,成为地区稳定负面因素;第二,反对中方在东海“单方面现状改变”及南海“非法海洋权益主张”;第三,以所谓人权问题为名对中国香港、新疆问题表示“严重关切”,污蔑中方政策;第四,以关注“台海和平”为名干涉台湾问题,要求两岸矛盾“和平解决”。参见:「日米首脳会談-対中連携どう示す」、『毎日新聞』2021年4月15日;「菅首相の米国訪問-中国政策のすり合わせを」、『毎日新聞』2021年4月15日。
12[日] 首相官邸:「第二百三回国会における菅内閣総理大臣所信表明演説」、2021年10月26日。http://www.kantei.go.jp/jp/99_suga/statement/2020/1026shoshinhyomei.html。
13[日] 高原明生:「日中の基本原則を捉え直す機会に」、『外交』2020年3-4月号、12-17頁;[日] 北岡伸一等:「中国を国際秩序の中に」、『日本経済新聞』2021年5月5日。
14刘星:《后疫情时代中日安全关系的复杂性与风险》,《日本研究》2021年第2期。
15[日] 秋田浩之:「日本、板挟みではない」、『日本経済新聞』2021年4月27日。
16[日] 森本敏等:「日米政変-米中対立の今こそ日本の主体性を示せ」、『中央公論』2020年11月号。
17[日] 岩田清文:「日米同盟を機能させるために」、『日本戦略研究フォーラム季報』2020年4月号;[日] 河野克俊:「今後の日米同盟のあり方」、『日本戦略研究フォーラム季報』2020年4月号。
18[日] 五百旗頭真:「激動の世界を読む再び2大国のはざまで:『米中にもの申せる』日本に」、『アジア時報』2020年9月号;[日] 森本敏等:「日米政変-米中対立の今こそ日本の主体性を示せ」、『中央公論』2020年11月号;[日] 金子将史「『戦略的不可欠性』を確保せよ」、『Voice』2020年6月号。
19[日] 田中明彦:「激動の世界を読む大統領選後の米中関係:競争·対立の構造は不変」、『アジア時報』2020年12月号;[日] 久保文明、宮家邦彦:「分極化するアイデンティティと、収斂する二大政党バイデンか、トランプか?変質するアメリカの選択」、『中央公論』2020年11月号。
20[日] 小野寺五典:「日米『一体化』で問われる日本の役割」、『外交』2020年5-6月号;[日] 武田康裕:「日本の安全保障と日米同盟」、『外交』2020年5-6月号;[日] 山崎拓:「日米安保体制再構築の時機」、『月刊日本』2020年8月号。
21初晓波:《特朗普政权下的日美关系与“后安倍时代”日本对外战略走向:基于同盟安全困境视角的分析》,《日本学刊》2020年第5期。
22[日] 五百旗頭真:「米中対立世紀と日本:戦後秩序再編へ誘導を」、『毎日新聞』2020年2月13日。
23[日] 兼原信克:「自由主義的国際秩序へのリーダーシップ」、『外交』2020年9-10月号、6-12頁;[日] 中西宽:「世界が迎える大転換と日本の課題」、『Voice』2020年7月号;[日] 細谷雄一:「リベラルな国際秩序と日本外交」、『国際問題』2020年4月号。
24[日] 茂木敏充、田中明彦:「ポスト·コロナを見据えた国際ルールつくりを主導する」、『外交』2021年1-2月号;[日] 細谷雄一:「国際協調主義の推進こそ日本外交の針路」、『公明』2020年2月号。
25[日] 田中明彦:「民主主義国、連帯で優位に専制中国との競争」、『毎日新聞』2021年5月13日;[日] 神谷万丈:「対中民主主義の優位性示せ」、『産経新聞』2021年1月18日。
26[日] 甘利明、金子将史:「『経済安全保障』時代に勝つ日本」、『Voice』2020年6月号;「菅外交の課題-自由で開放的な秩序を目指せ」、『読売新聞』2021年1月7日。
27刘星:《后疫情时代中日安全关系的复杂性与风险》,《日本研究》2021年第2期。
28[日] 北岡伸一等:「中国を国際秩序の中に」、『日本経済新聞』2021年5月5日;[日] 神谷万丈:「中国重視でも『抗中』が必要だ」、『産経新聞』2020年12月2日。
29[日] 川島真:「米中対立と日中関係」、『東亜』2020年4月号。
30[日] 森本敏:「日米政変-米中対立の今こそ日本の主体性を示せ」、『中央公論』2020年11月号。
31[日] 北岡伸一:「対中安保戦略-『守るだけ』から転換必要」、『読売新聞』2021年5月10日;[日] 高原明生:「日中の基本原則を捉え直す機会に」、『外交』2020年3-4月号。
32[日] 神谷万丈等:「緊急提言:日米の対中戦略の基本原則」、日本国際フォーラム、2021年7月21日。https://jfir.or.jp/j/activities/studygroup/2020/usa/210721_prj.pdf.
33[日] 北岡伸一、森聡:「ミサイル防衛から反撃力へ」、『中央公論』2021年4月号;[日] 渡部恒雄:「強権中国の野望-尖閣防衛、喫緊の課題」、『中央公論』2021年5月号。
34[日] 佐橋亮:「米中対立と日本 :関与から戦略的競争に移行するアメリカを中心に」、『国際問題』2020年1-2月号。
35[日] 北岡伸一:「外交·安全保障で果断に実現すべきこと新政権に求められる『継続の中の改革』」、『中央公論』2020年11月号。
36[日] 佐々江賢一郎:「菅流政治検証半年:対米外交出だし上々」、『読売新聞』2021年4月1日;[日] 白石隆:「米中対立時代、日本の生存戦略」、『中央公論』2020年5月号。
37[日] 高原明生、中西寛:「米中対立下の自由で開かれたインド太平洋:戦略的競争と経済協力の共存へ」、『外交』2020年11-12月号;[日] 添谷芳秀:「日本のインド太平洋外交と近隣外交」、『国際問題』2020年1-2月号。
38[日] 細谷雄一:「国際協調主義の推進こそ日本外交の針路」、『公明』2020年2月号。
39[日] 小谷哲男:「中国の『九つの門』とインド太平洋地域の海洋安全保障:日本の課題」、『国際問題』2019年12月号;[日] 神保謙:「インド太平洋の安全保障:戦略空間としての収斂」、『国際問題』2019年12月号。
40「新時代の日米(中):有事にらみ危機感共有」、『日本経済新聞』2021年4月20日。
41卢昊:《后安倍时代的中美日三边关系》,《日本学刊》2020年第5期。
42根据笔者2021年7月与日本国际协力银行北京代表处首席代表北川善彦的访谈内容。
43[日] 赤堀毅:「国益最大化のための経済安全保障外交」、『外交』2020年3-4月号。
*声明:本文仅代表作者个人观点,不代表本公众号立场
政治学与国际关系论坛
为了更好的服务数字中国建设,服务“一带一路”建设,加强数字经济建设过程中的理论交流、实践交流。来自中国数字经济以及“一带一路”建设领域的专家学者们成立了数字经济智库,为数字中国的建设添砖加瓦。商务部原副部长魏建国担任名誉院长,知名青年学者黄日涵、储殷等领衔。政治学与国际关系论坛是数字经济智库旗下的专门平台。
注:本文为国家金融与发展实验室(NIFD)2021年人民币汇率年度报告,首发于NIFD公众号,转载请务必注明出处。文中配图摄于平武县虎牙乡上游村。
摘要
■2021年人民币汇率呈现强势升值态势。2020年12月31日至2021年12月31日,人民币兑美元汇率中间价由6.5249上升至6.3757,总体上升值了2.3%。同期内人民币兑欧元和兑日元汇率分别升值了10.0%和12.4%。
■2021年下半年,在美元指数上升的背景下,人民币兑美元汇率依然走强。这主要受三方面因素推动:一是中国出口增速继续保持强劲,带动货物贸易顺差创出阶段性新高;二是新冠疫情后中国经济复苏早于其他国家,且长期利率显著高于主要发达经济体,导致中国对短期资本流动的吸引力较强;三是中国外汇储备规模稳中有升,增强了国内外投资者对人民币汇率的信心。
■2022年,考虑迭创新高的通货膨胀,美联储将会加快退出量化宽松政策,预计在2022年3月首次加息。中国货币政策仍将坚持“以我为主”,可能会呈现出稳中有松态势。中美两国货币政策分化加大,这很可能导致人民币兑美元汇率由升转贬。
■2022年,10年期美国国债收益率将会重返2.0%以上,甚至可能上探至2.4-2.5%。美元指数有望在94-102的区间内高位盘整。人民币贬值压力将会有所上升,人民币兑美元汇率可能贬值至6.5-6.6附近,总体在6.4-6.6的区间波动。
报告正文
? 人民币兑美元汇率
2021年,人民币兑美元汇率呈现出波动中升值态势(见图1)。2020年12月31日至2021年12月31日,人民币兑美元汇率中间价由6.5249上升至6.3757,总体上升值了2.3%。2021年12月9日,人民币兑美元汇率升至年内最高点6.3498,相较于2020年5月29日,人民币兑美元汇率升值了11%。
2021年,人民币兑美元汇率的运动大致可以划分为如下两个阶段:第一个阶段是2020年12月31日至2021年9月30日,人民币兑美元汇率与美元指数之间呈现显著的负相关性。在这个阶段内,当美元指数下行时,人民币兑美元汇率升值,反之亦然。第二个阶段是2021年9月30日至2021年年底,人民币兑美元汇率与美元指数呈现出双双上涨格局。2021年9月30日至2021年12月31日,美元指数由94.2638 上升至95.9701 ,升值了1.8%;同期内,人民币兑美元中间价则由6.4854上升至6.3757,升值了1.7%。
2021年,人民币兑CFETS货币篮子指数整体上呈现出了持续上涨的趋势。2020年12月31日至2021年12月31日,人民币兑CFETS货币篮子指数由94.84上升为102.47,总体上升值了8%。2021年12月10日,人民币兑CFETS货币篮子指数高达102.86,创2015年12月以来的新高(见图1)。在2022年人民币兑美元汇率走势的第二阶段,即在美元指数走强的背景下,人民币兑美元汇率继续升值。这意味着人民币兑一篮子货币的有效汇率升值得更快。2021年9月30日至2021年12月31日,人民币兑CFETS货币篮子汇率指数由99.64上升至102.47,升值了2.8%。
图1 人民币兑美元汇率走势
数据来源:Wind。
? 人民币兑欧元汇率
2021年,人民币兑欧元汇率走势表现出在波动中升值的态势(见图2)。2020年12月31日至2021年12月31日,人民币兑欧元汇率中间价由8.0250上升至7.2197,总体上升值了10%。
人民币兑欧元汇率走势大致可以划分为如下二个阶段:第一个阶段是2020年12月31日至2021年11月26日,在这个阶段内,人民币兑欧元汇率表现出在波动中升值的态势,总体上升值了10.7%;第二个阶段是2021年11月26日至2021年年底,在这个阶段内,人民币兑欧元汇率在7.1至7.2的区间内微幅波动。
图2 人民币兑欧元汇率走势
数据来源:Wind。
? 人民币兑日元汇率
2021年,人民币兑日元汇率走势呈现出在波动中升值的态势(见图3)。2020年12月31日至2021年12月31日,人民币兑日元汇率中间价由6.3236上升至5.5415,年内总体升值了12.4%。
2021年,人民币兑日元汇率的运动大致可以划分为如下三个阶段:第一个阶段是2020年12月31日至2021年6月4日,在这个阶段内,人民币兑日元汇率表现出升值的趋势,总体上升值了8.1%;第二个阶段是2021年6月4日至2021年9月22日,在这个阶段内,人民币兑日元汇率呈现出小幅波动特征,人民币兑日元汇率在5.8至5.9的区间内小幅波动;第三个阶段是2021年9月22日至2021年年底,在这个阶段内,人民币兑日元汇率转为快速升值趋势,该阶段总体涨幅为6.4%。
图3 人民币兑日元汇率走势
数据来源:Wind。
笔者在2021年三季度人民币汇率分析报告《警惕中美增长差反转的潜在负面影响》一文中,基于中美经济增速差异、中美通货膨胀差异、中美货币政策差异、中美长期利率变动四个维度,分析2021年四季度人民币汇率走势。笔者预测,受中美经济增长差反转影响,预计到2021年四季度末,美元指数可能呈现温和走强的趋势,总体上在93-95的区间内运行;人民币兑美元汇率可能贬值至6.5-6.6附近,总体在6.4-6.7的区间波动。
从现实情况来看,美元指数的走势基本符合笔者预期。美元指数从2021年10月1日的94.0747上涨至2021年12月31日的95.9701。2021年四季度,美元指数显著上升的最重要原因,是在史无前例的扩张性政策刺激下,近期美国国内通货膨胀率迭创新高,美联储不得不开始货币政策正常化。货币政策正常化无疑会导致美国短长期利率上行,从而推动美元指数上升。
当美元指数上行时,人民币兑美元汇率通常会贬值。但人民币兑美元汇率走势并未按照笔者推演的逻辑发展。2021年四季度,在美元指数上行的背景下,人民币兑美元汇率仍保持升值状态。笔者认为,这背后有如下三方面原因。
原因之一:在2021年下半年,中国出口增速继续保持强劲,带动货物贸易顺差创出阶段性新高,而贸易顺差推动了人民币汇率走强(见图4)。2021年8月至10月,按美元计价的中国出口月度同比增速连续3个月超过25%,这3个月的货物贸易顺差不断攀升,分别为584、668与845亿美元。845亿美元甚至创下了有史以来中国月度货物贸易顺差的新高。事实上,2021年上半年,由于基期效应,中国出口就已经出现超高速增长。原本市场预期,2021年下半年出口增速会显著回落,但受全球疫情再度加剧,尤其是东南亚地区疫情显著加剧的影响,中国出口的不可或缺性再度增强,从而推动出口增速持续保持强劲。据WTO统计,2021年,中国出口在全球出口中的份额大幅提升,比例高达16.7%。2021年,中国年度出口高达3.36万亿美元,远超过美德两国出口份额之和(约为3.24万亿美元)。2021年,中国高景气的对外部门、稳健的国际收支格局,为银行间市场积累了充裕的美元流动性,外汇市场人民币需求旺盛,较强的结汇需求主导了人民币汇率的强势走势(魏伟和郭子睿,2022)。
图4 人民币实际有效汇率指数与中国出口同比增速
数据来源:Wind。
原因之二:由于新冠疫情后中国经济的复苏早于其他国家,且中国长期利率显著高于主要发达经济体,导致中国对短期资本流动的吸引力较强。货物贸易顺差加上跨境资本流入,使得总体上中国面临跨境资本净流入。例如,2021年7月至9月的银行代客结售汇顺差分别为129、181与268亿美元,3个月累计578亿美元,显著高于2020年同期的107亿美元以及2019年同期的-132亿美元。在2021年12月,银行代客结售汇顺差更是高达516亿美元(见图5)。跨境资本净流入意味着国内外汇市场上美元供过于求,这也会推动人民币兑美元汇率的升值。
图5 银行代客结售汇顺差
数据来源:Wind。
原因之三:中国外汇储备规模稳中有升,增强了国内外投资者对人民币汇率的信心。2017年至2020年,中国外汇储备的月度平均规模分别为3.07、3.11、3.10、3.13万亿美元(见图6)。2021年1月至10月,中国外汇储备的月度平均规模达到3.21万亿美元,显著高于之前数年的平均水平。尤其值得一提的是,由于2021年年初至今美元指数总体走强,这会对中国外汇储备形成负向估值效应。在这一背景下,2021年12月中国外汇储备规模高达3.25万亿美元,这是自2016年1月以来的新高,这说明外汇储备的流量增长可能更快。
图6 中国外汇储备规模
数据来源:Wind。
判断下一阶段人民币汇率走势需对比中美经济基本面和中美货币政策走向,并考虑全球不确定性因素的扰动。下文将从中美经济增速差异、中美通货膨胀差异、中美货币政策差异、中美长期利率变动、全球不确定性因素等五个方面,分别进行分析。
? 中美经济增速差异
2021年美国GDP增速为5.7%,中国GDP增速为8.1%。余永定(2022)指出,如果扣除基数效应,中国2021年的经济是运行在低于2019年6%的水平。2022年1月,IMF最新一期《世界经济展望》将美国2022年GDP增速从5.2%下调至4%,这主要是考虑到美国国会通过“重建美好未来”法案一揽子财政措施的可能性下降,当局更早退出非常规宽松货币政策,以及经济面临持续的供给扰动。同时,IMF考虑中国房地产部门持续收缩,且私人消费的复苏弱于预期,将中国2022年的GDP增速从5.6%下调至4.8%。
2021年,美国季度GDP同比增速分别为0.5%、12.2%、4.9%和5.5%。中国季度GDP同比增速分别为18.3%、7.9%、4.9%和4.0%。对比而言,在二季度,美国季度GDP同比增速已超过中国;在三季度,美国GDP增速和中国GDP增速基本持平;在四季度,美国GDP增速好于中国GDP增速(见图7)。
图7 中美季度GDP同比增速
数据来源:Wind。
? 中美通货膨胀差异
2021年,美国通货膨胀率持续走高(见图8)。2021年1月至2021年12月,美国CPI由1.4%快速上升至7%,这是美国自1982年7月以来的最高通胀水平。同期内,核心CPI当月同比增速从1.4%上升至5.5%。美国通货膨胀率快速攀升的原因有三:一是由于美国的宏观政策刺激偏向于需求面(例如财政大规模向中低收入家庭发钱),导致美国国内需求面的复苏显著快于供给面。二是全球疫情大暴发导致大宗商品供应与远程运输能力显著下降,推升了全球大宗商品价格。三是在美国经济增速已经显著复苏的前提下,美国政府的财政货币政策化明显滞后。随着美国通货膨胀率迭创新高,美联储不得不开始货币政策正常化。
图8 美国CPI和核心CPI
数据来源:Wind。
2021年,中国通货膨胀率整体可控,CPI增速仍处于低位(见图9)。2021年1月至2021年12月,中国CPI同比增速从-0.3%上升至1.5%。中国CPI走势基本符合笔者在2021年三季度人民币汇率分析报告中的预期。
2021年,中国PPI走势触顶回落,但回落速度不及笔者预期。2021年1月至2021年12月,中国PPI同比增速从0.3%飙升至10.3%。在2021年10月,中国CPI与PPI同比增速分别上涨至1.5%与13.5%,两者之间的缺口达到历史性峰值。导致中国PPI同比增速飙升的主要原因是全球大宗商品价格的上涨。目前,不少品种的大宗商品价格已经创下历史性新高。全球大宗商品价格上涨给大宗商品进口国造成了显著的输入性通货膨胀压力。2021年,国内大宗商品价格总指数、能源类价格指数、钢铁类价格指数与农产品价格指数都创出历史性新高。2021年10月中国进口价格指数同比增速高达17.0%。
笔者认为,2022年大宗商品价格再创新高的概率,会显著低于高位回落的概率。尤其是那些金融资本深度炒作的大宗商品品种,在2022年的价格将面临较高的波动性。为此,未来一段时间的物价走势将会呈现出中国CPI同比增速温和回升、PPI同比增速回落的格局。
图9 中国CPI和PPI
数据来源:Wind。
? 中美货币政策差异
美联储开始退出量化宽松政策。新冠疫情暴发后,美国政府实施了史无前例、极其宽松的财政货币政策。在财政政策方面,2020年,联邦政府财政赤字占GDP比率达到14.9%,显著高于次贷危机暴发后2009年的9.8%。2020年,联邦政府债务占GDP比率上升了24.3个百分点,达到132.5%。在货币政策方面,除再次实行零利率外,美联储还实施了规模巨大的量化宽松政策。在不到两年时间内,美联储资产负债表的总规模翻了一倍以上,从4万亿美元逼近9万亿美元。在宽松政策刺激下,美国通货膨胀形势显著恶化。尽管通胀率在2021年上半年就开始显著上升,但美联储认为这仅是暂时性扰动,随着生产的复苏以及供给需求缺口的消失,通胀率自然会下行。然而,通胀率在2021年下半年的持续快速上升所引发的各方面压力,还是导致美联储不得不在2021年11月初做出政策修正,宣布开始缩减量化宽松规模。罗志恒和方堃(2022)指出,美联储加息抗通胀,不仅是经济诉求,还有政治压力;通胀问题困扰拜登政府,民意支持率创新低,拜登政府将积极支持美联储加息抗击通胀。从2021年11月起,美联储在每个月缩减购债150亿美元,这意味着美联储在2022年6月末停止量化宽松。2022年1月,美联储又宣布将会加快缩减购债速度,在2022年3月完成Taper,基本明确开启加息。张瑜和殷雯卿(2022)指出就当前美联储关注的通胀与就业缺口来看,2022年具备加息3次的条件。
美联储退出量化宽松货币政策的真实速度将给2022年全球经济带来不确定性。从历史上来看,每当美联储进入货币政策紧缩的周期后,新兴市场与发展中国家都会面临短期资本大量外流、本币汇率面临贬值压力、国内风险资产价格下跌、本国经济增速放缓的不利冲击。在严重的情形下,甚至可能引发货币危机、债务危机、金融危机甚至经济危机。如果美联储收紧货币政策的速度超出市场预期,那么新兴市场与发展中国家面临的外部负面冲击将会更加猛烈。以史为镜,在2022年与2023年,美联储新一轮货币政策正常化可能让部分新兴市场经济体遭遇严重负面冲击。而对那些经常账户持续逆差、举借了大量外债、严重依赖资本流入的国家而言,冲击将尤其严重。
对中国经济而言,2021年中国经济增速前高后低,货币政策基于2021年上、下半年经济形势变化,强化了跨周期调节(孙国峰,2022)。2022年7月和12月,中国央行实施两次全面降准各0.5个百分点。考虑到中国当前整体通胀形势可控,物价并非货币政策加快正常化的理由。2022年,中国央行将坚持稳字当头、稳中求进,切实担负起稳定宏观经济的责任,主动推出有利于经济稳定的货币政策(孙国峰,2022)。考虑到2022年中国经济GDP增速还有较大下行压力,中国货币政策可能会呈现出稳中有松态势。
? 中美长期利率变动
美联储退出量化宽松政策可能导致美债收益率上升、美元指数仍可能高位盘整。在新冠疫情暴发后,10年期美国国债收益率一度下降至0.5%左右的历史性低点。截至2021年12月下旬,该指标已经反弹至1.5%。在2013年美联储上一次Taper期间,10年期美国国债收益率曾经由1.5%左右反弹至3%以上,之后再度回落。随着美联储在2015年至2018年不断加息,10年期美国国债收益率再度反弹至3.0%以上。笔者认为,在2022年,美联储退出量化宽松将使10年期美国国债收益率重返2.0%以上,甚至可能上探至2.4-2.5%。这意味着美国债券市场将面临一定的下行压力。新冠疫情暴发后,美元指数先是摸高至103,随后下跌至90附近,之后在2021年下半年反弹至目前的96-97左右。笔者认为,2022年,考虑到美联储的货币政策正常化,美元指数有望在94-102的区间内高位盘整。
与美债收益率上行形成鲜明对比的是,10年期中国国债收益率在2021年呈现波动中下降的趋势(见图10)。2021年1月4日至2021年12月31日,10年期中国国债收益率从3.1713%下降至2.8352%,下降了33个基点。同期中美10年期国债收益率利差从2.2413%收窄至1.3152%。伴随着中国央行在2021年12月以来的加息节奏,10年期中国国债收益率在2022年1月25日更是一度降至2.6938%。中美利差缩小会影响到短期跨境资本流动,进而影响人民币汇率交易需求,从而影响到人民币汇率走势。短期来看,中国会面临一定的资本外流的压力。
图10 中美利差
数据来源:Wind。
? 全球不确定性因素
除了美国货币政策转向将给全球经济带来不确定性之外,2022年全球经济增长还将受到两大不确定性因素的扰动,这将增加人民币汇率未来变动的不确定性。
不确定性之一,新冠疫情的持续时间与强度再度超出预期。在2021年年初,随着全球范围内有效疫苗的推出,市场普遍认为,到2021年下半年,疫情将会得到全面控制。但没有想到的是,在2021年,新冠病毒的变种德尔塔(Delta)再次肆虐全球,导致全球疫情防控形势重新变得严重。2021年底,在南非发现了新冠病毒的最新变种Omicron。WHO数据显示,截至2022年1月初,Omicron已经蔓延至少128个国家。相关研究表明,与之前的毒株相比,Omicron更会躲避抗体,对现有疫苗具有更强的抗药性。从目前来看,2022年新冠疫情的全球演进形势并不乐观,对疫苗注射进度滞后的发展中国家(尤其是非洲国家)而言更是如此。如果新冠疫情继续肆虐,那么2022年的全球经济增速就可能不及预期。
不确定性之二,全球地缘政治风险上升。2021年,新冠疫情危机持续的背景下,全球地缘政治风险在加剧。从地缘政治风险指数来看,2021年7月至12月,全球地缘政治风险指数从59.16快速上升至99.99(见图11)。2021年,中美摩擦、哈萨克斯坦内乱、美军撤离阿富汗等都增加了全球地缘政治风险。2022年需要特别关注俄乌冲突和中美摩擦的演变。就俄乌冲突而言,若俄乌冲突在2022年升级,不仅会破坏地区安全局势,还将波及全球能源供给和能源转型,并对中东欧、中亚国家外交政策带来连锁反应(中国社会科学院世界经济与政治研究所,2022)。就中美摩擦而言,拜登政府在2021年延续了特朗普政府的对华政策,把中国视作美国最大的挑战者和竞争者,逐步采取扩大对华高科技制裁等措施压制中国(高剑波等,2022)。美国对外关系委员会副主席香农·奥尼尔(Shannon K. O'Neil)指出,地缘政治和政府行动主义是影响下一阶段全球化的主要因素,而不是贸易、投资或病毒传播,中美政治紧张局势的恶化还将持续。
图11 全球地缘政治风险指数
数据来源:http://www.policyuncertainty.com/gpr.html。
展望未来,2022年,美联储退出量化宽松货币政策将使得10年期美国国债收益率重返2.0%以上,甚至可能上探至2.4-2.5%。这意味着美国债券市场将面临一定的下行压力。随着美联储货币政策正常化的推进,美元指数仍有一定的温和上升空间。笔者认为,2022年美元指数有望在94-102的区间内高位盘整。
考虑到目前人民币兑CFETS货币篮子指数已经处于自2015年12月以来的新高,预计下一阶段人民币有效汇率继续升值的空间较为有限。如果在美联储持续收紧货币政策的外部环境下,为了提振国内经济增长与防控系统性金融风险,中国货币政策出现边际放松的话,那么人民币兑美元汇率有望温和回落。笔者预计,2022年,人民币兑美元汇率可能贬值至6.5-6.6附近,总体在6.4-6.6的区间波动。
*请认真填写需求信息,我们会在24小时内与您取得联系。