以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 高级功能研发区 (http://weistock.com/bbs/list.asp?boardid=5) ---- 测试CU_MA1和CU_MA2时提示编译器错误'6'溢出 (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=84637) |
-- 作者:lancer -- 发布时间:2015/9/1 10:34:21 -- 测试CU_MA1和CU_MA2时提示编译器错误'6'溢出 XULIE:CU_MA1(CLOSE,5),COLORRED; 报溢出错误后黄色光标停留在 For k = i-(Cyc-1) To i 在逐线模式下运行 ZHUKX:CU_MA2(5),COLORBLUE; 报溢出错误后黄色光标停留在 for i = Formula.IndexData-cyc+1 to Formula.IndexData 如附件所示,请看下是哪方面原因? [此贴子已经被作者于2015/9/1 10:35:26编辑过]
|
-- 作者:lancer -- 发布时间:2015/9/1 10:39:25 -- weistock.com/bbs/UploadFile/2015-9/20159110352342660.png ![]() ![]() |
-- 作者:lancer -- 发布时间:2015/9/1 10:43:53 -- 附件上传及其难用 |
-- 作者:yukizzc -- 发布时间:2015/9/1 10:51:13 -- 这两个自带的函数你没有改动过吧?? 试下软件重启再去使用看看呢 |
-- 作者:lancer -- 发布时间:2015/9/1 11:36:31 -- 因为报错,这两个函数我改动过但最后又改回来了。版主能发它们的源码我比对下看看吗 |
-- 作者:王锋 -- 发布时间:2015/9/1 12:03:15 -- 你可以其他目录重装一个金字塔,然后自行对比 |
-- 作者:王锋 -- 发布时间:2015/9/1 12:04:36 -- 或者使用调试手段,看一下出错行的变量是否是出现数值异常,然后依次往上排查问题 |
-- 作者:lancer -- 发布时间:2015/9/1 13:06:35 -- 重装的话是不是只要把\\Weisoft Stock\\Setting\\文件夹备份,装完再还原就可以了? |
-- 作者:yukizzc -- 发布时间:2015/9/1 13:41:35 -- 这个是配置文件,还有个document里面是公式文件包括了你vba里面代码。 重装时候要把document里面的.stk公式文件删掉,否则他不会替换初始文件的 |
-- 作者:lancer -- 发布时间:2015/9/1 14:56:37 -- 重装后错误依旧 \'计算逐周期模式下指定周期长度的收盘价均价 Function CU_MA2(Formula,cyc) \'得到K线数据对象
Set History = Formula.ParentGrid.GetHistoryData()
\'若当前周期尚未到计算周期,不参与计算
if Formula.IndexData < cyc-1 then
CU_MA2 = 0
exit function
end if
DataCount = 0 for i = Formula.IndexData-cyc+1 to Formula.IndexData
\'累加收盘价
DataCount = DataCount + history.close(i) next
CU_MA2 = DataCount / cyc End Function \'计算序列模式下指定周期长度的收盘价均价 Function CU_MA1(Formula,CLOSE,CYC) CU_MA1=0 \'防止公式逐周期模式时调用 If Formula.WorkMode = 0 Then Exit Function End If \'CLOSE数组数据长度一定会与Formula.DataSize-1相等 DataCount = UBound(CLOSE) If DataCount <> Formula.DataSize-1 Then Exit Function End If \'定义一个计算返回的数组 Dim ResultMa Redim ResultMa(DataCount) For i = Cyc-1 To Formula.DataSize-1 Count = 0 For k = i-(Cyc-1) To i Count = Count + CLOSE(k) Next ResultMa(i) = Count / Cyc Next \'返回一个计算完毕的均线数组 CU_MA1 = ResultMa End Function |