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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → 高手给个思路,怎样用VBA计算结算价

   

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


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

主题:高手给个思路,怎样用VBA计算结算价

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


加好友 发短信
等级:新手上路 帖子:18 积分:0 威望:0 精华:0 注册:2014/9/28 13:00:32
高手给个思路,怎样用VBA计算结算价  发帖心情 Post By:2015/3/17 21:26:37 [只看该作者]

 正常交易日结算价。这时以期货盘面交易的最后一小时成交价格、按照成交量加权平均价。计算结果保留至小数点后一位。最后一小时因系统故障等原因导致交易中断的,扣除中断时间后向前取满一小时视为最后一小时。合约当日最后一笔成交距开盘时间不足一小时的,则取全天成交量加权平均价作为当日结算价。采用上述方法仍无法确定当日结算价或者计算出的结算价明显不合理的,交易所有权决定当日结算价

从14:45开始计算每笔成交加权计算么?

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2015/3/18 10:19:09 [只看该作者]

sub dd()
Set MinuteData = marketdata.GetHistoryMinuteData("if00","zj","2015-03-17")   //取历史某天的分笔

application.MsgOut MinuteData.Date(25187)                                                //实际算法自己设置个循环,找到时间比如大于14点是第几笔。
a= MinuteData.Amount(MinuteData.count-1)-MinuteData.Amount(25187)
b= MinuteData.Volume(MinuteData.count-1)-MinuteData.Volume(25187)
application.MsgOut (a/b)/300
end sub

 

算法大致这样,当天分笔只要建立对象那儿换下就可以了


 回到顶部