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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 主图叠加指标移位

   

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


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

主题:主图叠加指标移位

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


加好友 发短信
等级:新手上路 帖子:5 积分:0 威望:0 精华:0 注册:2020/7/2 6:04:39
主图叠加指标移位  发帖心情 Post By:2020/7/8 19:46:37    Post IP:218.64.119.15[只看该作者]

论坛新手,希望上传图片成功了

如图,我编写了一个主图叠加的指标,用于在一分钟线上求上一个交易日的加权平均价。在主图叠加后发现,这个指标被“拉伸”了,最高值与图中最高价齐平,最低值与图中最低价齐平,以至于中间的值都与坐标对不上。请问怎么设置为指标曲线与绝对坐标保持一致。

另,代码如下,这个方法我觉得挺笨重,思路是找到当日开盘的第一根一分钟线。是否有更简便的编程思路?感谢启发!

previousdaycount:= 0;

if hour = 9 then previousdaycount:= minute-30;
else if hour = 10 then previousdaycount:= minute+30;
else if hour = 11 then previousdaycount:= minute+90;
else if hour = 13 then previousdaycount:= minute+120;
else if hour = 14 then previousdaycount:= minute+180;
else previousdaycount:= 240;

vwap: (sum((high+low)/2*vol, previousdaycount+240) - sum((high+low)/2*vol, previousdaycount)) / (sum(vol, previousdaycount+240) - sum(vol, previousdaycount));


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


加好友 发短信
等级:新手上路 帖子:5 积分:0 威望:0 精华:0 注册:2020/7/2 6:04:39
  发帖心情 Post By:2020/7/8 20:24:03    Post IP:218.64.119.15[只看该作者]

之前图片没成功上传,现在成功了

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


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


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/7/9 9:31:28    Post IP:58.246.57.26[只看该作者]

 1.你那个图放大后完全看不清 太模糊了。
2.详细描述你原本的思路。我们直接从你原始思路出发重现编写代码吧。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
xiebo
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:5 积分:0 威望:0 精华:0 注册:2020/7/2 6:04:39
  发帖心情 Post By:2020/7/9 12:41:47    Post IP:218.64.119.15[只看该作者]

指标被拉伸的问题莫名其妙消失了,下次遇到我截图清晰再放上来吧。

关于上面的代码:
1. 目的:计算前一日的“成交量加权平均价”,也就是 sum(成交价格 * 成交量) / sum(成交量)
2. 主图周期:希望是任意低于日线的周期图上都可以执行。但实在想不明白实现方式,所以暂时只追求在1分钟图上实现。
3. 思路说明1: 最理想的是用分笔数据计算,但占用资源过于严重,所以采用1分钟数据。用分钟线的 (高+低)/2 代替成交价格,假定分钟线的成交量都发生在这个价格上。然后将上一个交易日的240根分钟线(对于IF00而言,一天4小时240分钟交易时间,如果有夜盘的品种要做不同处理)加总计算取得上一个交易日的“成交量加权平均价”。
4. 思路说明2: 计算时,须先找到当前分钟线是本交易日的第几根k线,比如第8根。然后计算“成交量加权平均价”就需要在往前数第 9 到 248 根分钟k线上做针对成交量的加权平均。故用sum公式加总的时候,先加总过去248根的sum,再减过去8根的sum。

希望可以给我一个更清晰简洁的思路,谢谢!



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


加好友 发短信
等级:新手上路 帖子:5 积分:0 威望:0 精华:0 注册:2020/7/2 6:04:39
  发帖心情 Post By:2020/7/10 10:29:38    Post IP:218.64.119.15[只看该作者]

自己顶一下,请老师回复啊

 回到顶部