奇狐社區論壇
在這個頁面顯示本主題全部的 3 個文章

奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- [問題] (http://www.chiefox.com.tw/bbs/showthread.php?threadid=6321)


由 APSHEU 在 2006-10-27 07:58 發表:

[問題]

AC:=C;
AH:=WMA(H,3);
AL:=WMA(L,4);
FOR I=30+1 TO DATACOUNT DO BEGIN
IF AC[I]>AH[I-1] THEN B[I]:=1 ELSE
IF AC[I]<AL[I-1] THEN B[I]:=-1 ELSE
B[I]:=B[I-1];
END;
E:=IF(B=-1,MA(H,5),MA(L,3));
A:E,PRECISION2,LINETHICK2,COLORyellow;
Wm1:=(B=1 AND REF(B,1)=1) or (B=1 AND REF(B,1)=-1);//升
Wm2:=(B=-1 AND REF(B,1)=-1) or (B=-1 AND REF(B,1)=1);//降

MAV:=EMA((2*C+H+L)/4,3);
MAS:=SMA(MAV,12,7);
MAL:=SMA(MAV,26,7);
DIFF :=(MAS - MAL)/MAL*100,COLORGREEN;
DEA :=SMA(EMA(DIFF,5),3,1),COLORGREEN;
B :MAL*(1-5*(DIFF-DEA)/100),COLORgreen,LINETHICK2;



以上是原碼
為什麼在V4.0.60208中可使用,但在最新版中無法使用,甚至當機呢,可否請版大釋疑,謝謝


由 cgjj 在 2006-10-27 08:38 發表:

您 B 變數尚未定義
就直接用定址方式存取
這就是問題所在
這樣寫法會有很多相容性問題
換成下面程式就可以了

原碼:

AC
:=C
AH:=WMA(H,3); 
AL:=WMA(L,4);
B:=C*0;
FOR 
I=30+1 TO DATACOUNT DO BEGIN
IF AC[I]>AH[I-1THEN B[I]:=ELSE 
IF 
AC[I]<AL[I-1THEN B[I]:=-ELSE
B[I]:=B[I-1]; 
END
E:=IF(B=-1,MA(H,5),MA(L,3));
A:E,PRECISION2,LINETHICK2,COLORyellow;
Wm1:=(B=AND REF(B,1)=1) or (B=AND REF(B,1)=-1);//升
Wm2:=(B=-AND REF(B,1)=-1) or (B=-AND REF(B,1)=1);//降

MAV:=EMA((2*C+H+L)/4,3);
MAS:=SMA(MAV,12,7);
MAL:=SMA(MAV,26,7);
DIFF :=(MAS MAL)/MAL*100,COLORGREEN;
DEA :=SMA(EMA(DIFF,5),3,1),COLORGREEN;
:MAL*(1-5*(DIFF-DEA)/100),COLORgreen,LINETHICK2;


由 APSHEU 在 2006-10-27 09:18 發表:

如題

感謝版大的釋疑


全部時間均為台灣時間, 現在時間為03:42
在這個頁面顯示本主題全部的 3 個文章


Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.