自定義函數(shù)CU_MA1的坑 -CLOSE數(shù)組數(shù)據(jù)長度與Formula.DataSize-1不一定相等
作者:金字塔 來源:cxh99.com 發(fā)布時間:2017年06月08日
- 咨詢內(nèi)容:
系統(tǒng)自帶自定義函數(shù)'計算序列模式下指定周期長度的收盤價均價Function CU_MA1(Formula,CLOSE,CYC) CU_MA1=0
'防止公式逐周期模式時調(diào)用 If Formula.WorkMode = 0 Then Exit Function End If
'CLOSE數(shù)組數(shù)據(jù)長度一定會與Formula.DataSize-1相等 DataCount = UBound(CLOSE) If DataCount <> Formula.DataSize-1 Then Exit Function End If
'定義一個計算返回的數(shù)組 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
'返回一個計算完畢的均線數(shù)組 CU_MA1 = ResultMaEnd Function公式調(diào)用ma1:CU_MA1(c,5);
發(fā)現(xiàn)刷新K線過程中,ma1偶然輸出為0的橫線,理論上CLOSE數(shù)組數(shù)據(jù)長度一定會與Formula.DataSize-1相等,但實際可能不想等,具體原因在哪里偶也不清楚;目前我的解決辦法是不使用Formula.DataSize
- 金字塔客服:
你是通過輸出為0就判斷是因為CLOSE數(shù)組數(shù)據(jù)長度一定會與Formula.DataSize-1這個問題的嗎?
那你的判斷有點武斷了,建議你采取日志記錄等一些方案進一步明確一下問題。
- 用戶回復(fù):
我是寫其他自定義函數(shù)發(fā)現(xiàn)這個問題的,通過日志記錄排查了,為什么會發(fā)生這樣的問題,是我個人電腦的環(huán)境的問題還是系統(tǒng)的問題就不得而知了。這里舉CU_MA1原版函數(shù)這個例子只是故障重現(xiàn)而已。
靜態(tài)的一般沒問題,開盤時間刷新幾十根K線故障就會偶然性重現(xiàn)
- 網(wǎng)友回復(fù):
'CLOSE數(shù)組數(shù)據(jù)長度一定會與Formula.DataSize-1相等
DataCount = UBound(CLOSE)
If DataCount <> Formula.DataSize-1 Then
Application.msgout DataCount &"--++--"&Formula.DataSize-1
Exit Function
End If
建議你將上述加了日志的代碼放進去,如果出現(xiàn)不一致情況,將打印的日志發(fā)給我們這邊看一下
- 網(wǎng)友回復(fù):
只加了日志代碼,不知道如何上傳圖片494--++--506494--++--506494--++--506495--++--507495--++--507495--++--507495--++--507495--++--507495--++--507496--++--508496--++--508496--++--508496--++--508496--++--508496--++--508496--++--508497--++--509497--++--509497--++--509497--++--509497--++--509497--++--509498--++--510498--++--510498--++--510498--++--510498--++--510498--++--510498--++--510499--++--511499--++--511499--++--511499--++--511499--++--511499--++--511499--++--511500--++--512500--++--512500--++--512500--++--512500--++--512500--++--512501--++--513501--++--513501--++--513501--++--513501--++--513501--++--513501--++--513502--++--514502--++--514502--++--514502--++--514502--++--514502--++--514502--++--514503--++--515503--++--515503--++--515503--++--515503--++--515503--++--515504--++--516504--++--516504--++--516504--++--516504--++--516504--++--516504--++--516505--++--517505--++--517505--++--517505--++--517505--++--517505--++--517506--++--518506--++--518506--++--518506--++--518506--++--518506--++--518506--++--518507--++--519507--++--519507--++--519507--++--519507--++--519507--++--519507--++--519508--++--520508--++--520508--++--520508--++--520508--++--520508--++--520509--++--521509--++--521509--++--521509--++--521509--++--521509--++--521509--++--521510--++--522510--++--522510--++--522510--++--522510--++--522510--++--522511--++--523511--++--523511--++--523511--++--523511--++--523511--++--523511--++--523512--++--524512--++--524512--++--524512--++--524512--++--524512--++--524512--++--524513--++--525513--++--525513--++--525513--++--525513--++--525513--++--525514--++--526514--++--526514--++--526514--++--526514--++--526514--++--526514--++--526515--++--527515--++--527515--++--527515--++--527515--++--527515--++--527516--++--528516--++--528516--++--528516--++--528516--++--528516--++--528516--++--528517--++--529517--++--529517--++--529517--++--529517--++--529517--++--529517--++--529518--++--530518--++--530518--++--530518--++--530518--++--530518--++--530519--++--531519--++--531519--++--531519--++--531519--++--531519--++--531519--++--531520--++--532520--++--532520--++--532520--++--532520--++--532520--++--532520--++--532521--++--533521--++--533521--++--533521--++--533521--++--533521--++--533522--++--534522--++--534522--++--534522--++--534522--++--534522--++--534522--++--534523--++--535523--++--535523--++--535523--++--535523--++--535523--++--535524--++--536524--++--536524--++--536524--++--536524--++--536524--++--536524--++--536525--++--537525--++--537525--++--537525--++--537525--++--537525--++--537525--++--537526--++--538526--++--538526--++--538526--++--538526--++--538526--++--538527--++--539527--++--539527--++--539527--++--539527--++--539527--++--539527--++--539528--++--540528--++--540528--++--540528--++--540528--++--540528--++--540529--++--541529--++--541529--++--541529--++--541529--++--541529--++--541529--++--541