以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- 怎样用程序表述:股票dm符合XG条件。 (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=163710) |
|
-- 作者:qq代人发帖 -- 发布时间:2018/5/29 14:12:34 -- 怎样用程序表述:股票dm符合XG条件。 假定选股条件XG:=CROSS(MA(C,10),(ma(c,20)):
bk:=\'A股板块\'; dm:=stkromblk(bk.k);//dm是股票代码 那么,怎样用程序表述:股票dm符合XG条件。谢谢! |
|
-- 作者:FireScript -- 发布时间:2018/5/29 14:22:37 -- 代码里面无需其他操作了。 你用条件选股的时候 指标公式如下: CROSS(MA(C,10),(ma(c,20)) 会默认将这个作为选股条件。 你可以参考 这里指标都是这种写法。 |
|
-- 作者:fjaxs303 -- 发布时间:2018/5/30 12:03:59 --
|
|
-- 作者:fjaxs303 -- 发布时间:2018/5/30 12:06:21 -- 老师: 我还是希望您帮助指导一下:股票符合XG条件 或者 符合XG条件的股票,怎样表述 万分感谢!
|
|
-- 作者:FireScript -- 发布时间:2018/5/30 13:32:33 -- 如果你监控的包含品种dm ,那么XG的计算就会包含对dm这个品种的判断,计算结果也就是表述了这个股票是否满足条件XG。 你只要拿你的公式去计算你要判断的品种就能进行判断这个股票是否满足你设置的条件。不清楚你到底要的是什么形式的结果? 或者说你是要在任意品种下都可以判断 品种dm是否满足xg条件?
|
|
-- 作者:fjaxs303 -- 发布时间:2018/5/30 15:14:26 -- 我试图这样写: bk:=\'A股板块\'; ss:=STKCOUNT( bk); dm:=stkromblk(bk.k); //dm是股票代码 for k=1 to ss do begin dn[k]:=dm; if xg and dn[k] then dx[q]:=dn[k]; end 数组DX[Q]就是符合XG条件选出来的股票集合。 请老师指点一下错在哪,怎么改?
|
|
-- 作者:FireScript -- 发布时间:2018/5/30 16:03:41 -- 指标A: XG:CROSS(MA(C,10),ma(c,20)); 当前运行指标: ss:=STKCOUNT( \'测试\'); VARIABLE:result[ss]:=\'\';//定义一个数组,并设置默认值是空字符串,数组长度按照版块品种数算 if ISLASTBAR //出于效率考虑,最后一个K进行计算。否则计算量有点大 then begin for k=1 to ss do begin dm:=STKFROMBLK(\'测试\',k); XG:=STKINDI(dm,\'A.XG\',0,6,0);//指定周期,品种。这里取日线,其他周期可参照函数说明去修改 if xg then begin result[k]:=dm;MSGOUT(1,dm); end //这里加了个输出,方便看到那个品种满足了 end end 指标A是单独建立的一个指标,用来被引用的。
|
|
-- 作者:FireScript -- 发布时间:2018/5/30 16:07:04 -- 测试了下,效果还可以。只是最终结果的那个数组不仅仅有保存的品种代码,也有原先默认值的空字符串,因为目前数组定义的时候必须指定长度,无法动态扩充。因此你使用的时候需要注意。亦或者你在循环里面做一个计数器,统计满足条件的品种有多少,这样后面使用哪个数组的时候也方便点。 |
|
-- 作者:fjaxs303 -- 发布时间:2018/5/30 16:44:57 -- 先谢谢了 |
|
-- 作者:fjaxs303 -- 发布时间:2018/5/31 13:08:48 -- 老师: 我编好后怎么看不见什么啊?
|