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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → [求助]请教如何在日K线上计算N个季度内的HHV?

   

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


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

主题:[求助]请教如何在日K线上计算N个季度内的HHV?

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


加好友 发短信
等级:新手上路 帖子:31 积分:267 威望:0 精华:0 注册:2009/10/4 16:30:05
[求助]程序自动止损后怎么会重复开仓呢  发帖心情 Post By:2010/10/6 15:22:30    Post IP:221.218.120.192[显示全部帖子]

如题。

例如:假设K线定位在2010-9-3的日K线上,如何计算2010-4-1日到2010-9-3日的周期数?从而求出这期间的HHV等。

[此贴子已经被作者于2010-10-6 15:31:16编辑过]

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


加好友 发短信
等级:新手上路 帖子:31 积分:267 威望:0 精华:0 注册:2009/10/4 16:30:05
  发帖心情 Post By:2010/10/6 22:11:12    Post IP:221.218.120.192[显示全部帖子]

是的,就是打开日K线图,当十字光标移动到2010-9-3时,希望在副图中显示2010-4-1日到2010-9-3日的日线周期数。

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


加好友 发短信
等级:新手上路 帖子:31 积分:267 威望:0 精华:0 注册:2009/10/4 16:30:05
  发帖心情 Post By:2010/10/6 23:11:23    Post IP:221.218.120.192[显示全部帖子]

可以通过RET(H,N)取得多少天之前(不是多少个周期之前)的价格,但我是想取得从某天起到当天这段时间内的HHV(H,N),虽然知道两个日期但无法知道这两个日期之间的周期数,即无法确定N值,所以无法取得HHV值。

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


加好友 发短信
等级:新手上路 帖子:31 积分:267 威望:0 精华:0 注册:2009/10/4 16:30:05
  发帖心情 Post By:2010/10/6 23:43:59    Post IP:221.218.120.192[显示全部帖子]

ayear:= year;
amonth:=intpart((month-1)/3)  * 3 + 1;

 

{计算本季度的 HIGH,LOW}
JDDATE:=ayear * 10000 + amonth * 100 + 01 - 19000000; //取得当前日K线所在季度的第一日,比如光标定位到2010-9-3时,JDDATE表示2010-7-1。
BARCOUNT:=barslast(date=JDDATE);//当光标移动到2010-7-1,date=JDDATE,BARCOUNT开始计数。
JDHIGH:=HHV(HIGH,BARCOUNT);
JDLOW:=LLV(LOW,BARCOUNT);

 

{计算5个季度内的低值}
JDDATE5:=IF(AMONTH=1,JDDATE - 20000 -300 +1200, JDDATE - 10000 -300);//取得当前日K线前5个季度的第一日,比如光标定位到2010-9-3时,JDDATE表示2009-4-1。
bar5count:=barslast(date=JDDATE5);//当光标移动到2009-4-1,JDDATE5又表示2008-1-1了,date<>JDDATE5bar5count无法开始计数。

LLV:=LLV(LOW,bar5count);

 

-------------------------------------

蓝色部分没有问题,红色部分永远也不能满足date=JDDATE5这个表达式,因为JDDATE5随着date变化的。

[此贴子已经被作者于2010-10-6 23:52:35编辑过]

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


加好友 发短信
等级:新手上路 帖子:31 积分:267 威望:0 精华:0 注册:2009/10/4 16:30:05
  发帖心情 Post By:2010/10/7 0:13:26    Post IP:221.218.120.192[显示全部帖子]

以下是引用wattwei在2010-10-6 23:28:29的发言:
nn:=barslast(DATE<1100401);
hh:ref(h,nn);
ll:ref(l,nn);

其中nn表示20100401到今天的K线数。1100401这个值如何确定可查DATE的帮助文档

谢谢版主!

为什么通过计算得到的1100401,将其存入变量JDDATE,再调用barslast(DATE<JDDATE)就无法得到结果?如下:

 

ayear:= year;
amonth:=intpart((month-1)/3)  * 3 + 1;

 

{计算本季度的 HIGH,LOW}
JDDATE:=ayear * 10000 + amonth * 100 + 01 - 19000000; //取得当前日K线所在季度的第一日,比如光标定位到2010-9-3时,JDDATE表示2010-7-1。
BARCOUNT:barslast(date<JDDATE);

[此贴子已经被作者于2010-10-7 0:14:25编辑过]

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


加好友 发短信
等级:新手上路 帖子:31 积分:267 威望:0 精华:0 注册:2009/10/4 16:30:05
  发帖心情 Post By:2010/10/7 9:30:38    Post IP:221.218.121.51[显示全部帖子]

像8楼那样判断本季度没问题,版主您说的也可以。

我现在的问题是无法获得5个季度内的周期数。


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


加好友 发短信
等级:新手上路 帖子:31 积分:267 威望:0 精华:0 注册:2009/10/4 16:30:05
  发帖心情 Post By:2010/10/7 10:21:02    Post IP:221.218.121.51[显示全部帖子]

我临时用其他办法解决了,就是有点儿笨拙:

新建一个中间公式叫HHLL,在日线上通过“##”引用前N个季度的HH或者LL值,再与本季度的HH、LL通过MAX或MIN求得。

 

谢谢版主的回复!


 回到顶部