ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 3034|回复: 5

[求助] 一个大工程,做一个计算股票盈利的程序

[复制链接]

TA的精华主题

TA的得分主题

发表于 2018-6-29 11:31 | 显示全部楼层 |阅读模式
在B列输出初始资金,手续费率等等,初始结束日期,计算移动平均线,比如5天,10天都可以,然后在下面输出最后的收益,复利收益是指每次都是全部资金买进卖出,单利是指每次只以初始资金的额度买入卖出保持不变,
其中还有一个需要注意的是每次交易有资金用不完的问题,要先算一个买入的数量,
买入卖出信号上是指收盘价上穿均线的时候买入,就是金叉买入,下穿均线的时候卖出,就是死叉卖出.

我自己做了一个大概的盈利,但这么多的参数,有点超出能力,望大家帮助,

Sub 计算复利盈利()

Dim prr, mrr, k1, marr
With Worksheets("sheet1")
  k1 = .[a1].End(4).Row - 1
  prr = .[d2].Resize(k1, 1)
  mrr = .[f2].Resize(k1, 1)

End With

Dim a As Integer, c As Single, q As Double, i As Long, j As Long, p As Double
q = [b1]
c = [b2]

For i = 6 To k1
If prr(i, 1) > mrr(i, 1) And prr(i - 1, 1) < mrr(i - 1, 1) Then
    a = Int(q / prr(i, 1))
    p = prr(i, 1)
ElseIf prr(i, 1) < mrr(i, 1) And prr(i - 1, 1) > mrr(i - 1, 1) Then
    q = q + (prr(i, 1) - p) * a - prr(i, 1) * a * c

End If
[b6] = q
Next i


[b6] = q
End Sub

盈利计算.rar

1.07 MB, 下载次数: 349

TA的精华主题

TA的得分主题

发表于 2018-6-29 12:05 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 yylucke 于 2018-6-29 12:24 编辑

其实你的案例难点是:找出金叉和死叉。
因为是事后判断,因此出现金叉,只能是次日购入;同理,出现死叉,是次日卖出。
试问,如果计算后发现买卖价差(含手续费)是负数,仍强行卖出?还是待到下一个死叉,且收益为正数才卖出?
因为全部是事后静态数据,100%肯定计算出来收益可观!!!但用于实际交易就呵呵了。
这其实就是一个初级的量化交易模型。




TA的精华主题

TA的得分主题

 楼主| 发表于 2018-6-29 14:06 | 显示全部楼层
只管金叉死叉,不管是不是盈利,确实是一个量化交易的理念.
想先做个简单的,以后可以应用更多的条件进行回测.

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-6-29 14:07 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
yylucke 发表于 2018-6-29 12:05
其实你的案例难点是:找出金叉和死叉。
因为是事后判断,因此出现金叉,只能是次日购入;同理,出现死叉, ...


只管金叉死叉,不管是不是盈利,确实是一个量化交易的理念.
想先做个简单的,以后可以应用更多的条件进行回测.

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-6-29 14:09 | 显示全部楼层
sleepgod111 发表于 2018-6-29 14:06
只管金叉死叉,不管是不是盈利,确实是一个量化交易的理念.
想先做个简单的,以后可以应用更多的条件进行回测 ...

我先期做的那个公式里的两个判断,其实就可以判断出金叉,死叉了

TA的精华主题

TA的得分主题

发表于 2018-6-30 12:00 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
   计算说的这么复杂, 表示有挑战性, 我顿时想免费为你重写一条的冲动
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-29 04:15 , Processed in 0.034859 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表