设为首页收藏本站

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

请教,15分钟线上如何引用日线数据? [复制链接]

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
1#
发表于 2007-11-4 19:32:08 |显示全部楼层
不错,不错!看来已经理解了TB的运行机制,特别是全局变量。
3楼的出错问题可能是:
Num=NthCon(BarStatus=0,1)+1;  
这一行的问题,及时要这么用,也应该写成:

Num=NthCon(BarStatus==0,1)+1;

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
2#
发表于 2007-11-4 21:05:39 |显示全部楼层
原帖由 hnhyjxwy 于 2007-11-4 18:48 发表
后改为如下,这样就与开盘时间无关了
Vars
        Numeric Num(1);
        NumericSeries RiQi;
Begin
    RiQi=Date;
    If (RiQiRiQi[1])
     {
            
            Num=1;
                SetGlobalVar(0,1);
     }
         Else
         {
            Num=GetGlob ...



最好用序列变量来代替全局变量进行使用,因为如果在交易指令里面调用2次这个函数,就会导致0号全局变量被覆盖。造成数据错误。

用序列变量的代码如下:
  1. Vars
  2.         NumericSeires Num(0);
  3. Begin
  4.      If (Date<>Date[1])
  5.      {            
  6.             Num=1;
  7.      } Else
  8.      {
  9.             Num=Num[1] + 1;
  10.      }
  11.      Return Num;
  12. End
复制代码

使用道具 举报

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

bottom

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

GMT+8, 2024-5-23 00:37

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部