以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- [求助]多周期引用测试通过图表无显示 (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=165762) |
-- 作者:qhds -- 发布时间:2018/10/7 1:17:31 -- [求助]多周期引用测试通过图表无显示 引用 公式一名:macddzq DIFF :=EMA(CLOSE,12) - EMA(CLOSE,26); DEA :=EMA(DIFF,9); MACD1 :=2*(DIFF-DEA); M30:=ref(macd1,1) > 0 and macd1>ref(macd1,1),close; //MACD1上一周期大于0,且本周期MACD1大于上一周期 M15:=ref(macd1,1) > 0 and macd1>ref(macd1,1),close; //MACD1上一周期大于0,且本周期MACD1大于上一周期 M20:=ref(macd1,1) < 0 and macd1<ref(macd1,1),close; //MACD1上一周期小于0,且本周期MACD1小于上一周期 M21:=ref(macd1,1) < 0 and macd1<ref(macd1,1),close; //MACD1上一周期小于0,且本周期MACD1小于上一周期 公式2 DIFF :=EMA(CLOSE,12) - EMA(CLOSE,26); DEA :=EMA(DIFF,9); MACD1 :=2*(DIFF-DEA); M31:=STKINDI(\'\',\'macddzq.M30\',0,4); //30分钟MACD1上一周期大于0,且本周期MACD1大于上一周期 M16:=STKINDI(\'\',\'macddzq.M15\',0,3); //15分钟MACD1上一周期大于0,且本周期MACD1大于上一周期 M330:=STKINDI(\'\',\'macddzq.M20\',0,4); //30分钟MACD1上一周期小于0,且本周期MACD1小于上一周期 M150:=STKINDI(\'\',\'macddzq.M21\',0,3); //15分钟MACD1上一周期小于0,且本周期MACD1小于上一周期 AA:=DIFF>0; MM:=DIFF<0; 手数:=ss; //交易条件 if M31 AND M16 AND AA then begin // sellshort(1,手数,market); buy(holding=0,手数,market); end if M330 AND M150 AND MM then begin sell(1,手数,market); buyshort(holding=0,手数,market); end 当前持仓:HOLDING,COLORGRAY,LINETHICK0; 当前资产:ASSET,NOAXIS,COLORGRAY; 测试通过,加载图表上没有反应,是不是哪里不对劲大神们?交易当前周期 1 3 5分钟都没反应 交易思想是,当前图表比如 5分钟周期DIFF>0,判断30分钟MACD大于0,且比上一周期MACD值大,15分钟也是,开多 5分钟周期DIFF<0,判断30分钟MACD<0,且比上一周期MACD值小,15分钟也是,开空
|
-- 作者:wenarm -- 发布时间:2018/10/7 22:25:59 -- M30:=ref(macd1,1) > 0 and macd1>ref(macd1,1),close; 这是个条件语句,你在后面跟着",close;"是什么意思? 如果你引用的均是同一个条件,在被引用的macddzq公式中,不需要重复写,只要引用公式中控制好周期和偏移量即可。 注:被引用的变量,必须使用":"赋值,你用的全部是":=" |