位置: IT常识 - 正文

真题解析 | 2022数模美赛C题:股票投资策略(真题解析买谁的)

编辑:rootadmin
真题解析 | 2022数模美赛C题:股票投资策略 1、准备工作1.1 题目背景

推荐整理分享真题解析 | 2022数模美赛C题:股票投资策略(真题解析买谁的),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:真题解析英语怎么说,真题解析和逐词逐句,真题解析是什么意思,真题解析英语怎么说,真题解析中公和粉笔哪个好,真题解析 | 2021湖北专升本英语真题独家详解(单选题2),一造真题解析2022,真题解析 | 2021湖北专升本英语真题独家详解(单选题2),内容如对您有帮助,希望把文章链接给更多的朋友!

市场交易者频繁买卖波动性资产,目标是最大化其总回报。每次买卖通常都会有佣金。 两种这样的资产是黄金和比特币。

图 1:黄金每日价格,每金衡盎司美元。 资料来源:伦敦金银市场协会,2021 年 9 月 11 日

图 2:比特币每日价格,每比特币美元。 资料来源:纳斯达克,2021 年 9 月 11 日

要求

一位交易员要求您开发一个模型,该模型仅使用迄今为止的每日价格流来确定交 易员每天是否应该购买、持有或出售其投资组合中的资产。 2016 年 9 月 11 日,您将从 1000 美元开始。 您将使用五年交易期,从2016 年 9 月 11 日至 2021 年 9 月 10 日。 在每个交易日,交易者将拥有一个由现金组成的投资组合,黄金和比特币 [C, G, B] 分别以美元、金衡盎司和比特币表示。 最初的状态为 [1000, 0, 0]。 每笔交易(购买或销售)的佣金成本为交易金额。 假设 αgold = 1% 和 αbitcoin = 2%。 持有资产没有成本。 请注意,比特币可以每天交易,但黄金仅在市场开放日交易,定价数据文件反映 LBMA-GOLD.csv 和 BCHAIN-MKPRU.csv 这两点,你的模型应该考虑这个交易时间表。 要开发模型,您只能使用提供的两个电子表格中的数据:LBMA-GOLD.csv 和 BCHAIN-MKPRU.csv。(官网提供下载) • 开发一个模型,该模型仅根据当天的价格数据提供每日的最佳交易策略,使用你的模型和策略,在 2021 年 9 月 10 日,初始 1000 美元能收获的投资价值多少? • 提供证据证明您的模型提供了最佳策略。 • 确定策略对交易成本的敏感程度。 交易成本如何影响策略和结果? • 最多以一份备忘录(两页)的形式将您的策略、模型和结果传达给交易者

1.2 解题使用工具

语言:python3.8

编译器:SPSSPRO Notebook

下载链接:SPSSPRO Notebook(免费在线使用,推荐使用)

2、思路分析

首先,我们先整理和数据,因为比特币每天都开市,黄金有时间开市,有时间闭市,把他们整理成时间线对齐,可以用缺失值代表闭市日等等。

我们可以根据预测未来走势来对(买入或者出售或保持)这三种交易活动进行决策,因此,接着我们可以针对黄金、比特币进行时序预测,基于当天数据或以往数据去预测明天的价格走势,进而更好地做决策。

然后先针对第一天,基于预测的明天价格,构建一个目标规划,目的是实现已经知道第二日的价格后,如果投入才能实现当前交易日价格的最大化,其中交易的真实利益可以根据基于预测价格实施的投资策略后,通过真实第二天价格计算当天投资策略的盈利,然后重复这个过程,直到持有金额败光或者5年交易期结束,停止循环。

接着,对模型中出现的超参数进行灵敏度分析,例如设置了初始黄金的持有量是各500,如果调整这个比例,那么投资额度是否波动平稳?

3、解题流程框图

4、详细解题步骤4.1 详细求解步骤step1:数据合并

首先先把比特币和黄金的交易数据合并起来,通过简单的观察,以Date字段为关联字段,合并数据,采用merge连接,可以得到以下数据,可以看到,一共有1826行样本。

将合并后数据进行查看确实值,可以看到,黄金存在缺失值,且缺失了571个数值,这是因为比特币可以每天交易,但黄金仅在开市日交易导致的

step2:训练模型,进行时序预测

根据题目要求,开发一个模型,该模型仅根据当天的价格数据提供每日的最佳交易策略,因此,我们需要训练一个能基于当天数据预测第二天数据的时序模型。

对于时间序列问题,目前业界有两种求法:1、学术界常用计量统计模型,如arima模型、灰色预测模型、指数平滑等等,这类需要进行非常严格的模型检验

2、工业界统计模型,大多采用机器学习进行时间序列问题求解,例如lstm,xgboost等,通常做法也是2种,一种是单序列求解,将单序列转为多序列回归,另外就是构建特征工程,直接研究回归问题。

这里我们采用工业界模型,也就是机器学习时序预测,在这之前,我们需要了解一个数据处理的方法——时序数据滑窗转换。

时序数据滑窗转换用于将时间序列数据转为回归数据,简单地说,就是把一个单序列的数据变为X->Y的回归数据。步阶为2代表2个X(步阶多少就有多少个X),一个Y(这个不会变的),

简单地说,就是用第1,2天的数据预测第3天,用第2,3天的数据预测第4天,以此类推。

大家可以用spsspro的数据处理的时序数据滑窗转换实现

SPSSPRO-数据处理

时序数据滑窗转换

我这里也写了一个代码实现,只不过效率会差些。dataset, look_back

其中,dataset为数据集, look_back为步阶,如上图所示,为比特币步阶为1时的滑窗转换结果。

可以采用SPSSPRO的随机森林回归,使用起来也更简单,而且输出的结果和图表比较精美,这里建议大家多跑几个算法对比效果,推荐XGBooST、LGBM、随机森林回归这三项。

这里我采用代码采用随机森林对比特币进行时序数据训练进行示例,结果如下,可以看到,R2为0.994,拟合效果较为优秀。

同理,得到黄金的预测模型,注意黄金数据需要剔除缺失值,但是不要在原有数据上剔除。

真题解析 | 2022数模美赛C题:股票投资策略(真题解析买谁的)

接着,重复构建训练模型,用第1天的黄金、比特币数据预测第2天的黄金、比特币,用第1、2天的黄金、比特币数据预测第3天的黄金、比特币、用第1、2、3天的黄金、比特币数据预测第4天的黄金、比特币依次类推。

得到每天的预测数据,同时与真实的数据进行合并,整理得到以下表格。

step3:构建最优化模型,基于启发式算法寻优

在进行预测后,我们需要得到买入-出售-保持这样的交易策略,其中,黄金仅在开市日的交易,这说明在周末或者节假日,交易状态一定是持有,可以分别保留黄金和比特币的共同交易日数据来进行分析。假设黄金-比特币是同买同卖的,主要设计到的是一个收益率这样一个时间序列数据,比如,我们可以在任一一天进行买入,我们可以用(预测某天金子的价格/购买金子的实际价格-1)来得到收益率,当涨幅达到某个值的,建议卖出。

注意:初始状态为【1000,0,0】,并且每笔交易(购买或出售)的交易成本为交易金额的a%,其中黄金为1%,比特币为2%,那么,对于1000美金,买入卖出两个步骤,我们实际进行的交易金额只有940美金。

建立简单目标规划:

假设t是买入到卖出这段时间

由于买入-售出是在不断进行的,我们需要建立循环来进行运行。

为达到更加完美的结果,更贴合实际,可以添加金融风险性的分析,类似VaR、CVaR、又或者是信息熵的使用,在建立完美的投资模型后,我们可以用来优化算法来对权重进行寻优,比如粒子群法、遗传算法、免疫算法等等。

即:我们需要设定好目标函数,也就是每日收益的最大化,设立相关约束条件,求解规划求解结果,以及规划求解方程导出。

我们设置以下变量

变量设置

而我们的目标就是根据预测模型与限定的一些约束条件中,得到每天的最佳投资策略,然后重复这个过程,直到在 2021 年 9 月 10 日,初始 1000 美元能收获的投资价值多少?

可以简单设置一个规划模型:其中,如果是黄金和比特币都开市,则目标函数为:

每日收益=(第二天的黄金价格/今天的黄金价格)*(前一天的黄金持有数+当天的黄金交易数)+(第二天的比特币价格/今天的比特币价格)*(前一天的比特币持有数+当天的比特币交易数)

约束条件有:

约束1:当天的黄金、比特币交易数不得超过总持有量

约束2:当天的黄金、比特币交易数不得超过前一天各自的持有量

约束3:高于税费才交易

还有其他约束,大家可以自行补充。

如果只有比特币开市,则目标函数为:

每日收益=前一天的黄金持有数+(第二天的比特币价格/今天的比特币价格)*(前一天的比特币持有数+当天的比特币交易数)

step4:使用遗传算法求解

单天最优解遗传算法求解

设置初始参数

第一个目标函数求解结果

第二个目标函数求解结果

step5:迭代每天重复进行最优化投资

SPSSPRO-Notebook

step6:1826天的最优策略下模拟结果

即最终持有投资额为7047.974988元。

当然我这个数值比较低是因为跟投资的约束条件有关,这里我只是简单列一下容易模型化的约束条件,大家可以自行进行补充,跑出更优秀的结果。

4.2 灵敏度分析

灵敏性分析

第三题的原理其实就是灵敏度分析,前面第一二题我们不是设置了初始黄金的持有量是一半一半各500,第三题灵敏度分析,它其实就是对这一些手动设置的参数进行分析,就像假设我黄金一开始持有量是100,会不会影响到最终的结果,所以我们可以看到那张图x轴是黄金开始的一个持有量,y轴就是经过5年交易期结束后的资产总额了,可以看到,他其实是再6750左右上下波动,说明模型的稳健性很强,对最终的资产总额结果不会有很灵敏的影响。

5 代码获取

以上,全部的代码、题目数据可以通过下面免费获取,关注SPSSPRO社区账号【跟着欢欢玩转数模】:

免费获取代码+题目+数据

作者创作不易,大家觉得有用的点赞收藏关注三连呗。

本文链接地址:https://www.jiuchutong.com/zhishi/299987.html 转载请保留说明!

上一篇:人工智能这么厉害,比如GPT-4,为什么没有看到程序员失业?(人工智能怎么做出来的)

下一篇:15000 字的 SQL 语句大全 第一部分(sql1000*1.0)

  • tiktok是中国开发的吗

    tiktok是中国开发的吗

  • vivo x50 pro+屏幕尺寸多大(vivox50pro屏幕绿色竖线怎么处理)

    vivo x50 pro+屏幕尺寸多大(vivox50pro屏幕绿色竖线怎么处理)

  • 荣耀20与华为p10的区别(荣耀20与华为p20pro哪个好)

    荣耀20与华为p10的区别(荣耀20与华为p20pro哪个好)

  • 微信语音通话能不能实时设置变声(微信语音通话能被监听吗)

    微信语音通话能不能实时设置变声(微信语音通话能被监听吗)

  • 可以被数据完整性机制防止的攻击方式是(可以被数据完整性机制)

    可以被数据完整性机制防止的攻击方式是(可以被数据完整性机制)

  • 微信收款为什么有时不积分(微信收款为什么要上传身份证)

    微信收款为什么有时不积分(微信收款为什么要上传身份证)

  • 红米K20接电话不亮屏(红米k20接电话没声音)

    红米K20接电话不亮屏(红米k20接电话没声音)

  • 嘿siri唤醒无法录入声音(嘿siri唤不醒怎么办)

    嘿siri唤醒无法录入声音(嘿siri唤不醒怎么办)

  • iphone11镜头膜怎么取下来(iPhone11镜头膜怎么取下来)

    iphone11镜头膜怎么取下来(iPhone11镜头膜怎么取下来)

  • 华为手机锁屏广告怎么关闭(华为手机锁屏广告滑动解锁)

    华为手机锁屏广告怎么关闭(华为手机锁屏广告滑动解锁)

  • 苹果11收到微信不响怎么办(苹果11收到微信没有声音)

    苹果11收到微信不响怎么办(苹果11收到微信没有声音)

  • 显卡电源接口8pin和6pin有什么区别(显卡电源接口8pin和16pin有什么区别)

    显卡电源接口8pin和6pin有什么区别(显卡电源接口8pin和16pin有什么区别)

  • u盘插在荣耀9上没反应(荣耀外接u盘)

    u盘插在荣耀9上没反应(荣耀外接u盘)

  • 红米note8是全网通吗(红米note8pro5g全网通)

    红米note8是全网通吗(红米note8pro5g全网通)

  • 华为手表gt2表盘上的数字是什么意思(华为手表gt2表盘怎么换成照片)

    华为手表gt2表盘上的数字是什么意思(华为手表gt2表盘怎么换成照片)

  • 哔咔为什么进不去(哔咔app进不去)

    哔咔为什么进不去(哔咔app进不去)

  • 微博为什么不能访问相机(微博为什么不能用账号密码登录)

    微博为什么不能访问相机(微博为什么不能用账号密码登录)

  • 手机光有紫外线吗(手机光有紫外线吗医生)

    手机光有紫外线吗(手机光有紫外线吗医生)

  • vivo恢复出厂设置后,激活需要密码怎么办(vivo恢复出厂设置在哪)

    vivo恢复出厂设置后,激活需要密码怎么办(vivo恢复出厂设置在哪)

  • ps中海绵工具的用途(ps海绵工具的作用)

    ps中海绵工具的用途(ps海绵工具的作用)

  • 闲鱼买的东西可以退货吗(闲鱼买的东西可以退款吗)

    闲鱼买的东西可以退货吗(闲鱼买的东西可以退款吗)

  • b站怎么设置退出后继续播放(b站怎么设置退出播放)

    b站怎么设置退出后继续播放(b站怎么设置退出播放)

  • 苹果手表如何数据插卡(苹果手表怎么量多少毫米)

    苹果手表如何数据插卡(苹果手表怎么量多少毫米)

  • 水货与行货的区别(水货跟行货)

    水货与行货的区别(水货跟行货)

  • 苹果手机发什么会流星(苹果手机发什么表情可以触发特效)

    苹果手机发什么会流星(苹果手机发什么表情可以触发特效)

  • 手机支持4g 是什么意思(手机支持4g 是什么原理)

    手机支持4g 是什么意思(手机支持4g 是什么原理)

  • conio.h是什么头文件(conio.h是什么意思)

    conio.h是什么头文件(conio.h是什么意思)

  • 微信如何设置超长名字(微信如何设置超长备注名)

    微信如何设置超长名字(微信如何设置超长备注名)

  • 下载的视频怎么变成本地视频(下载的视频怎么去除水印)

    下载的视频怎么变成本地视频(下载的视频怎么去除水印)

  • 手机转接头使用方法(手机转接头使用图片方法)

    手机转接头使用方法(手机转接头使用图片方法)

  • 税务稽查以前年度进项税额转出
  • 施工企业的临时设施,属于企业的固定资产
  • 小型微利企业所得税率
  • 财务报表申报错误怎么办
  • 小规模普票专票税率一样吗
  • 民办非盈利企业注册
  • 发票丢失怎样写说明
  • 公司库存现金如何存回银行
  • 员工租房合同
  • 公司内部核算调拨价差的账务怎么做处理?
  • 建筑资质挂靠费用怎么写会计分录?
  • 去年没有交社保,今年交了有用吗
  • 投标人组织结构怎么填写
  • 营改增前取得的不动产出售的计税方法
  • 土地增值税清算是什么意思
  • 固定资产一次性扣除账务处理
  • 利润表所得税费用怎么填
  • 投资收益年底结转怎么算
  • 公司注销后银行账户怎么注销
  • 土地出让金抵减增值税账务处理
  • 商场金银饰品销售该如何建账?
  • 基本户没开 可以销户吗
  • 没有签订合同需要申报印花税吗
  • 怎么分配工业企业材料费用?
  • 股东房产无偿给公司使用协议
  • 产生的投资收益怎么算
  • 产值和营业收入差距大
  • 收回财政结余资金账务处理
  • 德纳里山
  • PHP:pcntl_wstopsig()的用法_PCNTL函数
  • 应付账款挂账会计分录
  • 欧罗巴山国家公园旅游攻略
  • 个人销售非住宅无法提供原值怎么计算增值税
  • 税控减免怎么做账
  • 博登湖下载
  • 旅行费发票
  • 宣传活动费用什么发票开?
  • 达摩院 2021
  • php单例模式优点
  • 房地产公司计提税金
  • 小规模纳税人的企业所得税税率
  • 出口退税款计入营业外收入
  • 增值税纳税申报类型有哪些
  • 管理费用的是
  • 以股权入资该怎么办
  • 冲暂估的差异放在哪里
  • 电子设备折旧残值率
  • 计提短期借款利息分录
  • 支付补偿款计入什么会计科目
  • 开发项目设计费放入什么科目
  • 航天金税盘维护费发票在哪打印
  • 最新商业会计科目做账
  • 账簿凭证的管理要求
  • mysql数据存在内存还是硬盘
  • sql中的非逻辑
  • 游戏里区和服的区分
  • mysql数据备份的方式
  • mysql服务1067进程意外终止
  • centos 拷贝
  • win7无法更改设置
  • win10预览版好吗
  • centos的特点
  • windows log在哪里
  • win7 word
  • win10玩上古世纪闪退
  • win7玩英雄联盟卡顿怎么解决
  • bootstrap轮播插件
  • 10分钟掌握心理学
  • 后台实时分流文件的shell脚本
  • 统计重复出现的次数
  • js判断鼠标位置是否在元素区域内使用
  • js实现盒子移动
  • node.js tcp 服务器
  • js 不用var
  • Android调用系统的电话拨号程序
  • 浅谈JQuery+ajax+jsonp 跨域访问
  • 吉林省税务局发票查询真伪
  • 税务注销后发现报表报错的怎么办
  • 浙江省工伤停工留薪期分类目录
  • 怎么查国税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设