以文本方式查看主题
- 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp)
-- 公式模型编写问题提交 (http://www.weistock.com/bbs/list.asp?boardid=4)
---- 求个K线标记代码 (http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=160821)
|
-- 作者:hj007s
-- 发布时间:2018/1/3 12:44:18
-- 求个K线标记代码
我想做个当5日均线下穿10日均线后,第一根阴线记为1,第二根记为2,连续阴线过后出现第一根阳线后清零,就是个全局变量的一个计数,请问应该怎么写? 谢谢大神!!!
|
-- 作者:FireScript
-- 发布时间:2018/1/3 13:14:39
--
死叉所在的K是否在统计范围内。就是说死叉本身是阴线。
|
-- 作者:hj007s
-- 发布时间:2018/1/3 13:24:13
--
死叉算信号,信号那根K线不算,出信号的那根K线后的第一根开始算
|
-- 作者:FireScript
-- 发布时间:2018/1/3 13:35:14
--
做了一个参考样例,且用绘图函数标记了位置,方便你查看。全局变量没用到。
sc:cross(ma(c,10),ma(c,5));//死叉 lastSc:BARSLAST(sc);//上一次死叉的位置,在死叉当根K上返回0
U:=count(c<o,lastSc);//统计阴线数,阴线按照严格的c<o来确立。 B:=ref(c<o,1);//ref和count不能在if里面直接用,这里放到if外部处理。
if LASTSC<>0 then begin if u=1 and c<o then DRAWTEXT(1,low ,\'OK\' );//当前是阴线并且死叉以来阴线数是1,说明当前K是第一个阴线 if u=2 and c<o and b then DRAWTEXT(1,low ,\'OK\' );//当前是阴线并且死叉以来阴线数是2,且上一个K是阴线说明是连续的2个阴线 end
|
-- 作者:hj007s
-- 发布时间:2018/1/3 13:36:28
--
谢谢,我看看
|
-- 作者:hj007s
-- 发布时间:2018/1/3 13:42:30
--
那个,我多添加了两个均线,MA5和MA10,sc:cross(ma(c,10),ma(c,5));//死叉 MA5:MA(C,5),NOAXIS; MA10:MA(C,10),NOAXIS; lastSc:BARSLAST(sc);//上一次死叉的位置,在死叉当根K上返回0 U:=count(c<o,lastSc);//统计阴线数,阴线按照严格的c<o来确立。 B:=ref(c<o,1);//ref和count不能在if里面直接用,这里放到if外部处理。 if LASTSC<>0 then begin if u=1 and c<o then DRAWTEXT(1,low ,\'OK\' );//当前是阴线并且死叉以来阴线数是1,说明当前K是第一个阴线 if u=2 and c<o and b then DRAWTEXT(1,low ,\'OK\' );//当前是阴线并且死叉以来阴线数是2,且上一个K是阴线说明是连续的2个阴线 end
在主图叠加上,我运用NOAXIS,但是指标还是被压缩了,请问如何解决?
|
-- 作者:FireScript
-- 发布时间:2018/1/3 14:05:57
--
指标被压缩了?在Y轴上右键-仅随K线变动,这个勾选上。
|
-- 作者:hj007s
-- 发布时间:2018/1/3 14:12:12
--
你看看,好像没用啊
此主题相关图片如下:qq截图20180103141124.png

|
-- 作者:FireScript
-- 发布时间:2018/1/3 14:19:37
--
你是多窗体。你在对应窗体的那个Y轴上操作下。也就是图中上面的窗体的Y轴上右键 然后设置。你可能是设置到了下面的那个窗体了。
|
-- 作者:hj007s
-- 发布时间:2018/1/3 14:53:34
--
谢谢,解决了!!!
|