Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共7 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:这个能实现吗,求助

1楼
金台 发表于:2020/10/28 9:14:29
我想编写个副图指标,从每天开盘开始计时,在1分钟K上,每三根  或5根 或15根K线为一组(可以调),每组最高价到最低价是振幅,以柱形图显示在副图,新的一组与前10组振幅比较,振幅最小时,背景色改为绿色。有点如图所示,只是背景色为绿色。麻烦老师看能否编写出来。
图片点击可在新窗口打开查看此主题相关图片如下:2020-10-28_091310.jpg
图片点击可在新窗口打开查看
2楼
FireScript 发表于:2020/10/28 9:23:12
 需要确认:
1.柱形是 和振幅数值对应?
2.当前柱形振幅 是10个柱形中最小时候改变颜色或者其他方式突出下?
2.幅图是和主图的K一一对应的。你这样三个或者多个K为一组,估计在幅图上体现不出来,它没办法把多个K整合在一个只显示一个柱形。
3楼
金台 发表于:2020/10/28 9:32:21
1、是
2、是,最好改变背景色
3、副图是和主图对应的。我的示意图是在文华上已经实现了的,三个K为一组,就是不知道金字塔怎样,麻烦老师想想办法。是不是直接引用3分钟、5分钟、15分钟K的振幅实现?
4楼
FireScript 发表于:2020/10/28 9:36:14
实现上肯定是靠引用的方式来获取振幅数据,但是绘制图形时候 你看到的也会是三个一样(当前1分钟周期,调用的是3分钟)的柱形,没办法把柱形合并在一起的。我先试试吧。

5楼
FireScript 发表于:2020/10/28 11:01:28
 我写了个1分钟调用3分钟的。凑合下,效果好像也还行。

被调用的指标:
zf:100*(h-l)/ref(c,1);
t:TIME;
cd:zf<ref(llv(zf,10),1);

幅图上的指标:
3minzf:"AA.zf#MIN3",NODRAW;
t:="AA.t#MIN3";
cd:="AA.cd#MIN3";
Len:=BARSLAST(t<>ref(t,1));
DRAWRECT(t<>ref(t,1),0 ,Len=2 ,3minzf , if(cd,0,1),if(cd,COLORRED,COLORBLUE));


实际效果:


图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

你如果要改其他周期,5分钟,15分钟,这种 要改几个地方,一个跨周期的要改下,一个就是指标里面的Len=2 就要改成Len=4或者Len=15 了。
6楼
金台 发表于:2020/10/28 11:37:34
1、是想要的效果,牛X。
2、被调用的指标是要命名一个指标,把那三行复制进去吗,对指标名称有要求吗
3、改其他周期的方法我不太理解,是改什么?要不再麻烦老师再写个5分钟的吧,
7楼
FireScript 发表于:2020/10/28 13:30:07
 1.周期调整:
3minzf:"AA.zf#MIN5",NODRAW;
t:="AA.t#MIN5";
cd:="AA.cd#MIN5";
Len:=BARSLAST(t<>ref(t,1));
DRAWRECT(t<>ref(t,1),0 ,Len=4 ,3minzf , if(cd,0,1),if(cd,COLORRED,COLORBLUE));

引用操作符

例如:
"INDIE.VAR"(P1,P2) 引用INDI指标的VAR输出,计算参数为P1,P2。若没有指定公式线,系统将取最后一行公式输出
数据类型有TICK、MIN1、MIN3、MIN5、MIN10、MIN15、MIN30、MIN60、DAY、WEEK、MONTH、YEAR、MULTIDAY、MULTIMIN、MULTISEC、MULTIHOUR、QUARTER、SEMIYEAR、SOLARTERM



2.被调用的指标要新建一个指标。我这里新建的名称叫AA。所以我调用时候写的就是AA。

3minzf:"AA.zf#MIN3",NODRAW;
t:="AA.t#MIN3";
cd:="AA.cd#MIN3";



共7 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in .04688 s, 3 queries.