English      中文

搜索页
首页 / Events
海外市场
全球小麦海运进口保持回升
发布时间:2023-06-26 发布者:管理员

  小麦作为全球产量仅次于玉米的第二大粮食作物,有着广泛的市场需求和播种范围,也因此成为国际贸易中的重要商品。用小麦生产的面粉是许多国家重要的原料,一旦出现供给不足将可能造成较为严重的粮食危机。在冷链运输的支持下,跨国乃至洲际的小麦运输在技术上都不难实现。按照WTO的统计,来自于国际贸易的小麦是市场需求的重要来源,约支撑了四分之一的供给量,而其中又有80%的小麦国际贸易是通过海洋运输完成的。对于粮食净进口国而言,占比还要更高。因此,保持海路运输的通畅,对于满足全球市场需求,减少粮食危机的风险十分重要。WTO与国际谷物理事会(IGC)联合开发了新的监测平台,通过港口数据提供有关小麦海运的数据(包括每月更新两次的汇总数据和反映短期贸易变化的实时数据),为食品安全和供应链风险防范提供支持。

  数据显示,5月的下半月,全球小麦的海运继续保持强劲势头,抵达监测港口的小麦约有770万吨,比去年同期高40%,也比过去3年的平均水平高三分之一。地缘政治冲突对全球粮食市场造成了巨大冲击,对于粮食净进口国的影响尤为明显。但伴随全球小麦供应增加、市场竞争加剧,以及黑海粮食协议生效,加之海运物流成本伴随油价和运力过剩出现明显下降,全球海上贸易流量自2022年底开始加速。在进出口国别分布上,俄罗斯出口了300万吨,是最大的小麦出口国。澳大利亚排名第二,出口超过200万吨。再往后为加拿大(140万吨)、美国(80万吨)、乌克兰(50万吨)和法国(40万吨)。而这一监测期间全球海运小麦的净进口国主要为中国、印度尼西亚、阿尔及利亚、埃及和西班牙。这些主要小麦贸易国的进出口需求因其规模巨大而对全球小麦物流网络的影响更为明显,也在一定程度上保障了生产商的利益和消费市场的粮食安全。

  WTO预计,2023年全球小麦的海运进口量将达到1.4亿吨,比上年略高5%。不过,小麦进口的复苏是不均匀的,气候变化和市场消费需求等因素对进口规模产生较为明显的影响。非洲部分地区、南亚和东南亚、拉丁美洲和加勒比地区的进口量下降,西亚、东亚、北非、欧洲和大洋洲的进口量增加。

  北非地区小麦歉收,需要通过进口弥补市场缺口。5月下半月的进口量达190万吨,将近去年同期的两倍。2022年7月到2023年6月销售年度的进口量约为2900万吨,同比增长9%。表现在具体国别上,北非的阿尔及利亚、摩洛哥和突尼斯的小麦进口量增长较快,埃及有所下降。西亚的小麦海运进口也表现强劲。今年前5个月的进口量比去年同期高出42%,比上一季度高出四分之一,而且这一趋势预计还将继续。西亚和北非小麦海运进口主要来自俄罗斯,今年前5个月的进口量分别为170万吨和160万吨。相比而言,西非、东非和中非的小麦进口量则显著低于上一季度的水平。东非的小麦进口量在吉布提下降明显,而这里进口的小麦主要是运往埃塞俄比亚。埃塞当地小麦收成不错,在一定程度上减少了进口需求。东非的马达加斯加、肯尼亚的小麦进口也低于上一季度,但索马里和坦桑尼亚略有增加。西非的尼日利亚、加纳、利比里亚和多哥的小麦海运进口减少,且减少的规模超过了科特迪瓦和几内亚增加的规模。加勒比海国家的小麦进口量在5月快速增长,对古巴、海地、特立尼达和多巴哥的增长最快,但比去年仍低16%。南亚的小麦海运进口量的减少主要受到伊朗的影响,近几个月伊朗的港口卸货出现较长延误,对小麦进口造成影响。一些东南亚和中非国家的小麦海运时间最长,印度尼西亚和菲律宾的小麦进口量增加较快。西亚国家则在沙特和土耳其小麦进口的快速增长带动下比上年同期增长了25%。

  值得注意的是,小麦的进出口量与各方相关交易的价格有着明显的关系。除了实际市场供需关系以外,国际投资者利用小麦作为金融投资标的的行为,以及主要货币币值的变化对国际市场的小麦价格也产生着直接而重要的影响。

  来源:国际商报,作者:周密,商务部研究院研究员

FreeMarker template error (DEBUG mode; use RETHROW in production!): Java method "com.jltech.utils.WebFreemarkerUtils.getUrl(String)" threw an exception when invoked on com.jltech.utils.WebFreemarkerUtils object "com.jltech.utils.WebFreemarkerUtils@42953744"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign messageUrl = utils.getUrl("zx... [in template "main/_footer.ftlh" at line 1, column 1] - Reached through: #include "./_footer.ftlh" [in template "main/cont_news.ftlh" at line 91, column 7] ---- Java stack trace (for programmers): ---- freemarker.core._TemplateModelException: [... Exception message was already printed; see it above ...] at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:292) at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:264) at freemarker.ext.beans.OverloadedMethodsModel.exec(OverloadedMethodsModel.java:66) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.Assignment.accept(Assignment.java:134) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.include(Environment.java:3139) at freemarker.core.Include.accept(Include.java:171) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at org.springframework.web.servlet.view.freemarker.FreeMarkerView.processTemplate(FreeMarkerView.java:447) at org.springframework.web.servlet.view.freemarker.FreeMarkerView.doRender(FreeMarkerView.java:351) at org.springframework.web.servlet.view.freemarker.FreeMarkerView.renderMergedTemplateModel(FreeMarkerView.java:302) at org.springframework.web.servlet.view.AbstractTemplateView.renderMergedOutputModel(AbstractTemplateView.java:181) at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:314) at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1438) at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1168) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1106) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:110) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:110) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:110) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:610) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:392) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:321) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:266) at com.jltech.core.interceptor.MyInterceptor.preHandle(MyInterceptor.java:187) at org.springframework.web.servlet.HandlerExecutionChain.applyPreHandle(HandlerExecutionChain.java:146) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1084) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138) at org.springframework.web.servlet.resource.ResourceUrlEncodingFilter.doFilter(ResourceUrlEncodingFilter.java:66) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:165) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:88) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:113) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:83) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:72) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:903) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1774) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:973) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:491) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) at java.base/java.lang.Thread.run(Thread.java:840) Caused by: com.jltech.core.exception.JlRuntimeException: 没有找到对应的路由缓存项 at com.jltech.utils.cache.RouterCacheUtil.getAccessRouter(RouterCacheUtil.java:127) at com.jltech.utils.WebFreemarkerUtils.getUrl(WebFreemarkerUtils.java:320) at com.jltech.utils.WebFreemarkerUtils.getUrl(WebFreemarkerUtils.java:330) at jdk.internal.reflect.GeneratedMethodAccessor142.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.ReflectionCallableMemberDescriptor.invokeMethod(ReflectionCallableMemberDescriptor.java:56) at freemarker.ext.beans.MemberAndArguments.invokeMethod(MemberAndArguments.java:51) at freemarker.ext.beans.OverloadedMethodsModel.exec(OverloadedMethodsModel.java:62) ... 87 more