 |
Rosetta
資深會員
註冊日期: Sep 2014
來 自:
文章數量: 117 |
下標越界問題請教
根據以前帖子,修改的個股預估量,發現一個問題,在15分跑時,有時少部份股票會出現「指標組下標越界或超出有效數據區間」的訊息,據觀察好像是K棒數量不足,例如6919、6982等等,有沒有辦法調整K棒數量,讓程式順利顯示出來,謝謝
源碼如下:
VARIABLE:MN[18]=0; //定義15分鐘K棒對應乘數
MN[01]:=8; MN[07]:=2; MN[13]:=1.38;
MN[02]:=5; MN[08]:=1.8; MN[14]:=1.32;
MN[03]:=4; MN[09]:=1.7; MN[15]:=1.25;
MN[04]:=3; MN[10]:=1.6; MN[16]:=1.18;
MN[05]:=2.5; MN[11]:=1.5; MN[17]:=1.11;
MN[06]:=2.2; MN[12]:=1.45; MN[18]:=1;
成交:=VOL;
DEKN:=barslast(date<>ref(date,1))+1;
預估:C*0; VV:=成交;
for i=lbound(DEKN) to datacount do begin
if DEKN[i]=1 then SV:=0;
SV:=SV+VV[i];
預估[i]:=SV*MN[DEKN[i]];
end;
預估;
|
|
向版主報告此篇 |  |
|
2024-12-25 08:39 |
|
|
|  |
 |
Rosetta
資深會員
註冊日期: Sep 2014
來 自:
文章數量: 117 |
引用: 最初由 cgjj 發表
若該商品K棒不足一日,則會出錯!
要預防很簡單!
將
DEKN:=barslast(date<>ref(date,1))+1;
改為
DEKN:=barslast(date<>ref(date,1))+1;
if lbound(DEKN)=0 then exit;
我知道原因了,因為我將上面程式命名為「預估量」的子公式,然後新建公式去引用,目的是切換任何周其實都可以固定數值,然後就出現上述問題,請問該如何解決?
A01:=STKINDI('','預估量.預估',0,3);//15MIN預估量
EXPLAINEX (1, '15MIN預估量=',A01,2,0);
註:「預估量.預估」中間這個點,不知如何一貼文就變成句號
|
最後由 Rosetta 在 2024-12-26 07:29 編輯 |
向版主報告此篇 |  |
|
2024-12-26 07:25 |
|
|
|  |
 |
cgjj
總版主

註冊日期: Oct 2003
來 自:
文章數量: 18116 |
引用: 最初由 Rosetta 發表
我知道原因了,因為我將上面程式命名為「預估量」的子公式,然後新建公式去引用,目的是切換任何周其實都可以固定數值,然後就出現上述問題,請問該如何解決?
A01:=STKINDI('','預估量.預估',0,3);//15MIN預估量
EXPLAINEX (1, '15MIN預估量=',A01,2,0);
註:「預估量.預估」中間這個點,不知如何一貼文就變成句號
A01:=STKINDI('','預估量.預估',0,3);//15MIN預估量
EXPLAINEX (1, '15MIN預估量=',A01,2,0);
這兩行不會有機會在 6919、6982 引發下標越界的!
只要是確定是引用15分鐘周期,且對象是股票,基本上它是不會出現越界的!
除非該商品剛上市,且分鐘K棒累積尚未超過一個交易日,才會出現越界的
若以上因素皆排除,仍會見到!
則可能是您其他未貼出的程式碼所引起的
|
|
向版主報告此篇 |  |
|
2024-12-26 08:58 |
|
|
|  |
本站所有內容未經作者授權禁止轉貼節錄, 發表言論僅供參考勿作為投資決策依據。瀏覽本站請使用 IE 5.5 以上版本, 最佳瀏覽解析度 1024 x 768 全彩。
|
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved. 聯絡我們
|