首先向各位读者诚恳致歉。上周我们的“产业链套利逻辑”夜报,出了3个错误,造成回测错误,规则错误,性能虚高等问题。通过今天的文章重新勘误,逐一解决错误,放出正确版本,增加更多套利配对,供各位读者参考。并通过本文发现直接复现研报带来的问题,思考探讨产业链套利的局限性和风险。
一、部分产业链套利逻辑
结合多种资料和我们对产业链粗浅的理解,重新整理这部分知识供大家参考补充。量化在产业链中,仅是一个能力有边界的分析工具,深耕产业链,寻找价格波动的原因,才是最重要的议题。本节仅作一点简单的解读。
1、钢厂利润
钢厂利润是我们绕不过的第一个产业链,钢材的生产原料包含铁矿石、焦炭为主,我们简单标注下图后,可以看清炼钢产业链的构造关系。
钢材生产流程大致分为三个阶段,分别为炼铁、炼钢和轧钢,生产成本主要包括原料成本、能源成本、人工成本、折旧和财务成本等。从原材料上来看, 生产1吨螺纹钢大致需要1.6吨铁矿石和0.5吨焦炭。
钢厂高炉被戏称为是“印钞机”,尤其是近两月以来吨钢的实际盈利普遍在1000元/吨以上,去年秋季,螺纹现货的利润在1200元/吨以上,热卷不到600元/吨,而2015年一度亏损,所以钢厂利润是中低频套利的重点捕捉对象。
螺纹钢期货价格=1.6*铁矿石期货价格+0.5*焦炭期货价格+其他成本
我们查阅不同的资料,发现其铁矿石系数大致都是1.6,焦炭系数大致都是0.5左右,加之其他固定开支稳定,所以可以在构造虚拟钢厂利润为:
钢厂利润 = 螺纹期货价格 – (1.6*铁矿石期货价格+0.5*焦炭期货价格)
2、焦化利润
黑色链条中包括这部分,炼焦是指焦煤在隔绝空气条件下加热到1000℃左右(高温干馏),通过热分解和结焦产生焦炭、焦炉煤气和其他炼焦化学产品的工艺过程。
通过两者价比可以观察到,虽然前期两者在1.5左右波动,但是这两年来,两者价格比值并不稳定。
参考一般的炼焦工艺,再结合上图,平均1.2~2吨炼焦煤加工产生1吨焦炭和若干副产品。东方证券《商品期货套利策略实证》研报最终确定炼焦利润的公式为:
炼焦利润=焦炭期货价格-1.4*焦煤期货价格-其他成本
2017年开始,影响双焦的主导力量由供给端逐步转至需求端,拉动双焦期价重心上移和焦化利润扩张的核心因素在于钢厂利润的攀升。从资源和需求的角度分析,焦煤是自然资源,挖一点就会少一点,属于稀缺资源,也是炼焦必不可少的基本原料。焦炭是加工产成品,和自然资源不同,理论上供应量是人为可控的。焦炭的需求刚性远远低于焦煤。
3、甲醇MA制造聚丙烯PP利润
聚丙烯(PP)可以说是我们每个人“身边的塑料”。资料显示:聚丙烯来自于原油,属石油化工的下游产业,基本流程为:石油——石脑油——丙烯——聚丙烯。
甲醇既可自用又可外售的特征是甲醇制 PP 套利可行的重要原因。在无套利机会的情况下可以得到如下等式:
聚丙烯期货价格=3*甲醇期货价格+800
而近年来国内的煤制烯烃产业同样可以生产聚丙烯,其基本工艺流程为:煤炭——煤化气(一氧化碳与氢气混合气体)——甲醇——丙烯——聚丙烯。
4、鸡蛋利润
鸡蛋价格一般由产蛋成本决定。该成本较为稳定,但是也有一些自然灾害和政策变化等不确定性。蛋鸡养殖的主要成本包括鸡苗、饲料、水、电、人工和防疫等费用。
图片来自:百度文库 蛋种鸡饲料配方
蛋价盈亏平衡点 = (总成本-淘汰鸡收入-鸡粪收入)÷产蛋量。
其中可以在期货市场模拟的总成本,大致是一斤饲料的价格=0.62*玉米价格 + 0.31*豆粕价格+ 0.175。依据鸡蛋的盈亏平衡点计算公式和饲料价格的公式,可以得出联系期货价格的等式。
鸡蛋盈亏平衡点(元/吨) = 2.02864*玉米(元/吨) + 1.01432*豆粕(元/吨) + 437.2
5、大豆提油利润
大豆提油是最常见的产业链套利,大豆提油套利的做法:购买大豆期货合约的同时卖出豆油和豆粕的期货合约,当在现货市场上购入大豆或将成品最终销售时再将期货合约对冲平仓。
大豆可以生产出豆油和豆粕的比例是相对固定的,即我们通常所说的大豆压榨提油率
1吨大豆≈0.185吨豆油+0.78吨豆粕
当1吨大豆的价格远低于0.185吨豆油的及0.78吨豆粕的价格之和时,压榨大豆有很大利润空间,现货商会大量压榨,最终大量买入大豆压榨使得大豆价格提高,而豆油豆粕产量大增,供求充足,价格下跌,直至大豆豆油豆粕价差合理;
当1吨大豆的价格远高于于0.182吨豆油的及0.8吨豆粕的价格之和时,压榨大豆没有有利润空间,甚至亏本,现货商不会再压榨大豆或直接交易大豆,最终大豆供应宽松,价格下跌,豆油豆粕供应紧张,需求旺盛价格上涨,直至大豆豆油豆粕价差合理。
东方证券《商品期货套利策略实证》研报最终给出的公式是:
100%进口大豆=19.2%豆油+78.6%豆粕+2.2%损耗
因此,进口大豆压榨的利润公式可以根据美豆成本以及压榨的技术参数得出。
进口大豆压榨利润=豆粕价格*78.6%+豆油价格*19.2%-进口大豆到厂成本-其他费用
6、玉米淀粉加工利润
玉米淀粉是玉米的初加工产品,加工一单位玉米可以得到70%左右的玉米淀粉(另外其他副产品包括玉米蛋白粉6%、玉米皮13%、玉米胚芽油3%、玉米胚芽粕6%)。
根据智研咨询发布的《2017-2022年中国玉米淀粉市场供需预测及投资战略研究报告》,约1.4吨玉米(含14%水分)可以提取1吨的玉米淀粉。因此玉米淀粉的价格和玉米的价格有很强的正相关性,玉米淀粉和玉米价格之间的价差保持一定的稳定性。
淀粉加工利润(加工1吨玉米)=(淀粉收益+副产品收益)-玉米成本-加工费+加工补贴
中国玉米深加工产业链显示,玉米淀粉产业多元化,新增造纸、啤酒、食品等行业。淀粉糖上升成为玉米淀粉的主要产业,需求比从22%增加到62%,医药行业则从21%下降到了8.9%,出口的比例也大大的减少,只占到了 1%,说明目前我国的玉米淀粉主要是自产自用。
二、较为通用的模型构建方法与绩效
这部分大致有几个毕竟环节:
1、构造产业链利润曲线
通过期货价格模拟产业链利润,因为现货数据质量不稳定,且频率低,期货套利可以直接在期货市场寻找数据。但是并不是说期货作为唯一数据来源,现货利润等数据依然有很强的参考价值。
2、寻找趋势转折点
把握跨品种套利的机会,关键是抓住多个品种强弱关系的转换点,即利润曲线或者价比趋势转折点。
如果利润曲线是趋势波动,众多的趋势技术指标,比如常见的MA指标、MACD指标,都可以作为捕捉利润变化的趋势指标。如上图。
如果我们发现该序列是显著性的均值回复,也可以构造布林带,突破布林带上轨做空利润,突破下轨做多利润。
本次暂时完全复现东方证券《商品期货套利策略实证》研报,按照均值回复的思路构建布林带,而不是以静态的利润固定阈值做套利,模型辅以严格止损。
首先是利润计算部分,以炼焦利润为例(注意添加数据时,data0和data1一定不要出错):
其次是开仓手数部分(注意给予每个品种按照公式的头寸比例,比如焦炭是1.4倍,则焦炭开仓也是1.4倍焦煤的头寸):
然后是变量计算部分(这里推荐采用回穿模式,或者再辅助一个短期利润区县线性回归斜率,以判定是否上行或下行):
然后是交易开仓平仓部分(为了增强性能,我们发现屏蔽中轨平仓后,性能更好):
最后是止损部分(记得止损后不能立刻入场,尤其是大于小于模式,本模型使用了cross穿越模式):
我们测试了前文所述6个组合,得到组合后结果如下:
这个性能比起之前测试显得真实很多,且很多配对曲线非常不好看,利润来自于少数几次交易 ,完全不像是做套利应该有的较为平稳上升的曲线。这是让我们感觉第一个遗憾的地方。
更严重的问题还有参数,模型外部作为Params部分可以调节的参数有3个:
Numeric bolllength(20); // 布林带周期
Numeric uplimit(1); // 布林带宽度
Numeric stop_set(1); // 以保证金使用计算的硬止损
如果最后一个可以固定在0.5甚至更低,布林带宽度可以固定在1,我们还是没有办法发现一个公共最优区间针对第一个参数布林带周期,而这个参数对于性能影响巨大,这种套利模式是参数敏感的。
这还没有算上模型内部参数,比如到底焦煤期货价格前面的系数是1.4还是1.5,都会对整体产生影响。3个品种间套利,涉及到2个类似参数。所以这是需要改进的地方,需要引起足够警惕。甚至这也是我经常毙掉一些模型不能实盘的缘由。
三、产业链利润量化套利风险思考
除了模型中看得见的问题,还有很多看不见的问题,或者说模型中需要考虑引入的因素,比如:
1、利润价格序列的非回复性
类似的核心利润变量还有很多,我们发现这并不是理想的均值回复序列,很多甚至充满趋势性,或者无法把握其主要特征。我们在上周的文章也通过ADF检验,hurst检验,方差比率检验分析了几个利润曲线,结论基本上固定:其不是平稳序列,存在长期记忆性,随机游走(随机游走是非平稳过程的一种特例)。
焦化利润
炼钢利润
但是这个价格序列,在一定短周期内,又存在回复性如上图,所以通过参数优化虽然显得非常艰难,但是加入严格止损后,可以盈利。
2、其他成本变化未考虑
简单来说,模型假设其他变动费用为固定值,这也是存在问题的,缺乏实际产业链经验的我们也没有能力去估算其他部分利润,但是我们怀疑这里存在漏洞。
3、非正常利润生产维持能力(现货价格惯性)
由于工业生产惯性,工业企业竞争目的提前布局,产业资本博弈,开工率等更加复杂的传导因素,和国家储备政策的影响,很多产业链非正常的高利润或者低利润,甚至全行业亏损是会出现并维持的,有时候维持时间超乎想象(下图就是案例,农产品领域也有很多案例),所以仅从量化角度,固定或动态的反向做多做空利润,存在很多风险。
4、现货利润(期货因季节性和政策性等原因)
计算得到利润曲线后,分析的重点是期货跟着现货走,还是由于后续供需或政策预期,期货会预先反应市场预期。比如说一般在交割月前3个月开始,期货盘面会逐步紧跟现货,但之前,盘面利润未必和现货利润同向变化。
可能是由于我们的模型也缺乏更复杂的逻辑,所以本次测试性能并不十分理想,也有可能研报上手续费较低,我们采用了市场2倍甚至更多的手续费,当然也有可能我们没有领会研报的模型构成细节(某些金融工程领域的研报三个字评价,你懂的)。但是一切都要接近期货市场真实情况,接近市场参与者(特别是产业资本)实际特征,这样才能接近真相。
最后放出我们本次新的模型和工作区文件,为了简化建模过程和提升试错速度,均使用TB交易开拓者完成。不过尽管绩效不是十分好看,我却非常坚定地认为,这类模型能够建立和趋势动量模型的低相关性,是模型配置着重应该考虑的因素。
文章作者:芭蕉扇,如若转载,请注明出处:http://www.809030.com/yaowen/6504.html