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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → [求助]用交易盈亏NUMPROFIT(1)能在图表正确显示信号,但公式测试时并没用显示出,只是显示旧程序信号。

   

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


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

主题:[求助]用交易盈亏NUMPROFIT(1)能在图表正确显示信号,但公式测试时并没用显示出,只是显示旧程序信号。

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


加好友 发短信
等级:新手上路 帖子:19 积分:157 威望:0 精华:0 注册:2011/7/28 13:34:21
[求助]用交易盈亏NUMPROFIT(1)能在图表正确显示信号,但公式测试时并没用显示出,只是显示旧程序信号。  发帖心情 Post By:2011/11/17 10:37:17    Post IP:59.41.221.13[显示全部帖子]

用交易盈亏NUMPROFIT(1)能在图表正确显示信号,但公式测试时并没用显示出,只是显示旧程序信号。为何?

测试对象:股指连续,测试时间为2011.10.26,分析周期为1分钟。注:蓝色的加的部分。

公式举例:

 

原来的程序:

//资金管理
持仓:=holding;
上次开仓价:=ENTERPRICE;
时价差:=C-上次开仓价;
平仓历时:=EXITBARS;
当日:=DATE=REF(DATE,平仓历时),LINETHICK0;


//多头
开多条件1:=CROSS( MA(C,5) ,MA(C,25)) ; 
IF  开多条件1 THEN
BEGIN
开多1:BUY (持仓=0,1,THISCLOSE),COLORRED;//开多仓 
END

开多条件2:=CROSS( MA(C,20) ,MA(C,10))   AND  当日上笔盈大; 
IF  开多条件2 THEN
BEGIN
开多2:BUY (持仓=0,1,THISCLOSE),COLORWHITE;//开多仓 
END

IF  -时价差>=10 THEN
BEGIN
SELL( 持仓>0 ,0,THISCLOSE),COLORGREEN;//多头止损
END

//多头止盈条件
平多条件:=CROSS( MA(C,30) ,MA(C,25));
IF  平多条件 THEN
    BEGIN
    SELL (持仓>0,0,THISCLOSE),COLORGREEN;
    END

//尾盘清空
IF TIME>=151400 THEN BEGIN
SELL(HOLDING>0,0,MARKET);
SELLSHORT(HOLDING<0,0,MARKET);
END

 

 

 

加多交易盈亏的程序

//资金管理
持仓:=holding;
上次开仓价:=ENTERPRICE;
时价差:=C-上次开仓价;
平仓历时:=EXITBARS;
当日:=DATE=REF(DATE,平仓历时),LINETHICK0;


交易盈亏:NUMPROFIT(1),LINETHICK0;


当日上笔盈大:当日 AND 交易盈亏/300>=10,LINETHICK0;
//多头
开多条件1:=CROSS( MA(C,5) ,MA(C,25)) ; 
IF  开多条件1 THEN
BEGIN
开多1:BUY (持仓=0,1,THISCLOSE),COLORRED;//开多仓 
END

开多条件2:=CROSS( MA(C,20) ,MA(C,10))   AND  当日上笔盈大; 
IF  开多条件2 THEN
BEGIN
开多2:BUY (持仓=0,1,THISCLOSE),COLORWHITE;//开多仓 
END

IF  -时价差>=10 THEN
BEGIN
SELL( 持仓>0 ,0,THISCLOSE),COLORGREEN;//多头止损
END

//多头止盈条件
平多条件:=CROSS( MA(C,30) ,MA(C,25));
IF  平多条件 THEN
    BEGIN
    SELL (持仓>0,0,THISCLOSE),COLORGREEN;
    END

//尾盘清空
IF TIME>=151400 THEN BEGIN
SELL(HOLDING>0,0,MARKET);
SELLSHORT(HOLDING<0,0,MARKET);
END

 

 

加了“交易盈亏”函数后在图标上,分别在10:36和13:59显示有“开多2”的信号。

但公式测试结果和旧公式是一样的,没用上面的显示信号。

请问为何,是“交易盈亏”NUMPROFIT(1)的问题吗?

 

 


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


加好友 发短信
等级:新手上路 帖子:19 积分:157 威望:0 精华:0 注册:2011/7/28 13:34:21
  发帖心情 Post By:2011/11/18 9:37:17    Post IP:59.41.221.13[显示全部帖子]

是的,在图表上有显示信号,但公式测试不出来。但我又用"交易盈亏"NUMPROFIT()函数,如何解决?


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


加好友 发短信
等级:新手上路 帖子:19 积分:157 威望:0 精华:0 注册:2011/7/28 13:34:21
  发帖心情 Post By:2011/11/21 9:26:58    Post IP:59.41.221.13[显示全部帖子]

回复 FLY

上面是我临时设计的一个公式,实际情况是我们公司有一个完整的公式在做实盘交易。

但我想有所突破,必须要调用"交易盈亏"numprofit(),就出现在图表有信号,但测试无信号。

再用EXITPRICE-ENTERPRICE 是行不通的,因为第二次开仓后,ENTERPRICE是第二开仓价了

举例 2700开 2730平,2740再开,ENTERPRICE 是2740不再是2700.


 回到顶部