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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → [求助]Tick周期上的同周期同时出现开平仓问题

   

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


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

主题:[求助]Tick周期上的同周期同时出现开平仓问题

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


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
[求助]Tick周期上的同周期同时出现开平仓问题  发帖心情 Post By:2010/9/24 11:03:34 [显示全部帖子]

le:=rand(2)=1;
lx:=abs(enterprice-close)>=2*mindiff;

se:=rand(2)=2;
sx:=abs(enterprice-close)>=2*mindiff;

buy(holding=0 and le,1,limitr,close);
sell(holding>0 and lx,holding,limitr,close);

buyshort(holding=0 and se,1,limitr,close);
sellshort(holding<0 and sx,holding,limitr,close);

资产:asset,noaxis,colorred;

 

 

这段随机开仓,2跳止盈止损的策略,应用在Tick周期,为什么有大量的平仓都在当前bar,如图?

 

应用在其他周期也一样,有很多在当前bar平仓


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


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2010/9/24 11:07:22 [显示全部帖子]

以下是引用admin在2010-9-24 11:06:13的发言:
这种情况说明你的开平仓策略在同一个周期满足,请使用TYPE函数对开平仓条件进行过滤

平仓策略是:abs(enterprice-close)>=2*mindiff,怎么可能在同一个bar上满足这个条件?


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


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2010/9/24 11:17:55 [显示全部帖子]

以下是引用admin在2010-9-24 11:09:27的发言:

这种简单的问题,使用金字塔的调试技巧很容易就能查出问题的

金字塔公式编写调试

http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=1246&page=1&star=1

le:=rand(2)=1;
lx:=enterbars>0 and abs(enterprice-close)>=2*mindiff;

se:=rand(2)=2;
sx:=enterbars>0 and abs(enterprice-close)>=2*mindiff;

buy(holding=0 and le,1,limitr,close);
debugfile2('c:\log.txt','close=%.0f',close,0);
debugfile2('c:\log.txt','enterprice=%.0f',enterprice,0);

sell(holding>0 and lx,holding,limitr,close);
buyshort(holding=0 and se,1,limitr,close);
sellshort(holding<0 and sx,holding,limitr,close);

资产:asset,noaxis,colorred;
 

 

log.txt:

enterprice=26395
close=26660
enterprice=26395
close=26665
enterprice=26395
close=26655
enterprice=26395
close=26660
enterprice=26395
close=26665
enterprice=26395
close=26665
enterprice=26395
close=26665
enterprice=26395
close=26665

 

所有的enterprice都等于26395,什么原因?

 

[此贴子已经被作者于2010-9-24 11:21:23编辑过]

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


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2010/9/24 11:26:26 [显示全部帖子]

以下是引用admin在2010-9-24 11:20:00的发言:

图表交易的公式调试请用LINETHICK0控制符,请按照教程说的方法调试,不要自己乱想花样,再说你完全扭曲了DEBUFILE2函数的用法

[此贴子已经被作者于2010-9-24 11:20:36编辑过]

图片点击可在新窗口打开查看

le:=rand(2)=1;
lx:abs(enterprice-close)>=2*mindiff,linethick0;

se:=rand(2)=2;
sx:abs(enterprice-close)>=2*mindiff,linethick0;

buy(holding=0 and le,1,limitr,close);
sell(holding>0 and lx,holding,limitr,close);
buyshort(holding=0 and se,1,limitr,close);
sellshort(holding<0 and sx,holding,limitr,close);

资产:asset,noaxis,colorred;

开仓价:enterprice,linethick0;
收盘价:close,linethick0
;

 

明显不对呀,enterprice-close=0,abs(0)=0,怎么可能大于2*mindiff?

[此贴子已经被作者于2010-9-24 11:30:53编辑过]

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


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2010/9/24 11:57:14 [显示全部帖子]

以下是引用admin在2010-9-24 11:50:07的发言:

le:=rand(2)=1;
lx:abs(enterprice-close)>=2*mindiff,linethick0;
ddd:mindiff,linethick0;

se:=rand(2)=2;
sx:abs(enterprice-close)>=2*mindiff,linethick0;
aa:enterprice,linethick0;
bb:close,linethick0;

buy(holding=0 and le,1,limitr,close);
sell(holding>0 and lx,holding,limitr,close);

buyshort(holding=0 and se,1,limitr,close);
sellshort(holding<0 and sx,holding,limitr,close);

资产:asset,noaxis,colorred;

 
请你仔细检查AA,BB变量的变化

明白aa和bb的位置应该写在交易函数之前。如图,enterprice和close倒是对的上了,但是问题是明明在同一个Tick上开平仓的怎么会开仓的enterprice和平仓的close不一样呢

图片点击可在新窗口打开查看

[此贴子已经被作者于2010-9-24 11:58:59编辑过]

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


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2010/9/24 16:12:26 [显示全部帖子]

以下是引用admin在2010-9-24 15:32:00的发言:
建议你使用ENTERLONG交易系统。

为什么?


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


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2010/9/24 18:21:28 [显示全部帖子]

以下是引用admin在2010-9-24 18:07:03的发言:

因为感觉你的公式编写基础还较为不是非常适合现在就做BUY等带头寸管理的策略。

你可以先从基础开始,日后参加我们的收费培训计划,逐步提高自己的编程能力

可以,但是您先帮我把这个问题解决吧,谢谢了。


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


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2010/9/24 19:16:25 [显示全部帖子]

以下是引用admin在2010-9-24 18:48:03的发言:
 

le:=rand(2)=1;

se:=rand(2)=2;

这都是有问题的,因为你不可能得到每个周期的的随机数字,因为金字塔的随机数字是用的时间做随机因子,整个数据计算下来因为时间很短,都是同一个数字。

会导致整个计算LE要么全是0,要么全是1

哦,明白。那如何做到每次交易都是随机开仓的?比如0为开多仓,1为开空仓。每次都是随机生成0或1,如何做到?谢谢


 回到顶部