以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (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=167937)

--  作者:幸福橙子
--  发布时间:2019/1/24 16:56:13
--  金字塔新手求教,麻烦老师指导
MA1 : STKINDIEX(\'\',\'MA.MA1(5,30,0,0)\',0,6,0,150);
MA2 : STKINDIEX(\'\',\'MA.MA2(5,30,0,0)\',0,6,0,150);
DIFF := STKINDIEX(\'\',\'MACD.DIFF(12,26,9)\',0,6,0,150);
DEA := STKINDIEX(\'\',\'MACD.DEA(12,26,9)\',0,6,0,150);
COND1 := MA1 > MA2 AND DIFF > DEA;//LONG
COND2 := MA1 < MA2 AND DIFF < DEA;//SHORT
IF COND1 THEN SWITH := 1;
IF COND2 THEN SWITH := -1;
IF COND1+COND2 = 0 THEN SWITH :=0;
问题有两个,我调用1905的甲醇合约,然后MA1从6月份开始,MA2从7月份开始,怎么保持连续状态呢,使得MA1从一开始就能跟图标上一样读到连续的数,使1805和1905连起来
第二个是 SWITH 这个地方是不是错了,这个赋值最后图标显示一直是0呢。

--  作者:FireScript
--  发布时间:2019/1/24 17:06:18
--  
 
 你是指ma1,ma2的指标线不是完全连续的吗?你设置了引用的量,就只能引用到部分了。
MA1 : STKINDIEX(\'\',\'MA.MA1(5,30,0,0)\',0,6,0,150);



--  作者:幸福橙子
--  发布时间:2019/1/24 18:34:53
--  
谢谢
还有一个地方
IF COND1 THEN SWITH := 1;
IF COND2 THEN SWITH := -1;
IF COND1+COND2 = 0 THEN SWITH :=0;
这样为什么只能显示SWITH的值为零呢,这种赋值因该怎么写?

--  作者:幸福橙子
--  发布时间:2019/1/24 22:38:05
--  
已经解决