以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://www.weistock.com/bbs/list.asp?boardid=2) ---- 还是取历史K线数据问题 (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=162739) |
-- 作者:lh1988 -- 发布时间:2018/4/13 9:36:51 -- 还是取历史K线数据问题 早上开盘前9:10分左右,策略取过去5个日线数据,还是正常的,9:25分之后,策略取的过去5个日线收盘价,发现把上一日的收盘价漏了,往前多取了一个,开盘后依然是这样,分别的5个数据是当前价格,然后是往前推两个交易日的数据,把上一日的收盘价数据漏了 然后我去窗口输入该股票代码手动查看一下该股票的日K先数据,发现界面上日的K线是闪了一下才出现的,之后再去看程序取的数据就正常了 |
-- 作者:banzhuan -- 发布时间:2018/4/13 9:40:34 -- 1. 您描述的问题应该是您本地日线周期数据不完整造成的,您如果打开某个股票相当于自动补充了该股票的日线数据,所以会显示正常; 2. 建议您先补充一下日线周期数据再试试,另外您如果是一段时间(比如几天)没打开金字塔后,任然需要进行历史数据的补充;
|
-- 作者:lh1988 -- 发布时间:2018/4/13 10:05:27 -- 回复 我补充过,并且最近每天都正常开金字塔,而且开盘前我取过去5个交易日收盘价数据是对的,9:25分集合竞价之后(产生今日数据)后,这时策略取过去5个交易日收盘价就会漏掉上一日的(感觉像是以当日最新价代替了) |
-- 作者:banzhuan -- 发布时间:2018/4/13 10:07:31 -- 您贴一下获取5个交易日收盘价的具体代码,工作人员本地核实一下 |
-- 作者:lh1988 -- 发布时间:2018/4/13 10:15:22 -- 代码比较简单 set hisdata_HS300 = marketdata.GetHistoryData("000300","SH",5,5) if hisdata_HS300.Count = 5 then
for i = hisdata_HS300.Count -1 to 0
sum = sum + hisdata_HS300.Close(i)
application.msgout "日线数据"&i&":"&hisdata_HS300.Close(i)
next
ma5 = sum/5
application.msgout "ma5:"&ma5 end if |
-- 作者:gxx978 -- 发布时间:2018/4/13 10:27:27 -- 9:25分集合竞价完成后,已经是有当天的最新行情数据了,取到的就是当天的最新价了。如果你不想取当天的数据,那需要hisdata_HS300.Count -2 |
-- 作者:lh1988 -- 发布时间:2018/4/13 13:56:52 -- 回复楼上 有当天的数据可以的,主要是上个交易日的收盘价数据不见了,取出的5个收盘价分别是 当天的,上2个交易日的,上3个交易日,4,5交易日 上1个交易日数据不见了 |
-- 作者:banzhuan -- 发布时间:2018/4/13 14:25:38 -- 本地测试上个交易日的收盘价数据也是存在的,您看下红色标记地方语句是否准确
|