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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 请教如何得到均线交叉期间的最值

   

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


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

主题:请教如何得到均线交叉期间的最值

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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
请教如何得到均线交叉期间的最值  发帖心情 Post By:2014/12/21 15:41:08    Post IP:183.62.57.215[只看该作者]

贴子已被锁定

请问如何得到该图所示的效果?

白色为5日均线,绿色为10日均线

第一根绿色水平直线为 两均线死叉到金叉期间的最低点
第二根绿色水平直线为 两均线金叉到死叉期间的最高点
第三根类推……
图片点击可在新窗口打开查看此主题相关图片如下:360软件小助手截图20141221153434.png
图片点击可在新窗口打开查看

该如何编写公式,定义参数或者数组,得到从第一根K线以来,所有这样的最低点和最高点,并绘制出直线呢?

多谢!

[此贴子已经被作者于2014/12/21 15:42:21编辑过]

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2014/12/22 9:23:41    Post IP:58.246.57.26[只看该作者]

ma5:ma(c,5),linethick2,colorwhite;

ma10:ma(c,10),linethick2,colorgreen;

jc:=cross(ma5,ma10);

sc:=cross(ma10,ma5);

nn1:=barslast(jc);

nn2:=barslast(sc);

hh:=hhv(h,jc+1);

ll:=llv(l,sc+1);

if sc then hh1:=hh;

if jc then ll1:=ll;

hh1死叉到金叉的最高值

ll1就是死叉到金叉的最低值



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
  发帖心情 Post By:2014/12/22 10:13:02    Post IP:112.96.105.129[只看该作者]

多谢jinzhe老师 我的另一个问题是如何引用前面的hh1、ll1呢? 譬如上图中,我得到了第三根水平线的ll1值,此时我想引用第一根水平线的ll1值,该怎么做?

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2014/12/22 10:21:45    Post IP:58.246.57.26[只看该作者]

ma5:ma(c,5),linethick2,colorwhite;

ma10:ma(c,10),linethick2,colorgreen;

jc:=cross(ma5,ma10);

sc:=cross(ma10,ma5);

nn1:=barslast(jc);

nn2:=barslast(sc);

hh:=hhv(h,nn1+1);

ll:=llv(l,nn2+1);

if sc then hh1:=hh;

if jc then ll1:=ll;

 

hh3:=ref(ref(hhv(h,nn1+1),nn2+1),nn1+1);

ll3:=ref(ref(hhv(h,nn1+1),nn2+1),nn1+1);

 

if sc then hhh:=hh3;

if jc then lll:=ll3;

hhh和lll就是了

 



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
  发帖心情 Post By:2014/12/22 10:33:40    Post IP:112.96.105.129[只看该作者]

这样编写只能得到前面一个ll1吧? 我的意思是引用前面所有的ll1,该怎么编写才有效率? 这个方法用ref不停的嵌套,如果我想得到倒数第十个的ll1不是很麻烦?

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2014/12/22 10:36:01    Post IP:58.246.57.26[只看该作者]

是的,必须这样


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
  发帖心情 Post By:2014/12/22 10:51:18    Post IP:112.96.105.129[只看该作者]

如果是后台程序,我可以定义一个全局变量的数组来引用吧?

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2014/12/22 11:00:52    Post IP:58.246.57.26[只看该作者]

这个没有前后台之分,要求这样的数据是必须要这样算的



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:59 积分:0 威望:0 精华:0 注册:2014/12/13 11:23:10
  发帖心情 Post By:2014/12/22 11:34:55    Post IP:14.23.94.2[只看该作者]

应该还是有变通的方法吧?譬如做日内实时行情,当均线金叉,我定义一个变量数组h1,

h1=max(h1,high);

当均线死叉时退出,并将h1这个值写入硬盘,下一个交易日再调用。

得到历史数据的所有最值比较麻烦,但运行这样的公式后,以后的最值就容易得到了。

但我不知道怎么用公式实现。

请老师帮忙



 回到顶部