以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  哪里出问题了?  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=175667)

--  作者:hyp354300
--  发布时间:2020/4/22 21:30:34
--  哪里出问题了?
 
INPUT:N(5),P(20),M(8);
DRAWGBK(1,COLORRGB(20,50,70),COLORRGB(100,150,180),1);
TBS:=POW(10,ABS(LOG(MINDIFF)));
BZ:=MOD(BARSSINCE(C),N);ZB:=BZ=0 OR BARPOS=1;
ZW:=BARSLAST(ZB),LINETHICK;
Zdg:=ZW=0 or ISLASTBAR;
Zwx:=0*c;
for i=datacount-1 downto lbound(Zdg) do
if Zdg[I] then
Zwx[I]:=0;
else
Zwx[I]:=Zwx[i+1]+1;
Zr:=BACKSET(ISLASTBAR,Zw+1)-ISLASTBAR;
Zwx:=refx(Zwx,1)+Zr,LINETHICK;
zq:=BARSLAST(ref(Zwx,1)=0 or BARPOS=1)+1;
Zo:=ref(o,Zw);
Zh:=hhv(h,Zw+1);
ZL:=LLv(L,Zw+1);
开:ROUND(ZO*TBS)/TBS,LINETHICK;
高:ROUND(refx(Zh,Zwx)*TBS)/TBS,,COLORFF,LINETHICK;
低:ROUND(refx(ZL,Zwx)*TBS)/TBS,COLORFF00,LINETHICK;
收:ROUND(refx(c,Zwx)*TBS)/TBS,,COLORFF00FF,LINETHICK;
振:ROUND((高-低)/低*TBS)/TBS*100,COLOR00FFFF,LINETHICK;
yt:=if(zq=1 and refx(zq,2)=1,13,if(refx(zq,1)=1 or zq=1,7,14));
STICKLINE(开>收,低,高,YT,0),COLORBBBAAA;
STICKLINE(开<=收,低,高,YT,0),COLORAA9ABB;
TJ:=CLOSE>OPEN or CLOSE=OPEN and CLOSE>REF(CLOSE,1);
STICKLINE(TJ,LOW,HIGH,1,0),ColorE9;
STICKLINE(TJ,LOW,CLOSE,8,0),Color80;
STICKLINE(TJ,LOW,CLOSE,6,0),ColorA5;
STICKLINE(TJ,LOW,CLOSE,4,0),ColorC0;
STICKLINE(TJ,LOW,CLOSE,2,0),ColorE6;
STICKLINE(NOT(TJ),HIGH,LOW,1,0),ColorAA00;
STICKLINE(NOT(TJ),CLOSE,OPEN,8,0),Color5000;
STICKLINE(NOT(TJ),CLOSE,OPEN,6,0),Color6600;
STICKLINE(NOT(TJ),CLOSE,OPEN,4,0),Color8000;
STICKLINE(NOT(TJ),CLOSE,OPEN,2,0),ColorA000;
DRAWTEXTEX(1,1,10,10,\'◎长阳真人◎\'),COLORAA00FF;
黄金生命线:MD(收,p),COLOREE0000;{黄金生命线}
var1:=MD(WMA(收,p),N);
MA1:=WMA(MA(黄金生命线,1),M);ma0:=黄金生命线;
股:PARTLINE(var1>REF(var1,2),var1), COLORRED, LINETHICK4;
币:PARTLINE(var1<REF(var1,2),var1), COLORGREEN, LINETHICK4;
变:PARTLINE(ABS(var1-REF(var1,1))/黄金生命线*10000<n,var1), COLORBLUE, LINETHICK4;
MA(收,5);MA(收,20);
I:=SYSPARAM(1);
DRAWTEXTEX(1,1,10,400,\'【 \'+NUMTOSTR(N,0)+\' 天 为一箱体(可调N)】\'),COLOR0099DD;
DRAWTEXTEX(1,1,10,500,\'◆ 本箱体开盘 \'+NUMTOSTR(开,2)),COLOR000000;
DRAWTEXTEX(1,1,10,600,\'◆ 本箱体收盘 \'+NUMTOSTR(收,2)),COLOR000000;
DRAWTEXTEX(1,1,10,700,\'◆ 本箱体最高 \'+NUMTOSTR(高,2)),COLOR000000;
DRAWTEXTEX(1,1,10,800,\'◆ 本箱体最低 \'+NUMTOSTR(低,2)),COLOR000000;
DRAWTEXTEX(1,1,10,900,\'◆ 本箱体振幅 \'+NUMTOSTR(振,2)),COLOR000000;

不显示矩形图片,原因在于
高:ROUND(refx(Zh,Zwx)*TBS)/TBS,,COLORFF,LINETHICK;
低:ROUND(refx(ZL,Zwx)*TBS)/TBS,COLORFF00,LINETHICK;
收:ROUND(refx(c,Zwx)*TBS)/TBS,,COLORFF00FF,LINETHICK;
这几个数据不对。
直接涉及到的函数有ROUND,POW,ABS,LOG(MINDIFF);
要不就是
for i=datacount-1 downto lbound(Zdg) do
if Zdg[I] then
Zwx[I]:=0;
else
这里错了?
可是其他股软可以使用啊?


--  作者:hyp354300
--  发布时间:2020/4/22 21:31:32
--  
 
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2020/4/22 21:32:07编辑过]

--  作者:FireScript
--  发布时间:2020/4/23 9:31:16
--  
 什么矩形图片?你标识下。否则我不知道你说的是缺少什么图形效果。
此外就是如果是其他软件的代码,我们不能保证完全兼容。程序化这块除了使用python,c++这种标准语言,各家自己的语句只能说是类似,相互之间还是有差异的。