设为首页收藏本站

 找回密码
 注册
查看: 5495|回复: 13
打印 上一主题 下一主题

请版主看看,是不是行情数据有问题? [复制链接]

中级操盘手

noplan notrade

Rank: 9Rank: 9Rank: 9

精华
0
UID
1762
积分
13243
帖子
572
主题
75
阅读权限
150
注册时间
2008-6-19
最后登录
2012-1-2
跳转到指定楼层
1#
发表于 2008-10-11 23:54:32 |只看该作者 |倒序浏览
请版主看看我下面的交易程序,在1分钟图,M0901测试的时候,只有6月13日开的仓一直持到6月17日才平,其他全都可以按时间平仓.
会不会是行情数据有问题?

If(con1)
   {if(A==0 && KC)
    {SellShort(DFLots,Close);
  A=A[1]+1;
     }
Else If (A==1&&Time >= 0.143000)
          {BuyToCover(DFLots,Close);
              A=A[1]+1;
     }
}

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
2#
发表于 2008-10-12 14:19:38 |只看该作者
数据肯定没有问题。

我估计您想表达的意思应该是要用(A[1]==0) 和(A[1]==1)代替....

使用道具 举报

中级操盘手

noplan notrade

Rank: 9Rank: 9Rank: 9

精华
0
UID
1762
积分
13243
帖子
572
主题
75
阅读权限
150
注册时间
2008-6-19
最后登录
2012-1-2
3#
发表于 2008-10-12 19:49:18 |只看该作者
换成(A[1]==0) 和(A[1]==1)后,结果还是一样!

使用道具 举报

中级操盘手

noplan notrade

Rank: 9Rank: 9Rank: 9

精华
0
UID
1762
积分
13243
帖子
572
主题
75
阅读权限
150
注册时间
2008-6-19
最后登录
2012-1-2
4#
发表于 2008-10-12 19:50:51 |只看该作者

回复 #2 nopain 的帖子

10月6日 M0901的行情数据就一定有问题,因为有些时间的bar都根本不存在!

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
5#
发表于 2008-10-12 20:51:19 |只看该作者
没有成交很正常。

使用道具 举报

中级操盘手

noplan notrade

Rank: 9Rank: 9Rank: 9

精华
0
UID
1762
积分
13243
帖子
572
主题
75
阅读权限
150
注册时间
2008-6-19
最后登录
2012-1-2
6#
发表于 2008-10-13 00:05:49 |只看该作者

回复 #5 nopain 的帖子

你是说没有成交就没有bar产生?
还是说测试的时候没有成交很正常?

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
7#
发表于 2008-10-13 09:57:54 |只看该作者
原帖由 啸傲 于 2008-10-12 19:50 发表
10月6日 M0901的行情数据就一定有问题,因为有些时间的bar都根本不存在!


这几天跌停了,可能5分钟都没有成交,那1分钟图上面,这五分钟的数据都是没有的

使用道具 举报

中级操盘手

noplan notrade

Rank: 9Rank: 9Rank: 9

精华
0
UID
1762
积分
13243
帖子
572
主题
75
阅读权限
150
注册时间
2008-6-19
最后登录
2012-1-2
8#
发表于 2008-10-20 10:30:05 |只看该作者
请看下面的程序:
if(Date<>Date[1])
{
    A=0;
}else
{
    A=A[1];
}

If(con1)
   {if(A==0 && KC)
    {SellShort(1,Q_BidPrice);
  A=A[1]+1;
     }
Else If (A==1&&Time >= 0.143000)
          {BuyToCover(1,Q_AskPrice);
              A=A[1]+1;
     }
}

我认为当KC为true时,开空,A就应该变为1,那么在此之后,A应该一直都为1了,但是实际测试却不是,在KC为true时,A=1,而一旦KC变为False,A又变为0.
是哪里出了错呀?

PS:在价格用Close,在历史行情里测试的时候,A的值就没问题.而在即时行情测试的时候,A值就会出现上面的情况.同一条bar也会有时等于0,有时等于1.

[ 本帖最后由 啸傲 于 2008-10-20 10:37 编辑 ]

使用道具 举报

中级操盘手

noplan notrade

Rank: 9Rank: 9Rank: 9

精华
0
UID
1762
积分
13243
帖子
572
主题
75
阅读权限
150
注册时间
2008-6-19
最后登录
2012-1-2
9#
发表于 2008-10-20 10:33:05 |只看该作者
另外我还在即时行情里测试了TotalTrades函数,成交前后的输出值也都是0, .
为什么会这样?

[ 本帖最后由 啸傲 于 2008-10-20 10:38 编辑 ]

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
10#
发表于 2008-10-20 10:56:18 |只看该作者
改成这样看看:

if(Date<>Date[1])
{
    A=0;
}else
{
    A=A[1];
}

If(con1)
   {if(A==0 && KC)
    {SellShort(1,Q_BidPrice);
  A=A+1;
     }
Else If (A==1&&Time >= 0.143000)
          {BuyToCover(1,Q_AskPrice);
              A=A+1;
     }
}

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-3 22:34

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部