金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
12
返回列表 发新帖
楼主: 羊洋

VBA后台多线程咨询

[复制链接]

55

主题

179

帖子

179

积分

等级: 免费版

注册:
2021-11-18
曾用名:
 楼主| 发表于 2022-2-10 01:01 | 显示全部楼层
技术008 发表于 2022-2-9 19:28
就是软件自己保存历史的,这个你不要去关心,用就是了
作用就是提升效率

这个不太明白。那么每个函数在哪里保存自己的全局变量呢?如果同一个公式加载到不同的品种,不同品种之间调用全局变量,怎么样标识出区别呢?

能不能大概在自定义函数的写法上,给个例子?
回复

使用道具 举报

30

主题

7075

帖子

7085

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2022-2-10 09:20 | 显示全部楼层
电话我
021-20339087
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

30

主题

7075

帖子

7085

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2022-2-10 11:05 | 显示全部楼层
您意思就是pel调用vba的自定义函数,比如自定义函数可能是类似递归这样的算法。
然后希望每次运行自定义函数的时候,不需要重复递归把之前的数据保存着计算??
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

55

主题

179

帖子

179

积分

等级: 免费版

注册:
2021-11-18
曾用名:
 楼主| 发表于 2022-2-10 12:34 | 显示全部楼层
我的VBA函数是需要计算前300根的K线,得出一个值保存在数组(假设是一个在被重复调用时候不会被清零的全局变量数组里)的第300个位置。
当301根K线到达时候,按照一般写法,是需要计算第2~301根K线得出结果的。但其实我只需要数组里面的第300号的数据,加上新进来的301号K线,我就能够
回复

使用道具 举报

55

主题

179

帖子

179

积分

等级: 免费版

注册:
2021-11-18
曾用名:
 楼主| 发表于 2022-2-10 12:36 | 显示全部楼层
我的VBA函数是需要计算前300根的K线,得出一个值保存在数组(假设是一个在被重复调用时候不会被清零的全局变量数组里)的第300个位置。

当301根K线到达时候,按照一般写法,是需要计算第2~301根K线得出结果的。

但其实我只需要数组里面的第300号的数据,加上新进来的301号K线,我就能够得到需要的结果,这样只需要计算1次,而不是重新计算300次。

我想问,这个全局变量是应该怎么写,放在哪里?

之所以想用自定义函数,是希望能够用上金字塔的多核计算功能,能使用后台监控系统进行提示和交易。我纯用application_VBAStart的话,只能单线程,无法同时覆盖全部品种
回复

使用道具 举报

30

主题

7075

帖子

7085

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2022-2-10 13:35 | 显示全部楼层
那你就把pel传参时候传入一个ref
表示上一个k线的结果进去。

其他没办法了
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

27

主题

95

帖子

95

积分

等级: 免费版

注册:
2021-6-7
曾用名:
发表于 2022-2-22 19:56 | 显示全部楼层
羊洋 发表于 2022-2-10 12:36
我的VBA函数是需要计算前300根的K线,得出一个值保存在数组(假设是一个在被重复调用时候不会被清零的全局 ...

用DLL解决吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2024-11-16 10:38 , Processed in 0.237235 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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