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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 如何得到特定条件下开仓以来的周期数?

   

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


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

主题:如何得到特定条件下开仓以来的周期数?

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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
如何得到特定条件下开仓以来的周期数?  发帖心情 Post By:2015/5/10 22:08:15    Post IP:183.62.57.238[显示全部帖子]

连续n笔以上(n大于等于2笔)都是亏损,怎么得到第一笔亏损交易,开仓至今的周期数(即K线根数)?



[此贴子已经被作者于2015/5/10 22:08:55编辑过]

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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
  发帖心情 Post By:2015/5/11 10:09:55    Post IP:112.96.100.90[显示全部帖子]

这个nn是第一次亏损平仓以来的周期数吧,我想得到是开仓以来的周期数。

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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
  发帖心情 Post By:2015/5/16 13:08:44    Post IP:183.62.57.200[显示全部帖子]

上面的公式不能用于平仓即反手,用于反手的策略上,该怎么改写?



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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
  发帖心情 Post By:2015/5/16 13:17:27    Post IP:183.62.57.200[显示全部帖子]

我的代码如下,是平仓即反手,但加入了止损,按下面的写,记录不了连亏次数。

variable:cishu=0;//记录连亏次数

if PK then begin
平空:SELLSHORT(1,SS,THISCLOSE);                  //平空信号
if NUMPROFIT(1)>0 then cishu:=0;
if NUMPROFIT(1)<0 then cishu:=cishu+1;
end

if KD and holding=0 then begin
开多:BUY(1,SS,THISCLOSE);           //开多信号
end
if PD then begin
平多:SELL(1,SS,THISCLOSE);                       //平多信号
if NUMPROFIT(1)>0 then cishu:=0;
if NUMPROFIT(1)<0 then cishu:=cishu+1;
end

if KK and holding=0 then begin
开空:BUYSHORT(1,SS,THISCLOSE);     //开空信号
end


//多头止损
IF ENTERBARS>0 AND HOLDING>0  THEN BEGIN        
    IF C<stoploss THEN BEGIN 
       多头止损:SELL(1,HOLDING,THISCLOSE);      
if NUMPROFIT(1)<0 then cishu:=cishu+1;
   END
END


//空头止损
IF ENTERBARS>0 AND HOLDING<0  THEN BEGIN        
    IF C>stoploss THEN BEGIN 
       空头止损:SELLshort(1,HOLDING,THISCLOSE);
       if NUMPROFIT(1)<0 then cishu:=cishu+1; 
    END
END

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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
  发帖心情 Post By:2015/5/16 13:18:04    Post IP:183.62.57.200[显示全部帖子]

准确的说,是记录的连亏次数是错的

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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
  发帖心情 Post By:2015/5/16 13:23:00    Post IP:183.62.57.200[显示全部帖子]

排版的比较差,将就的看了

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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
  发帖心情 Post By:2015/5/18 10:49:35    Post IP:14.23.94.2[显示全部帖子]

if PK and holding<0 then begin
 
pk里面不要加持仓判断,持仓判断写直接写在if判断里面

___________________

你说的不就是我上面代码写的么,得到的交易次数不对,只要pk条件满足,记录的亏损交易次数就会继续增加。



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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
  发帖心情 Post By:2015/5/18 10:50:56    Post IP:14.23.94.2[显示全部帖子]

意思是
if PK then begin
平空:SELLSHORT(1,SS,THISCLOSE);                  //平空信号
if holding=0 and NUMPROFIT(1)>0 then cishu:=0;
if holding=0 and NUMPROFIT(1)<0 then cishu:=cishu+1;
end

是这样?

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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
  发帖心情 Post By:2015/5/18 12:34:04    Post IP:14.23.94.2[显示全部帖子]

我再重复下我碰到的问题,我想同时实现平仓即反手,以及正确记录连亏次数

2楼的代码不能实现平仓即反手

6楼的代码可以平仓即反手,但不能正确记录连亏次数

这样写:

if PK and holding<0 then begin
平空:SELLSHORT(1,SS,THISCLOSE);                  //平空信号
if NUMPROFIT(1)>0 then cishu:=0;
if NUMPROFIT(1)<0 then cishu:=cishu+1;
end

if PD and holding>0 then begin
平多:SELL(1,SS,THISCLOSE);                       //平多信号
if NUMPROFIT(1)>0 then cishu:=0;
if NUMPROFIT(1)<0 then cishu:=cishu+1;
end

这样能实现平仓即反手吗?




 回到顶部