以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  高手给个思路,怎样用VBA计算结算价  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=76569)

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

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

--  作者:yukizzc
--  发布时间: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

 

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