以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 金字塔软件问题提交 (http://222.73.7.161/bbs/list.asp?boardid=2) ---- 为什么公式里统计数据和策略测试出来的数据不一致呢? (http://222.73.7.161/bbs/dispbbs.asp?boardid=2&id=25321) |
-- 作者:3dian -- 发布时间:2012/9/9 8:24:07 -- 为什么公式里统计数据和策略测试出来的数据不一致呢? MA1:=MA(CLOSE,120); CONDB:=CROSS(CLOSE,MA1); BUY(CONDB,1,THISCLOSE); CONDS:=CROSS(MA1,CLOSE); SELL(CONDS,100%,THISCLOSE); ZiChan:=CASH(0),NOAXIS; IF BARPOS=1 THEN BEGIN MaxAsSet:=ZiChan; MaxHuiChe:=0; FirstZiChan:=ZiChan; END IF ZiChan>MaxAsset THEN MaxAsset:=ZiChan; IF MaxAsset-ZiChan>MaxHuiChe THEN MaxHuiChe:=MaxAsset-ZiChan; 交易次数:TOTALTRADE,LINETHICK0; 胜率:PERCENTWIN,LINETHICK0; 盈利率:(ZiChan-FirstZiChan)/FirstZiChan*100,LINETHICK0; 最大回撤率:MaxHuiChe/MaxAsset*100,LINETHICK0; 最大连亏次数:MAXSEQLOSS,LINETHICK0; 最大连盈次数:MAXSEQWIN,LINETHICK0; 做了一个简单的模型,然后统计沪铜指数上市第一天到2012.09.09号的日线数据,从k线图界面上的统计结果,胜率、盈利率、交易次数和最大回撤率都和策略测试中的有误差,我的费率设置,保证金设置都是一样的。我当时以为是CASH(0)的问题,我换成了AsSet,可还是不一致。请老师看看是怎么回事?谢谢! [此贴子已经被作者于2012-9-9 8:27:14编辑过]
|
-- 作者:admin -- 发布时间:2012/9/9 8:35:54 -- 将测评报告中的成交明细导出来,然后再与图表上的交易信号挨个对比,看看问题具体出在什么地方 |
-- 作者:3dian -- 发布时间:2012/9/9 9:39:23 -- 为了方便比较,我把代码改了一下,然后测试沪铜指数,月线: MA1:MA(CLOSE,100); CONDB:=REF(CROSS(CLOSE,MA1),1) AND CLOSE>MA1; BUY(CONDB,1,THISCLOSE); CONDS:=CROSS(MA1,CLOSE); SELL(CONDS,100%,THISCLOSE); ZiChan:=CASH(0),NOAXIS; IF BARPOS=1 THEN BEGIN MaxAsSet:=ZiChan; MaxHuiChe:=0; FirstZiChan:=ZiChan; END IF ZiChan>MaxAsset THEN MaxAsset:=ZiChan; IF MaxAsset-ZiChan>MaxHuiChe THEN MaxHuiChe:=MaxAsset-ZiChan; 交易次数:TOTALTRADE,LINETHICK0; 胜率:PERCENTWIN,LINETHICK0; 盈利率:(ZiChan-FirstZiChan)/FirstZiChan*100,LINETHICK0; 最大回撤率:MaxHuiChe/MaxAsset*100,LINETHICK0; 最大连亏次数:MAXSEQLOSS,LINETHICK0; 最大连盈次数:MAXSEQWIN,LINETHICK0;
测试沪铜指数月线:用策略测试是2次交易。而加载到图上根本就不对!请老师看一下吧! [此贴子已经被作者于2012-9-9 9:39:58编辑过]
|
-- 作者:RogarZ -- 发布时间:2012/9/9 11:53:11 -- 加载到图上也是2次,与测试一致,见下图。 IF MaxAsset-ZiChan>MaxHuiChe 但是,此时的资产是以close的价位核定的,而不是以此根K线上最不利你单子的价格去核定,与金字塔测试中的定义不符。 以下链接为金字塔测试报告中各名词的详细解释。请参考此文档中的解释,在一致的统计口径下,若有明显的差错,欢迎提意见。 http://www.weistock.com/WeisoftHelp/jiaoyiceshibaogaoshuyuxiangjie.htm |
-- 作者:3dian -- 发布时间:2012/9/9 17:16:17 -- 感谢老师的解答。 但是我在出场规则中没有勾选任何项目,费用等也都是一样的。 然后选择结束时计算平仓收益。 其他的都一致(不一致是因为最后一次强制平仓造成的,把这个加上,胜率,交易次数就相等了),但是就是利润率不一样,把最后一次算上也不一样。 策略测试的利润率是0.14%,而k线图上显示的盈利率是0.107%。 我的口径都是一样的,也是按收盘价平仓计算的,可是还是有误差。麻烦老师看看是怎么回事!我实在是弄不清了。虽然只差一点点,但是这也是一手,而且就只交易了一次,如果放大,误差是就大了。 |
-- 作者:3dian -- 发布时间:2012/9/10 10:27:12 -- 老师看了吗?是不一致吧! |
-- 作者:jinzhe -- 发布时间:2012/9/10 13:26:18 -- qq1971344681远程下 |
-- 作者:3dian -- 发布时间:2012/9/10 15:44:06 -- MID : MA(CLOSE,100); CONDBK:=CROSS(CLOSE,MID); CONDSPQ:=CROSS(MID,CLOSE); //资金管理 MONEYBL0:=0.5; //总最大使用x%资金 MARGIN1:=0.15; UNIT:=multiplier;//一个点多少钱 MONEY1:=ASSET; //作为模型使用 CWMAX:=MONEY1*MONEYBL0/(UNIT*CLOSE*MARGIN1);//最大使用MONEYBL0资金下最大可开手数。 BUY(CONDBK AND STATE=0 AND CWMAX>=1,CWMAX,THISCLOSE); SELL(CONDSPQ AND STATE=1,100%,THISCLOSE); //用于反转k线统计 ZiChan:=ASSET,NOAXIS; IF BARPOS=1 THEN BEGIN MaxAsSet:=ZiChan; MaxHuiChe:=0; FirstZiChan:=ZiChan; END IF ZiChan>MaxAsset THEN MaxAsset:=ZiChan; IF MaxAsset-ZiChan>MaxHuiChe THEN MaxHuiChe:=MaxAsset-ZiChan; 交易次数:TOTALTRADE,LINETHICK0; 胜率:PERCENTWIN,LINETHICK0; 盈利率:(ZiChan-FirstZiChan)/FirstZiChan*100,LINETHICK0; 最大回撤率:MaxHuiChe/MaxAsset*100,LINETHICK0; 最大连亏次数:MAXSEQLOSS,LINETHICK0; 最大连盈次数:MAXSEQWIN,LINETHICK0;
|
-- 作者:jinzhe -- 发布时间:2012/9/11 8:47:27 -- 已远程 |
-- 作者:3dian -- 发布时间:2012/9/11 16:59:46 -- 非常感谢 jinzhe 老师的多次帮助,给您造成的不便实在抱歉。可是还是有问题,我将手续费全都设置为0,用沪铜指数,周线测试,还是有误差。实在找不到问题在哪里了。还要麻烦 jinzhe 老师在给看看。非常感谢! 此主题相关图片如下:1.jpg 此主题相关图片如下:2.jpg |