欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 请帮忙看看有啥问题?

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有2752人关注过本帖树形打印复制链接

主题:请帮忙看看有啥问题?

帅哥哟,离线,有人找我吗?
FF
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:77 积分:0 威望:0 精华:0 注册:2017/10/15 22:53:33
请帮忙看看有啥问题?  发帖心情 Post By:2017/11/14 15:04:02    Post IP:171.118.194.92[只看该作者]

请帮忙看看有啥问题?我的思路是:先把E2>0的股票选到一个板块中,然后按E2排序,取前10位的股票下单....
//该模型运行于后台程序化模式
IF CURRENTTIME=092500 THEN CLEARBLOCK('预警板块');

TA01:=AMOUNT/VOL;
TA02:=VOL/HHV(VOL,30);
TA03:=(C-REF(C,1))/REF(C,1);
TA04:=(C-O)/O;
TA05:=IF(H-C>(C-O)/3,1,0);
TA06:=IF(TA02>0.6 AND TA04>0 AND TA05=1,1,0);
TA07:=VOL/REF(VOL,1);
TA08:=IF(REF(TA06,1)=1,1,0);



E2:=IF(TA08=1 AND CURRENTDATE=DATE,TA07*1.45,0);


//条件判断

IF  E2>0.08 THEN ADDTOBLOCK(DM,'预警板块');

//仓位及资金管理

AA01:=STKINDI('','市场状态.TDC',0,6);

TB00:=TINSORT('预警板块','新金雀.E2' ,1);
TB01:=TCASH;//可用资金
TB02:=TASSET;//帐户市值
TB03:=TB02*(100-Y1)/100;
TB04:=TB03/Y2;
TB05:=INTPART(TB04/C);
TB06:=INTPART(Y2*0.8);
TB07:=IF(AA01>0.65 AND TB01>TB04,1,IF(AA01<=0.65 AND AA01>=0.15 AND TB01>TB03/2,1,IF(AA01<0.15 AND TB01>TB04*TB06,1,0)));

TBUY(TB00<10 AND TB07=1 AND TBUYHOLDINGEX('','' ,0 )<TB05,TB05,MKT);
//
IF TC06>1 AND C<TC09 THEN BEGIN
TSELL(1,TBUYHOLDINGEX('','',0 ),MKT);
END
//



 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2017/11/14 15:12:05    Post IP:180.169.30.6[只看该作者]

我觉得你这个需求用股票池+后台会好点。

1.把E2的计算放在选股公式里面,利用股票池对品种进行选择和排序。 http://www.weistock.com/WeisoftHelp/index.html   -程序化交易-启动股票池。 主要还是要看看股票池的功能如何使用。

2.再用后台直接监控股票池的选股结果。 后台代码可以只保持上面的仓位资金管理这块的代码。

 

你可以考虑下我的建议。



命数如织,当如磐石。
 回到顶部