Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共7 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

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

1楼
周生 发表于:2011/11/17 10:37:17

用交易盈亏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楼
jinzhe 发表于:2011/11/17 13:29:30
我看看先
3楼
jinzhe 发表于:2011/11/17 16:10:31
是在测评里面显示不出来,而图表上有信号。。。
4楼
周生 发表于:2011/11/18 9:37:17

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

5楼
fly 发表于:2011/11/18 11:07:09

您的策略里只有多仓,

多仓时  NUMPROFIT(1)/300基本等同与EXITPRICE-ENTERPRICE.

您试试用后面的代替前面的,在测评里,应该是正常的.

6楼
周生 发表于:2011/11/21 9:26:58

回复 FLY

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

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

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

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

7楼
fly 发表于:2011/11/21 9:34:45

您的意思我知道,暂时,用NUMPROFIT在测评里是有问题的,需要以后版本修正,所以,您暂时不能使用

 

基于您的策略是平仓后,再开仓的(而非有多仓,再加多仓的).给您推荐的,在这种情况下这两种写法是完全等同的

 

我给您推荐的是一个备用方案

共7 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.02930 s, 3 queries.