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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 这个问题在文华解决不了

   

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


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

主题:这个问题在文华解决不了

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


加好友 发短信
等级:新手上路 帖子:3 积分:92 威望:0 精华:0 注册:2010/7/9 15:44:29
这个问题在文华解决不了  发帖心情 Post By:2010/7/9 16:33:56    Post IP:59.42.147.204[只看该作者]

对于增加的条件下,分别开仓的问题。后来用if else 解决了。现在面临的问题是:在增加的条件满足的情况下,我需要执行另外的平仓条件指令。而不是把原来的bp变成sp。

 

A:=IFELSE((增加的条件),1,0);
B:=IFELSE((增加的条件),1,0);
B=0&&(C<***&&TIME>=0910&&TIME<1450)||A=1&&(C>***&&TIME>=0910&&TIME<1450),BK;
C>***||TIME>=1455,SP;
A=0&&(C>***&&TIME>=0910&&TIME<1450)||B=1&&(C<***&&TIME>=0910&&TIME<1450),SK;
C<***||TIME>=1455,BP;

 

看来整个公式要重新写,能否用if else 分别执行1、0呢?其中1是一套买卖指令,2是另外一套。两者的区分就在那个增加的条件。又或者,在下划线部分也增加一个if else 指令用来区分?

 

 

请教:上面的文字是我在文华发表的一个帖子,当然使用的也是文华语言。文华的斑竹说没有办法解决,想请教一下金字塔。我也是你们的用户,谢谢!


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


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
  发帖心情 Post By:2010/7/9 17:40:59    Post IP:116.227.49.224[只看该作者]

可否将问题再详细描述一下,因为你所说我们都不知所云


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


加好友 发短信
等级:新手上路 帖子:3 积分:92 威望:0 精华:0 注册:2010/7/9 15:44:29
简单的说法  发帖心情 Post By:2010/7/19 10:15:17    Post IP:59.42.86.125[只看该作者]

要不先换一种说法,上面这个交易程序,说白了就是想:

在某种条件下,采用震荡突破系统,在另外一种条件下,采用趋势系统?金字塔可以么?请指教,谢谢!


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


加好友 发短信
等级:新手上路 帖子:24 积分:221 威望:0 精华:0 注册:2010/4/9 14:10:48
  发帖心情 Post By:2010/7/19 10:36:10    Post IP:58.246.57.26[只看该作者]

使用IF THEN语法结构处理你的公式系统

if 震荡满足 then

begin

 //这里处理震荡突破系统代码

end

else

begin

//采用趋势系统

end


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


加好友 发短信
等级:新手上路 帖子:3 积分:92 威望:0 精华:0 注册:2010/7/9 15:44:29
  发帖心情 Post By:2010/7/19 21:25:39    Post IP:219.136.64.43[只看该作者]

EXITSHORT:C<MA2 ,TFILTER;
EXITLONG: C>MA1 ,TFILTER;

ENTERLONG: C<MA5 AND(DDD1<DDD2) ,TFILTER;
ENTERSHORT:C>MA4 AND(DDD1<DDD2 ) ,TFILTER;

这是震荡系统;

EXITSHORT:C>MA2 ,TFILTER;
EXITLONG: C<MA1 ,TFILTER;

ENTERLONG: C<MA5 AND(DDD1>=DDD2) ,TFILTER;
ENTERSHORT:C>MA4 AND(DDD1>=DDD2 ) ,TFILTER;

这是趋势系统;

 

判定是趋势还是震荡是DDD指标对于前一周期的大小或相等。那么,能否这样写:

 

IF (DDD1<DDD2),THEN BEGIN

EXITSHORT:C<MA2 ,TFILTER;
EXITLONG: C>MA1 ,TFILTER;

ENTERLONG: C<MA5 ,TFILTER;
ENTERSHORT:C>MA4  ,TFILTER;

ELSE

BEGIN

EXITSHORT:C>MA2 ,TFILTER;
EXITLONG: C<MA1 ,TFILTER;

ENTERLONG: C<MA5 AND(DDD1>=DDD2) ,TFILTER;
ENTERSHORT:C>MA4 AND(DDD1>=DDD2 ) ,TFILTER;

END

请老师指教!谢谢!

[此贴子已经被作者于2010-7-19 21:29:10编辑过]

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


加好友 发短信
等级:新手上路 帖子:13 积分:160 威望:0 精华:0 注册:2010/7/18 9:57:51
  发帖心情 Post By:2010/7/20 1:09:28    Post IP:113.128.96.168[只看该作者]

好复杂啊!学习一下!

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


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
  发帖心情 Post By:2010/7/20 11:07:33    Post IP:58.246.57.26[只看该作者]

经过修正的公式如下:请仔细对照之前的区别

IF (DDD1<DDD2),THEN BEGIN

EXITSHORT:C<MA2 ,TFILTER;
EXITLONG: C>MA1 ,TFILTER;

ENTERLONG: C<MA5 ,TFILTER;
ENTERSHORT:C>MA4  ,TFILTER;
END
ELSE

BEGIN

EXITSHORT:=C>MA2 ,TFILTER;
EXITLONG:= C<MA1 ,TFILTER;

ENTERLONG:= C<MA5 AND(DDD1>=DDD2) ,TFILTER;
ENTERSHORT:=C>MA4 AND(DDD1>=DDD2 ) ,TFILTER;

END


 回到顶部