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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 请教:交易系统中IF语句的问题

   

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


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

主题:请教:交易系统中IF语句的问题

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


加好友 发短信
等级:新手上路 帖子:63 积分:465 威望:0 精华:0 注册:2009/12/8 10:49:21
请教:交易系统中IF语句的问题  发帖心情 Post By:2010/3/21 16:37:00    Post IP:116.25.220.67[显示全部帖子]

数据:上证指数

日期         收盘         8日均线
2010.3.8  3053.23  3059.772  

2010.3.9  3069.14  3060.837   (收盘上穿均线)
2010.3.10 3048.93  3060.461  (收盘下穿均线)

公式1:

ma1:ma(c,8);
if holding=0 and cross(c,ma1) then buy(1,100,thisclose);
else if holding>0 and cross(ma1,c) then sell(1,holding,thisclose);

 

问题:为什么2010.3.9 出现"开多"信号,3.10无"平多"信号,若把上面的公式1改为下面的公式2或公式3,则3.10会出现“平多”信号。

 

公式2:

ma1:ma(c,8);
if holding>0 and cross(ma1,c) then sell(1,holding,thisclose);
else if holding=0 and cross(c,ma1) then buy(1,100,thisclose);

 

公式3:

ma1:ma(c,8);
buy(holding=0 and cross(c,ma1),100,thisclose);
sell(holding>0 and cross(ma1,c),holding,thisclose);

 

 

 

 

PS:在大智慧下,上述公式1和公式2的结果是一样的:3.10出现平多信号.

 

DZH公式1:

ma1:ma(c,8);
if holding=0 and cross(c,ma1) then buy(100,thisclose);
else if holding>0 and cross(ma1,c) then sell(holding,thisclose);

 

DZH公式2:

ma1:ma(c,8);
if holding>0 and cross(ma1,c) then sell(holding,thisclose);
else if holding=0 and cross(c,ma1) then buy(100,thisclose);

 

 

 

先谢谢啊!

[此贴子已经被作者于2010-3-21 16:39:01编辑过]

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


加好友 发短信
等级:新手上路 帖子:63 积分:465 威望:0 精华:0 注册:2009/12/8 10:49:21
  发帖心情 Post By:2010/3/21 23:19:37    Post IP:116.25.220.67[显示全部帖子]

谢谢轮回大侠。你的公式能解决我上面的问题。这个问题实际上是我简化了的,我本来想要的是下面这种非此即彼的选择关系:

if A then

B

else if C then

D

即,如果条件A成立,则执行B,不再检查条件C是否成立;否则,若条件C成立,则执行D。

可是jzt似乎不是这么执行的。

 

[此贴子已经被作者于2010-3-21 23:20:59编辑过]

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


加好友 发短信
等级:新手上路 帖子:63 积分:465 威望:0 精华:0 注册:2009/12/8 10:49:21
  发帖心情 Post By:2010/3/22 0:02:38    Post IP:116.25.220.67[显示全部帖子]

明白了,我的实例包括了N个if ... then ... else if ... then ...  晕, 我自己再改一改,再次谢谢轮回和admin!


 回到顶部