在板块'AAA'里选择涨幅排名前5的股票,怎么写?(后台程序化)
需要用自定义数据处理。但是这个没办法一次把排名前五的品种读取出来。只能是检查每个品种,然后判断它的排名是否在前五名范围内。
取得指定品种以序号为参数的自定义数据.用法:
SELFDATALABELN(N,CODE),N为自定义数据序号,CODE为品种代码.
例如:SELFDATALABELN(1,'IF00')取序号为1的股指连续的自定义数据
该函数仅对证券相关的单值数值;单值字符串;证券相关序列这3项自定义数据有效,对于横向统计类型的自定数据,效果与SELFDATALABELN函数相同。
你能用后台程序化的话,也能用股票池了啊。你把涨幅定义成指标,直接用股票池对版块选股,然后加入到指定版块。这样更方便啊。
股票池功能确实不错,但不知什么原因,数据始终滞后,或者没有更新(我程序在云服务器里,就没有关过),使得选出来的明显不符合要求。同样在数据保存同样情况下,我使用后台程序,均能较好反映当前情况,所以,我一直是想办法在后台程序中实现自己的要求。股票池我认为就是鸡肋!不知我说得对不,你们是怎么应对的,总不可能在使用股票池时,每次都下载数据吧。
我也想用股票池,但请贵公司努力提升该功能使用的保障能力,尤其在数据更新上!
新建一个指标ZF:

此主题相关图片如下:temp.png

然后新建一个自定义数据,类型选择证券相关,并将指标关联到ZF指标:

此主题相关图片如下:temp.png

然后按照如下方式去勾选:

此主题相关图片如下:temp.png

这样自定义数据就设置好。设置好了之后,刷新数据,然后点击修改数据 就能看到某个品种在某个日期上 按照指标ZF的排名情况了:

此主题相关图片如下:temp.png


此主题相关图片如下:temp.png
[此贴子已经被作者于2019/12/20 15:56:04编辑过]
在具体代码中调用上面的结果:
x:SELFDATAS('DATA1');//
DATA1是自定义数据的名称。
这样在每个K上都会显示这个品种在指定日期或时间上的涨幅排名结果。

此主题相关图片如下:temp.png

现在你只需要新建一个后台程序化,监控一个版块品种,然后根据X值情况来进行操作即可。比如加入到板块中。
If x<=10 then ADDTOBLOCK(STKLABEL,'涨幅排名前10');
这个也是可以的。但是这个只有最新排序结果,历史的回溯不到。
然后引用的话需要把这个DYNAINFO(14) 单独赋给一个变量。
比如指标A:
X:DYNAINFO(14);
然后在股票池里就选择指标A的变量X进行排序。