ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:25.10KB ,
资源ID:16322973      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16322973.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库期末设计 代码 sql serverWord下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库期末设计 代码 sql serverWord下载.docx

1、 EXEC(DROP TABLE +tb)set a=a+1endif exists (select * from INFORMATION_SCHEMA.TABLES where TABLE_NAME = 不同n日均线时的盈利情况比较表) DROP TABLE 不同n日均线时的盈利情况比较表/*创建结果总表“不同n日均线时的盈利情况比较表”*/create table 不同n日均线时的盈利情况比较表( n日均线 int null, 胜次数 int null, 总次数 int null, 胜概率 decimal(10,3) null, 总收益 decimal(10,3) null -数据格式为精

2、度为10,小数位数为3的小数/*定义相关变量*/declare i int -定义变量i用于循环,指定第几天的数据 declare j int -定义变量j用于循环,指定第几天的数据declare nex int -定义变量nex,用于指向第i天的下一天 declare sumd int -定义变量sumd存储book表中数据的总量,即总天数 declare n int -定义变量n表示求解的是n日均线的情况 declare follow_n float -定义变量follow_n表示某天前第n日当天的收盘 declare sum float -定义变量sum表示某天前n日收盘的总和 decl

3、are oned decimal(10, 3) -定义变量oned表示某天的n日均线值declare 时间 nvarchar(255) -定义变量时间,用于暂存游标在数据库中获得的当天的时间declare 收盘 decimal(10, 3) -定义变量收盘,用于暂存游标在数据库中获得的当天的收盘值declare 开盘 decimal(10, 3) -定义变量开盘,用于暂存游标在数据库中获得的当天的开盘值declare 次日开盘 decimal(10, 3) -定义变量次日开盘 ,用于暂存游标在数据库中获得的次日开盘值 declare status nvarchar(20) -定义变量statu

4、s ,用于循环求解过程中保存当前的股票状态declare 买入数据 decimal(10, 3) -定义变量买入数据 ,用于循环求解过程中保存最新一次买入时的买入数据declare 卖出数据 decimal(10, 3) -定义变量卖出数据 ,用于循环求解过程中保存最新一次卖出时的卖出数据declare 本次收益 decimal(10, 3) -定义变量本次收益 ,用于循环求解过程中保存本次卖出时的收益情况declare 总收益 decimal(10, 3) -定义变量总收益 ,用于循环求解过程累加求解出n日均线时的总收益值declare 胜次数 int -定义变量胜次数 ,用于循环求解过程累

5、加求解出n日均线时的胜次数declare 总次数 int -定义变量总收益 ,用于循环求解过程累加求解出n日均线时的总收益值declare 胜概率 decimal(10,3) -定义变量总收益 ,用于循环求解过程累加求解出n日均线时的总交易次数 /*定义游标*/declare youbiao1 cursor SCROLL FOR select 时间,开盘,收盘 from Stock declare youbiao2 cursor SCROLL FOR -定义游标 youbiao12指向Stock表开盘列,用于求解时获取次日开盘值 select 开盘 from Stock /*打开游标*/ope

6、n youbiao1open youbiao2/*开始循环求解步骤*/set n=2 while n=365 -从2日均线开始 求解到365日均线begin -开始第一层循环求解n日均线时的情况,共循环364次 /*创建表:“使用n日均值时的交易情况”*/ DECLARE tablename VARCHAR(60) SET tablename=+CONVERT(VARCHAR(60),n)+ print tablenameDECLARE TableSql VARCHAR(512)SET TableSql=CREATE TABLE +tableName+ 时间 nvarchar(20) NULL

7、, 开盘 decimal(10, 3) NULL, 收盘 decimal(10, 3) NULL, 日均线 decimal(10, 3) NULL, 操作 nvarchar(20) NULL, 买入卖出数据 decimal(10, 3) NULL, 收益 decimal(10, 3) NULL )EXEC(TableSql) /*每一次统计前重置各变量的初始值*/ set i=1 set j=1 set 胜次数=0 set 总次数=0 set 总收益=0 set status=SELL -策略1,先默认股票为卖出状态 select sumd=count(*) from Stock -保存数据源

8、数据总量,即总天数 set follow_n=0 set sum=0 /*开始遍历数据表,前n-1个数据无n日均线,直接求和*/ while ioned AND status=) -当收盘大于日均线且股票为卖出状态时,买入操作BUY -置股票状态为买入 set nex=i+1 -next指向下一日,便于获得下一天开盘值 fetch ABSOLUTE nex from youbiao2 into 次日开盘 set 买入数据=次日开盘 -买入数据位次日收盘值 (时间,开盘,收盘,日均线,操作,买入卖出数据) values(, +CAST(收盘 AS NVARCHAR(10)+CAST(oned A

9、S NVARCHAR(10)+CAST(买入数据 AS NVARCHAR(10)+ print Sql EXEC(Sql) /*情况2 卖出*/ else if(收盘0) set 胜次数=胜次数+1 -如果本次收益0,则胜次数+1 set 总次数=总次数+1 -无论输胜总次数都要加1 set 总收益=总收益+本次收益 -累加总收益 values(+CAST(开盘 AS nvarchar(10)+CAST(收盘 AS nvarchar(10)+CAST(oned AS nvarchar(10)+CAST(卖出数据 AS NVARCHAR(10)+CAST(本次收益 AS NVARCHAR(10)

10、+ /*情况3 无交易*/ else -无交易发生,直接保存数据到“使用n日均值时的交易情况表中 (时间,开盘,收盘,日均线) values( fetch ABSOLUTE j from youbiao1 into 时间,开盘,收盘 set follow_n=收盘 -保存前第n天收盘,便于下次循环时减去,便于统计收盘和 set i=i+1 -第i天变量递增,统计下一天 set j=j+1 -变量j指向的是前第n天,便于统计收盘和 -结束第i天的统计交易情况,进入第i+1天的循环 end /*保存n日均线时的统计情况到总表中*/ set 胜概率=胜次数*1.0/总次数 insert into 不

11、同n日均线时的盈利情况比较表 values(n,胜次数,总次数,胜概率,总收益) set n=n+1 -n递增,进入求解n+1日均线的情况end -结束外循环2日到365日/*关闭和释放游标资源*/ CLOSE youbiao1 DEALLOCATE youbiao1CLOSE youbiao2 DEALLOCATE youbiao2 /*查询结果:*/ -查询最大胜率的n日均线select n日均线 AS 最大胜率日均线,胜概率 from 不同n日均线时的盈利情况比较表where 胜概率=(select max(胜概率) from 不同n日均线时的盈利情况比较表) -查询最大盈利总点(总收益

12、)的n日均线select n日均线 AS 最大盈利总点日均线,总收益 from 不同n日均线时的盈利情况比较表where 总收益=(select max(总收益) from 不同n日均线时的盈利情况比较表) -按胜率从大到小排列select * from 不同n日均线时的盈利情况比较表order by 胜概率 deSc -按盈利总点(总收益)从大到小排列order by 总收益 deSc题目二:假设每次买入卖出的操作,都需要万分之三的费用,求最大胜率及最大盈利点数的均值数据declare 买入手续费 decimal(10, 3)-定义变量买入手续费 ,用于循环求解过程中保存最新一次买入时的买入手续费declare 卖出手续费 decimal(10, 3)-定义变量卖出手续费 ,用于循环求解过程中保存最新一次卖出时的卖出手续费 手续费5% decimal(10, 3) NULL, set 买入手续费=买入数据*0.00003 -万分之五手续费 (时间,开盘,收盘,日均线,操作,买入卖出数据,手续费5%) values(+CAST(oned AS NVARCH

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1