以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  [注意]RM00 13年1月4日是不是有问题啊?  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=68449)

--  作者:netfox
--  发布时间:2014/8/6 22:01:48
--  [注意]RM00 13年1月4日是不是有问题啊?

RM00 13年1月4日是不是有问题啊?

 

图表显示2手

但是程序测试时候是8手, 这是没开启F11 ,开了F11直接成10手。

 

似乎就是 1月4日这1天

 

 


图片点击可在新窗口打开查看此主题相关图片如下:捕获.jpg
图片点击可在新窗口打开查看

 

改成1月7日立马就2手起步。。 唯独1月4日。 

[此贴子已经被作者于2014/8/6 22:02:59编辑过]

--  作者:FexTel
--  发布时间:2014/8/7 8:50:18
--  
1,对比下成交价格,一致么?而且限定下k线图的起止时间和测试一致
--  作者:netfox
--  发布时间:2014/8/7 9:15:13
--  
以下是引用FexTel在2014/8/7 8:50:18的发言:
1,对比下成交价格,一致么?而且限定下k线图的起止时间和测试一致

 

价格绝对没错。 就是手数不对。 时间也绝对一致。

  而且就只有1月4日那1次。   我把日期换成1月5日(7日) 开启就无问题。

 

关键是开仓手绝对是错误的~ 因为我虽然算动态,但动态阈值是手工参数(常数),所以理论上不改参数状态下默认开仓只有2.

 

然后图表一致,唯独测试时刻就那1次仓位不对。


--  作者:FexTel
--  发布时间:2014/8/7 9:20:41
--  

1,测试和图上使用的数据都是一致的,怎么会差异如此之大。

按理说数据错误,对应测试和图上也一样是错的。


--  作者:FexTel
--  发布时间:2014/8/7 9:25:43
--  
1,手数是固定的还是通过计算的/?代码发来看下
--  作者:netfox
--  发布时间:2014/8/7 9:34:44
--  

开多:BUY(JD<ZCC,SS*hh,LIMITR,open);

 

手数是通过代码控制

 

SS*HH

 

其中  SS是常数=4

 HH依据状态 会是  0.7 与0.3

0.7*4 = 2.8 金字塔会开2手,  但图表上没错, 到了测试时刻就成了10手(开启除权)8手(不开除权)

 

JD<ZCC 应当无关,这是控制开仓几次的。


--  作者:FexTel
--  发布时间:2014/8/7 9:48:21
--  

1,而且HH如果您不依据数据,值固定化的话 开仓几手和数据就没有任何关系

2,能否提供个简单反应问题的代码?

 

而且开仓价一样也不可能是用了价格反转,重新测试效果是不是一样的?


--  作者:netfox
--  发布时间:2014/8/7 10:10:28
--  

VARIABLE:JD=0,JK=0; //计开仓次数
VARIABLE:num=0; //当日开几次
INPUT:SS(4,4,60,2); //单次开仓数
INPUT:NMIN1(25,5,50,5),N1(0,0,40,1); //时间与周期参数
INPUT:ZCC(2,1,4,1); //加仓次数
INPUT:YDD(18,10,40,1); //止损系数

// 标记
上轨:=EMA(C,5);
下轨:=EMA(C,10);

//开仓条件
开多条件:=ref(CROSS(Close,上轨),1);
开空条件:=ref(CROSS(下轨,Close),1);

//交易代码,先平后开

IF 开多条件 and num=0 THEN BEGIN
if jd=1 then hh:=0.3;
开多:BUY(JDJD:=JD+1;
num:=num+1;
end

IF 开空条件 and num=0 THEN BEGIN
if jk=1 then hh:=0.3;
开空:BUYSHORT(JKJK:=JK+1;
num:=num+1;
END

IF L<下轨 and holding>0 THEN BEGIN
平多:SELL(holding>0,holding,MARKETR);
JD:=0;
if jd=0 then hh:=0.7;
END

IF H>上轨 and holding<0 THEN BEGIN
平空:SELLSHORT(holding<0,holding,MARKETR);
JK:=0;
if jk=0 then hh:=0.7;
END

// 移动止损
最高:=HHV(H,OPENBAR+1);
最低:=LLV(L,OPENBAR+1);

多头止损:if(holding>0,最高-YDD,DRAWNULL);
空头止损:if(holding<0,最低+YDD,DRAWNULL);

IF L<最高-YDD and h-l多损:SELL(holding>0,holding,MARKETR);
JD:=0;
END

IF H>最低+YDD and h-l空损:SELLSHORT(holding<0,holding,MARKETR);
JK:=0;
END

if time=closetime(0) then num:=0;// 商品期货,收盘的同时,num赋值为0

 

   简单测试提供 ,  RM00  5分钟  2013年1-1  2014年1-1

1月4日开仓数不对, 价格等都对。

 

以及有疑惑,这代码为何在 RB00,M00 图表有信号, 但测试时候确实空的。

 


此主题相关图片如下:捕获2.jpg
按此在新窗口浏览图片

--  作者:FexTel
--  发布时间:2014/8/7 10:17:29
--  

1,开仓条件不完整

2,软件是V3.24么?使用专业测试报告看看


--  作者:netfox
--  发布时间:2014/8/7 10:22:40
--  
以下是引用FexTel在2014/8/7 10:17:29的发言:

1,开仓条件不完整

2,软件是V3.24么?使用专业测试报告看看

 

1 , 代码提供了,直接测试即可。

2, 必须3.24 。 我都提供代码了就不用我上传报告了吧?

3, 不管是专业还是标准报告。  说了 RB00,M00 图表有信号 但测试无信号。  这个代码在RM00是有图表信号以及测试信号。