欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 通达信日期和金字塔日期转换问题

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有3164人关注过本帖树形打印复制链接

主题:通达信日期和金字塔日期转换问题

帅哥哟,离线,有人找我吗?
漫步@沪尚
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2021/4/4 3:39:00
通达信日期和金字塔日期转换问题  发帖心情 Post By:2021/4/12 13:06:35 [只看该作者]


请教:我之前是在通达信上写代码,后转到金字塔,发现通达信上的时间函数在金字塔上运行有问题,应该是取数有问题,无法解决,
如何编写当前时间到指定日期的周期数?通达信上我是这么写的,但金字塔上运行有问题
日期2019:=INTPART((DATE+19000000));
前2019:=日期2019<=20191231;
N2019:=BARSLAST(前2019);
我用金字塔写的公式:N2019:=INTPART(if(barpos>=datediff(intpart(20191231-19000000),currentdate)+7,datediff(intpart(20191231-19000000),currentdate),drawnull));;不知道错在哪?
问题:
1、现在到2019年12月31日周期数,如何写代码?此代码在大周月线/周线算的话是否直接输入月线/周线周期数,如果有小数,怎么处理的?还是要用INTPART?intpart加在前面还是加在计算过程
2、运行原理问题:如果是次新股,上市日期是在20191231以后,那么运行函数的话理论上是空值,会有什么结果?是不再运行接下来的代码还是忽略?通达信上是忽略,继续往下算。但我感觉金字塔遇到空值就停算了。
3、金字塔中的时间函数currentdate 和 date函数有什么区别?
4、我写的金字塔公式也感觉有问题,
①、barpos不是代表上市日期,只是有效周期,中间如果停牌很久的话,数据也不准,只是近似值。如何解决?
②、是否有必要用if,drawnull?
③、接下来的代码要用到n2019,用了if,drawnull,算出来是空值的话,后续程序怎么处理?

 之前的回复:
{
1.指定日期以来的周期数。
Len:BARSLAST(date>=1210204 and ref(date,1)<1210204);//这个能取到值有个前天是你本地数据覆盖到这个日期之前。否则小周期上根本无法到有效值。


2.“如果是次新股,上市日期是在20191231以后,那么运行函数的话理论上是空值,会有什么结果?”会出现无效值。相关的计算都会导致出现问题。

3.date是和K线位置挂钩的,你移动K线时候 能读取到这个K所归属的日期。currentdate 则是当前现实的实际日期。始终只有最新值。

4.“barpos不是代表上市日期,只是有效周期,中间如果停牌很久的话,数据也不准,只是近似值。如何解决”
这个函数是返回当前加载的K线的数据位置。

总之你先看下1中代码的效果。
}

补充的问题:
问题1:
1210204是代表什么?
和日期怎么换算的?
我写的日期是20191231,不是应该20191231-19000000=1191231么?
问题2:barpos是返回数据位置,那么有效周期是否可以写成count(c)?




 回到顶部
帅哥哟,离线,有人找我吗?
banzhuan
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2021/4/12 13:42:48 [只看该作者]

1、要计算出截止今天的周期数,必须在K线图上加载足够的数据后,用1楼回复的代码就可以获取到;
2、返回的是空值,后续代码会继续运算,但计算结果就不准确了
3、区别在于DATE有历史值,如果历史K要参与计算的话要用DATE这个函数
4、停牌的话没办法了
5、1210204 返回的是金字塔中显示的日期,可以加上19000000改为正常日期;
6、不行


 回到顶部
帅哥哟,离线,有人找我吗?
漫步@沪尚
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2021/4/4 3:39:00
  发帖心情 Post By:2021/4/12 14:11:02 [只看该作者]

收到。还是看了有点迷糊,有劳直接帮我写一下正确的代码:
1、该股票有效周期数:
2、当前日期到2019年12月31日的周期数(需要参与历史计算):

有劳帮忙写一下范本,我自己确实搞不懂。多谢。

 回到顶部
帅哥哟,离线,有人找我吗?
banzhuan
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2021/4/12 14:35:41 [只看该作者]

1、用 DATACOUNT 就可以直接获取,前提是K线图上要加载从上市日至今的所有K线。

2、AA:BARSLAST(DATE>=1201231 AND REF(DATE,1)<1201231);

 回到顶部
帅哥哟,离线,有人找我吗?
漫步@沪尚
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2021/4/4 3:39:00
  发帖心情 Post By:2021/4/12 14:54:37 [只看该作者]

那我如果要用当前到20201231的周期数呢?
具体实际日期数和金字塔转换数怎么算?

 回到顶部
帅哥哟,离线,有人找我吗?
banzhuan
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2021/4/12 15:02:05 [只看该作者]

抱歉4楼回复的就是当前到20201231的周期数的写法,如果要改2019的改成 1191231 即可

 回到顶部
帅哥哟,离线,有人找我吗?
漫步@沪尚
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2021/4/4 3:39:00
  发帖心情 Post By:2021/4/12 23:22:52 [只看该作者]

还是有疑问:
股票全周期数:=DATACOUNT;;
2019年12月31日至今周期数:=BARSLAST(DATE>=1191231 AND REF(DATE,1)<1191231);
那我要找到在2019年12月31日以前上市的票,应该是:
DATACOUNT>=2019年12月31日至今周期数;

但实际用这条公式跑不出来任何股票。

有劳解决,如何找到2019年12月31日以前上市的股票公式是如何的?

 回到顶部
帅哥哟,离线,有人找我吗?
yukizzc
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2021/4/12 23:36:13 [只看该作者]

a:barslast(date<1191231)>0

 

判断上次时间早于1231到现在周期数不就可以了,只要他大于0说明有之前数据,如果没有这个条件就是假


 回到顶部
帅哥哟,离线,有人找我吗?
漫步@沪尚
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2021/4/4 3:39:00
  发帖心情 Post By:2021/4/13 11:55:43 [只看该作者]

这样不行啊,我这个1191231是随时要变的,比如我在今天选全周期就变成了1210413,明天就变成了1210414,我不可能每天去改公式。
我需要一个固定公式,计算股票全周期数。通达信里是count(c),我想问一下金字塔里如何设置?



 回到顶部
帅哥哟,离线,有人找我吗?
banzhuan
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2021/4/13 13:13:06 [只看该作者]

通达信里COUNT也是一样的用法把: COUNT(X,N),统计N周期中满足X条件的周期数。

DATACOUNT 返回值不对吗?  刷新K线数量填大一些呢?

 回到顶部
总数 12 1 2 下一页