以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  阿火哥请进,请将这个转为逐K线模式下运行  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=47894)

--  作者:小兵过河
--  发布时间:2013/1/18 13:05:39
--  阿火哥请进,请将这个转为逐K线模式下运行

火哥,下面黄金分割代码在序列模式下可以运行,我想把这一段代码转成在逐K线模式下运行,应该怎么办?请帮忙写一段代码。

另外,它这一段代码参数是设的30,所以画的是30个周期的水平线,如果我想实现只在中间的10个周期画水平线,两头的各10个周期不画线,应该怎么实现?

先谢谢火哥,请多指导!


--  作者:小兵过河
--  发布时间:2013/1/18 13:08:19
--  
因为我觉得固定30周期这种画法不能满足实际情况,高低点出现后,N 周期应该是一个变量
--  作者:小兵过河
--  发布时间:2013/1/18 13:14:27
--  

晕,忘了把代码附上了图片点击可在新窗口打开查看

 


input:n(30,1,1000);
HH:=HHV(H,N);
LL:=LLV(L,N);
<%

VH=FFL.VARDATA("HH")

VL=FFL.VARDATA("LL")

VN=FFL.VARDATA("N")

LAST=UBOUND(VH)

IF VN>LAST THEN VN=LAST+1

FOR I=LAST TO LAST-VN+1 STEP-1

    VH(I)=VH(LAST)

    VL(I)=VL(LAST)

NEXT

FFL.VARDATA("HH")=VH

FFL.VARDATA("LL")=VL

FFL.VARSTARTINDEX("HH")=LAST-VN+1

FFL.VARSTARTINDEX("LL")=LAST-VN+1

%>


HH,color009999;
DRAWTEXT(c>0  and ISLASTBAR=1,HH,\'【黄金分割】↑\'),color009999;
DRAWNUMBER(BARSCOUNT(LL)=N-(N-1),HH,HH,2),align2,color009999;
LL+((HH-LL)*0.809),pointdot,linethick1,coloryellow;
DRAWTEXT(c>0  and ISLASTBAR=1,LL+((HH-LL)*0.809),\' 0.809↑\'),color009999;
DRAWNUMBER(BARSCOUNT(LL)=N-(N-1),LL+((HH-LL)*0.809),LL+((HH-LL)*0.809),2),align2,color009999;
LL+((HH-LL)*0.764),pointdot,linethick1,coloryellow;
DRAWTEXT(c>0  and ISLASTBAR=1,LL+((HH-LL)*0.764),\' 0.764↑\'),color009999;
DRAWNUMBER(BARSCOUNT(LL)=N-(N-1),LL+((HH-LL)*0.764),LL+((HH-LL)*0.764),2),align2,color009999;
LL+((HH-LL)*0.618),pointdot,linethick1,coloryellow;
DRAWTEXT(c>0  and ISLASTBAR=1,LL+((HH-LL)*0.618),\' 0.618↑\'),color009999;
DRAWNUMBER(BARSCOUNT(LL)=N-(N-1),LL+((HH-LL)*0.618),LL+((HH-LL)*0.618),2),align2,color009999;
LL+((HH-LL)*0.500),pointdot,linethick1,coloryellow;
DRAWTEXT(c>0  and ISLASTBAR=1,LL+((HH-LL)*0.500),\' 0.500↑\'),color009999;
DRAWNUMBER(BARSCOUNT(LL)=N-(N-1),LL+((HH-LL)*0.500),LL+((HH-LL)*0.500),2),align2,color009999;
LL+((HH-LL)*0.382),pointdot,linethick1,coloryellow;
DRAWTEXT(c>0  and ISLASTBAR=1,LL+((HH-LL)*0.382),\' 0.382↑\'),color009999;
DRAWNUMBER(BARSCOUNT(LL)=N-(N-1),LL+((HH-LL)*0.382),LL+((HH-LL)*0.382),2),align2,color009999;
LL+((HH-LL)*0.333),pointdot,linethick1,coloryellow;
DRAWTEXT(c>0  and ISLASTBAR=1,LL+((HH-LL)*0.333),\' 0.333↑\'),color009999;
DRAWNUMBER(BARSCOUNT(LL)=N-(N-1),LL+((HH-LL)*0.333),LL+((HH-LL)*0.333),2),align2,color009999;
LL+((HH-LL)*0.236),pointdot,linethick1,coloryellow;
DRAWTEXT(c>0  and ISLASTBAR=1,LL+((HH-LL)*0.236),\' 0.236↑\'),color009999;
DRAWNUMBER(BARSCOUNT(LL)=N-(N-1),LL+((HH-LL)*0.236),LL+((HH-LL)*0.236),2),align2,color009999;
LL+((HH-LL)*0.191),pointdot,linethick1,coloryellow;
DRAWTEXT(c>0  and ISLASTBAR=1,LL+((HH-LL)*0.191),\' 0.191↑\'),color009999;
DRAWNUMBER(BARSCOUNT(LL)=N-(N-1),LL+((HH-LL)*0.191),LL+((HH-LL)*0.191),2),align2,color009999;
LL,color009999;
DRAWTEXT(c>0  and ISLASTBAR=1,LL,\'〖底部起点〗↑\'),color009999;
DRAWNUMBER(BARSCOUNT(LL)=N-(N-1),LL,LL,2),align2,coloryellow;

 


--  作者:jinzhe
--  发布时间:2013/1/18 14:32:29
--  

 把<%  到%> 之间的删掉


--  作者:小兵过河
--  发布时间:2013/1/18 15:03:38
--  

老大,删掉就不能正常显示了?

 


--  作者:小兵过河
--  发布时间:2013/1/18 15:07:28
--  
这段代码好像就是控制显示范围的,删掉就失去意义了,做做加法不能做减法啊!请高手帮助