yngs 2005-1-26 10:28
飞狐用CYC、LFS、CYW源码
感谢南客老师所作!
{LFS}
[code]a[1]:=0;b[1]:=0;
hsl:=vol/capital;
for i=1 to datacount do begin
a[i]:=hsl[i]+0.8*(1-hsl[i])*a[i-1];
b[i]:=hsl[i]+12/13*(1-hsl[i])*b[i-1];
end;
Lfs:100*(1-a/b);[/code]
{CYC}
[code]input:N1(5,1,999),N2(13,1,999),N3(34,1,999),NN(100,100,1000);
mid:=(o+c)/2;
hsl:=if(capital=0,v/sum(v,NN),v/capital);
if capital=0 then begin
hsl:=v/sum(v,NN);
a:=setlbound(hsl,1);
for i=1 to min(NN-1,datacount) do hsl[i]:=0;
end;
ljhs[1]:=hsl[1];
cyc1[1]:=mid[1];
ljhs2[1]:=hsl[1];
cyc2[1]: mid[1];
ljhs3[1]:=hsl[1];
cyc3[1]: mid[1];
ljhsm[1]:=hsl[1];
cycmax[1]:mid[1];
dd:=mid[1]*(barpos<NN);
for i=lbound(hsl)+1 to datacount do begin
ljhs[i]:=ljhs[i-1]*(1-hsl[i])*(n1-1)/n1+hsl[i];
cyc1[i]:(mid[i]*hsl[i]+cyc1[i-1]*ljhs[i-1]*(1-hsl[i])*(n1-1)/n1)/ljhs[i]+dd[i];
ljhs2[i]:=ljhs2[i-1]*(1-hsl[i])*(n2-1)/n2+hsl[i];
cyc2[i]:=(mid[i]*hsl[i]+cyc2[i-1]*ljhs2[i-1]*(1-hsl[i])*(n2-1)/n2)/ljhs2[i]+dd[i];
ljhs3[i]:=ljhs3[i-1]*(1-hsl[i])*(n3-1)/n3+hsl[i];
cyc3[i]:=(mid[i]*hsl[i]+cyc3[i-1]*ljhs3[i-1]*(1-hsl[i])*(n3-1)/n3)/ljhs3[i]+dd[i];
ljhsm[i]:=ljhsm[i-1]*(1-hsl[i])+hsl[i];
cycmax[i]:=(mid[i]*hsl[i]+cycmax[i-1]*ljhsm[i-1]*(1-hsl[i]))/ljhsm[i]+dd[i];
end;[/code]
{CYW}
[code]input:nn(100,100,1000);
hsl:=if(capital=0,v/sum(v,nn),v/capital);
a:=h-l;fh:=high;fl:=low;fc:=close;fo:=open;
b[1]:=0;d[1]:=0;
e[1]:=0;f[1]:=0;
for i=lbound(hsl) to datacount do begin
b[i]:=IF(a[i]>0,20/21*(1-hsl[i])*b[i-1]+hsl[i]*(fc[i]-fl[i])/(fh[i]-fl[i]), 20/21*b[i-1]*(1-hsl[i])+hsl[i]);
d[i]:=IF(a[i]>0,20/21*(1-hsl[i])*d[i-1]+hsl[i]*(fh[i]-fc[i])/(fh[i]-fl[i]), 20/21*(1-hsl[i])*d[i-1]);
e[i]:=b[i-1]/58+e[i-1]*57/58;
f[i]:=d[i-1]/58+f[i-1]*57/58;
end;
g:=IF(f>e,1,f/e);
cyw:(b*g-d)*100,colorstick;[/code]
欣儿 2005-1-26 11:29
谢谢两位老师!yngs你好些了吗?:cool::cool::cool::clap::clap::clap:
lq1698 2007-7-19 14:48
顶!
[[i] 本帖最后由 lq1698 于 2007-7-19 15:33 编辑 [/i]]