回覆: 請問這樣的指標要如何轉到奇狐?<被奇狐的 IF THEN ELSE 深深的打敗>
引用: 最初由 khsu 發表
求救一下: 這是multicharts裡的一個指標。
L0=0;L1=0;L2=0;L3=0;
Dampen = 0.5;
L0=(1-Dampen)*Close+Dampen*L0[1];
L1=-Dampen*L0+L0[1]+Dampen*L1[1];
L2=-Dampen*L1+L1[1]+Dampen*L2[1];
L3=-Dampen*L2+L2[1]+Dampen*L3[1];
CU=0; CD=0;
If L0>=L1 then CU = L0-L1 Else CD = L1-L0;
If L1>=L2 then CU=CU+L1-L2 Else CD=CD+L2-L1;
If L2>=L3 then CU=CU+L2-L3 Else CD=CD+L3-L2;
If CU+CD<>0 then myRSI=CU/(CU+CD);
我要的輸出是這個 myRSI
試了好久,被奇狐的 IF THEN ELSE 深深的打敗!
試試
原碼: Dampen:=0.5; CC:=C; ZA:=C*0;
L0:=ZA;L1:=ZA;L2:=ZA;L3:=ZA;
CU:=ZA; CD:=ZA;
myRSI:ZA;
for i=1 to datacount do begin
if i=1 then begin
L0[i]:=(1-Dampen)*CC[i];
L1[i]:=Dampen*L0[i];
L2[i]:=Dampen*L1[i];
L3[i]:=Dampen*L2[i];
end else begin
L0[i]:=(1-Dampen)*CC[i]+Dampen*L0[i-1];
L1[i]:=-Dampen*L0[i]+L0[i-1]+Dampen*L1[i-1];
L2[i]:=-Dampen*L1[i]+L1[i-1]+Dampen*L2[i-1];
L3[i]:=-Dampen*L2[i]+L2[i-1]+Dampen*L3[i-1];
end;
If L0[i]>=L1[i] then CU[i]:=L0[i]-L1[i]; else CD[i]:=L1[i]-L0[i];
If L1[i]>=L2[i] then CU[i]:=CU[i]+L1[i]-L2[i]; else CD[i]:=CD[i]+L2[i]-L1[i];
If L2[i]>=L3[i] then CU[i]:=CU[i]+L2[i]-L3[i]; else CD[i]:=CD[i]+L3[i]-L2[i];
if CU[i]+CD[i]<>0 then myRSI[i]:=CU[i]/(CU[i]+CD[i]);
end;
|