设为首页收藏本站

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

在15分钟周期上,如何知道当前的K线是本周开始的第一根bar [复制链接]

Rank: 5Rank: 5

精华
0
UID
6858
积分
1346
帖子
137
主题
66
阅读权限
60
注册时间
2010-2-3
最后登录
2019-12-24
跳转到指定楼层
1#
发表于 2012-5-6 08:23:18 |只看该作者 |倒序浏览
在15分钟周期上,如何知道当前的K线是本周开始的第一根bar和最后一根bar?

Rank: 8Rank: 8

精华
0
UID
17581
积分
5464
帖子
275
主题
27
阅读权限
100
注册时间
2010-10-13
最后登录
2021-8-30
2#
发表于 2012-5-6 08:56:30 |只看该作者
第一根bar
numericseries wd;
wd=weekday();
if(wd<wd[1] ||date-date[1]>=7)....
最后一根bar应该不太好写,因为有各种节假日

写得不对请指正

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
6858
积分
1346
帖子
137
主题
66
阅读权限
60
注册时间
2010-2-3
最后登录
2019-12-24
3#
发表于 2012-5-7 11:23:20 |只看该作者
本帖最后由 z7c9 于 2012-5-7 11:24 编辑
zzzlondon 发表于 2012-5-6 08:56
第一根bar
numericseries wd;
wd=weekday();


跨月的周就有问题了,比如

2012年3月1日是周四,但是201203001-20120229=72

也会认为是一周的开始

跨月周和跨年周应该都会有问题

使用道具 举报

Rank: 8Rank: 8

精华
0
UID
17581
积分
5464
帖子
275
主题
27
阅读权限
100
注册时间
2010-10-13
最后登录
2021-8-30
4#
发表于 2012-5-7 13:56:20 |只看该作者
z7c9 发表于 2012-5-7 11:23
跨月的周就有问题了,比如

2012年3月1日是周四,但是201203001-20120229=72

你说得对,之前自己没好好测试,这样写:
  1. Vars
  2.         NumericSeries wd;
  3. Begin
  4.         wd=weekday();
  5.         if(wd<wd[1] ||DateDiff(date[1],date)>=7)PlotBool("1",true);
  6. end
复制代码
似乎是可以的

使用道具 举报

Rank: 8Rank: 8

精华
0
UID
17581
积分
5464
帖子
275
主题
27
阅读权限
100
注册时间
2010-10-13
最后登录
2021-8-30
5#
发表于 2012-5-7 14:34:01 |只看该作者
最后一根bar也是可以的,但是要调用未来函数,只能用于历史测试不能用于实盘
  1. Vars
  2.         NumericSeries wd;
  3.         Numeric wd2;
  4. Begin
  5.         wd=weekday();
  6.         if(wd<wd[1] ||DateDiff(date[1],date)>=7)PlotBool("1",true);
  7.        
  8.         wd2=WeekdayFromDateTime(date[-1]);
  9.         if(BarStatus<2){
  10.                 if(wd>wd2 ||DateDiff(date,date[-1])>=7)PlotBool("2",false);
  11.         }
  12. end
复制代码

使用道具 举报

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

bottom

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

GMT+8, 2024-5-19 11:01

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部