![]() |
在這個頁面顯示本主題全部的 12 個文章 |
奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- 請教版主:使用IF判斷出現XXX指標數組下標越界或超出有效數據區間 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=14720)
請教版主:使用IF判斷出現XXX指標數組下標越界或超出有效數據區間
請教版主:使用IF判斷出現XXX指標數組下標越界或超出有效數據區間;
使用指令如下列:
已參照http://www.chiefox.com.tw/bbs/showt...&threadid=13642
數列, 不能直接帶入到 IF ... THEN 之中
IF cond THEN ...
其中的 cond 必須為單值數值, 不可為數列
有些可以過,但有些又不過,但不知有何差異
這次用
VV:=VOL;
BVV:=MA(VV,20)*2;
大量:IF(VV>BVV,1,0);
之前使用
大量:IF(V>MA(V,20)*2,1,0);
在下列判斷中均不可用
IF 大量[i] then begin MM[i]:=K2[i];END;
會有標題的錯誤,但是
長K判:=if(K長>=長K,1,0);
if 長K判[i] then begin MM[i]:=K2[i];NowHL:=1;END;
卻可以使用,能否詳細解說其中差異。
回覆: 請教版主:使用IF判斷出現XXX指標數組下標越界或超出有效數據區間
引用:
最初由 sunnyjboy1960 發表
請教版主:使用IF判斷出現XXX指標數組下標越界或超出有效數據區間;
使用指令如下列:
已參照http://www.chiefox.com.tw/bbs/showt...&threadid=13642
數列, 不能直接帶入到 IF ... THEN 之中
IF cond THEN ...
其中的 cond 必須為單值數值, 不可為數列
有些可以過,但有些又不過,但不知有何差異
這次用
VV:=VOL;
BVV:=MA(VV,20)*2;
大量:IF(VV>BVV,1,0);
之前使用
大量:IF(V>MA(V,20)*2,1,0);
在下列判斷中均不可用
IF 大量[i] then begin MM[i]:=K2[i];END;
會有標題的錯誤,但是
長K判:=if(K長>=長K,1,0);
if 長K判[i] then begin MM[i]:=K2[i];NowHL:=1;END;
卻可以使用,能否詳細解說其中差異。
問題是:大量[i] 不能用
引用:
最初由 sunnyjboy1960 發表
問題是:大量[i] 不能用
建議您先看看這篇文章
http://www.chiefox.com.tw/bbs/showt...&threadid=12616
{--標控盤線一---------------------------------------}
{----------大量----------------------------------------}
VV:=VOL;
BVV:=MA(VV,20)*2;大量:IF(VV>BVV,1,0);
DRAWICON(C<ref(C,1) and 大量, 日低, 1);
DRAWICON(C>ref(C,1) and 大量, 日低, 2);
K收:=C; K高:=H; K低:=L;
K紅:=if(ISUP,1,0);
K黑:=if(ISdown,1,0);
K漲跌:=if(K收>ref(K收,1),1,0);
K長:=(H-L);KL4:=ROUND(K長/4);KL2:=ROUND(K長/2);
K2:=K低+KL2;
中K紅:=K2;
中K黑:=K2;
K中:=K2;
中K判:=if(K長>=中K AND K長<長K,1,0);
長K判:=if(K長>=長K,1,0);
長K紅:=K高-KL4;
長K黑:=K低+KL4;
K高紅H:=K高-KL4;
K低黑L:=K低+KL4;
中長K:=if(K長>=中K,1,0);
高1:=ref(hhv(H,3),1);低1:=ref(llv(L,3),1);高2:=HHV(H,2);低2:=LLV(L,2);
高3:=HHV(H,3);高31:=REF(HHV(HIGH,2*N3+1),2);高32:=HHV(HIGH,3*N3+1);
低3:=LLV(L,3);低31:=REF(LLV(LOW,2*N3+1),2); 低32:=LLV(LOW,3*N3+1);
高1判:=if(c>高1,1,0);低1判:=if(K低<低1,1,0);低31判:=if(K低<低31,1,0);
高3C1:=ref(hhv(H,3),1);低3L1:=ref(llv(L,3),1),Color0099FF,LINETHICK1;
K高H判:=IF(K漲跌>=0 AND K高紅H>高3C1,1,0);
K低L判:=IF(K漲跌<0 AND K低黑L<低3L1,1,0);
VTEST:=IF(V>(MA(V,20)*2),1,0);
DKL:=IF(VTEST=1,80,50);
高1判:=if(K高紅H>高3C1,1,0);
低1判:=if(L<低3L1,1,0);
TL:=ref(低32,1),ColorCC33CC,LINETHICK1;//低控停損
TH:=ref(高32,1),Color00FF00,LINETHICK1;//高控停損
SP1:=if(time=85000,1,0);
DSP1:time;
SL:=C>ref(高32,1) linethick0;
SH:=L<ref(低32,1) linethick0;
MM:BARSSINCE(SL or SH)*0,ColorMagenta,LINETHICK2; NowMM:=0;
for i=lbound(MM) to datacount do begin
IF SP1[i] then begin
IF K漲跌[i] then begin
IF K紅[i] then begin
if 長K判[i] OR 中K判[i] then begin MM[i]:=K2[i];NowHL:=1;END;
ELSE begin MM[i]:=K低[i];NowHL:=1;END;
END;
ELSE BEGIN
if 長K判[i] then begin MM[i]:=K2[i];NowHL:=1;END;
IF K黑[i] AND 中K判[i] then begin MM[i]:=K2[i]+2;NowHL:=1;END;
ELSE begin MM[i]:=K高[i];NowHL:=1;END;
END;
END;
IF K漲跌[i]=0 then begin
IF K紅[i] then begin
if 長K判[i] OR 中K判[i] then begin MM[i]:=K2[i];NowHL:=1;END;
ELSE begin MM[i]:=K高[i];NowHL:=1;END;
END;
ELSE BEGIN
if 長K判[i] OR 中K判[i] then begin MM[i]:=K2[i];NowHL:=1;END;
ELSE begin MM[i]:=K低[i];NowHL:=1;END;
END;
END;
END;
ELSE begin //第二根K以後
if 長K判[i] then begin
IF K漲跌[i] then begin
NowHL:=1;
// IF 大量[i] then begin
MM[i]:=K2[i];END;
// ELSE
// MM[i]:=K2[i];END;
ELSE begin
MM[i]:=K2[i];NowHL:=-1;END;
END;
ELSE
IF 中K判[i] then begin
IF SL[i] then begin MM[i]:=K低[i];NowHL:=1;END;
ELSE IF SH[i] then begin MM[i]:=K高[i];NowHL:=-1;END;
ELSE begin MM[i]:=MM[i-1];END;
END;
ELSE begin MM[i]:=MM[i-1];END;
END;
end;
PARTLINE(MM>C,MM) ColorYELLOW,LINETHICK3;
PARTLINE(MM<=C,MM) ColorMagenta,LINETHICK3;
長K 和 N3 未給予定義唷
N3:=3;
中K:=10; 長K:=20;
{----------大量----------------------------------------}
VV:=VOL;
BVV:=MA(VV,20)*2;
大量:IF(VV>BVV,1,0);
lbound(大量)=20
lbound(MM) 有機會小於 lbound(大量)
故當跑
for i=lbound(MM) to datacount
大量[i] 之 i 值, 有可能會越過[大量]的有效範圍
就會引發 Error
指標數組下標越界或超出有效數據區間
不能僅考量 MM 的有效範圍
[大量] 之有效範圍和其他數列的有效範圍, 都要考量入
否則就會有越界的問題
在這個
for i=lbound(MM) to datacount do begin
的LOOP內應如何去判斷
成交量的指令?
引用:
最初由 sunnyjboy1960 發表
在這個
for i=lbound(MM) to datacount do begin
的LOOP內應如何去判斷
成交量的指令?
非常感謝總版主
正在研究設計好用的下單指標中
全部時間均為台灣時間, 現在時間為03:28 | 在這個頁面顯示本主題全部的 12 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.