c++接口取出的数据发现有些问题。 [金字塔]
- 咨询内容:
请教:c++接口取出的数据发现有些问题。addin的接口。
我做了g_pMainFormework->UnRegReportNotify("RU05",'QS');
然后,callback函数OnNotifyUpdate(WPARAM w,LPARAM l)会被调用,
然后调用到void CMainWindowDlg::ReportUpdate(LPARAM l)
到这里都没问题,但是在这个函数里,
double duodan =0;
double kongdan =0;
duodan = pData->m_fBuyVolume[0] + pData->m_fBuyVolume[1] + pData->m_fBuyVolume[2] + pData->m_fBuyVolume4 + pData->m_fBuyVolume5;
kongdan = pData->m_fSellVolume[0] + pData->m_fSellVolume[1] + pData->m_fSellVolume[2] + pData->m_fSellVolume4 + pData->m_fSellVolume5;
strText.Format("%s 多单:%lf,空单:%lf, 权重价差多:%lf, 权重价差空:%lf, 价格%f", pData->m_szName,
duodan, kongdan, Quanzhongjiachaduo, Quanzhongjiachakong,pData->m_fNewPrice);
WriteLog(strText);
strText.Format("%s,m_fBuyPrice:%2f,%2f,%2f,%2f,%2f",
pData->m_szName, pData->m_fBuyPrice[0], pData->m_fBuyPrice[1],pData->m_fBuyPrice[2],pData->m_fBuyPrice4,pData->m_fBuyPrice5);
WriteLog(strText);
strText.Format("%s,m_fBuyVolume:%2f,%2f,%2f,%2f,%2f",
pData->m_szName, pData->m_fBuyVolume[0], pData->m_fBuyVolume[1],pData->m_fBuyVolume[2],pData->m_fBuyVolume4,pData->m_fBuyVolume5);
WriteLog(strText);
输出显示你们的给出的数据应该有问题:
2013.11.07 14:59:54 1405,m_fBuyPrice:0.000000,0.000000,45.000000,0.000000,0.000000
2013.11.07 14:59:55 1405,m_fBuyVolume:0.000000,0.000000,19615.000000,0.000000,0.000000
王大波(14168071) 15:26:13
pData->m_fBuyVolume[2]应该是挂单3的挂单量,你们存储的却是价格。
这是在ru05上运行的
问题2)我有一个输出:
strText.Format("买入: %s,价格 %f", pData->m_szName, pData->m_fNewPrice);
WriteLog(strText);
打印的却是,
2013.11.07 14:59:54 买入: 1405,价格 159154.000000
这里你们的价格数值也不对。
估计你们这部分接口用的人不多,没有经过验证过。
问题3,我打印出了你们的当前5档的挂单数据,这些数据也是不对的,因为不可能有那么多0.
2013.11.07 14:59:54 1405,m_fBuyPrice:0.000000,0.000000,45.000000,0.000000,0.000000
2013.11.07 14:59:55 1405,m_fBuyVolume:0.000000,0.000000,19615.000000,0.000000,0.000000
2013.11.07 14:59:55 1405,m_fSellPrice:0.000000,0.000000,69.000000,0.000000,0.000000
2013.11.07 14:59:55 1405,m_fSellVolume:0.000000,0.000000,0.000000,0.000000,8.000000
每行从前向后分别是1-5档的行情,
我用的打印是:
strText.Format("%s,m_fBuyPrice:%2f,%2f,%2f,%2f,%2f",
pData->m_szName, pData->m_fBuyPrice[0], pData->m_fBuyPrice[1],pData->m_fBuyPrice[2],pData->m_fBuyPrice4,pData->m_fBuyPrice5);
WriteLog(strText);
strText.Format("%s,m_fBuyVolume:%2f,%2f,%2f,%2f,%2f",
pData->m_szName, pData->m_fBuyVolume[0], pData->m_fBuyVolume[1],pData->m_fBuyVolume[2],pData->m_fBuyVolume4,pData->m_fBuyVolume5);
WriteLog(strText);
strText.Format("%s,m_fSellPrice:%2f,%2f,%2f,%2f,%2f",
pData->m_szName, pData->m_fSellPrice[0], pData->m_fSellPrice[1],pData->m_fSellPrice[2],pData->m_fSellPrice4,pData->m_fSellPrice5);
WriteLog(strText);
strText.Format("%s,m_fSellVolume:%2f,%2f,%2f,%2f,%2f",
pData->m_szName, pData->m_fSellVolume[0], pData->m_fSellVolume[1],pData->m_fSellVolume[2],pData->m_fSellVolume4,pData->m_fSellVolume5);
WriteLog(strText);
- 金字塔客服:
上海期货交易所只有1档行情的,其他档位是没有行情数据的
- 用户回复:
你们的pData->m_fNewPrice也应该有问题吧。
你们其他期货交易所是否有5档行情呢?
你们是否会在以后新版本中解决这些问题,有没有个时间计划什么的?
多谢。
- 网友回复:
读取数据字段有错位,有可能你是用的比VC6高的版本编译的,金字塔的time_t格式是4位字节的,VS2005等版本是8位的,需要处理一下才行,参考 http://www.weistock.com/bbs/dispbbs.asp?boardid=5&Id=53323
目前只有大连和中金所支持5档行情,如果你是专业版及其以上用户,在最新版上连接期货L2服务器即可。
- 网友回复: 如果我不是专业版用户,即使设置了time_t格式是4位字节的,大连和中金所的5档行情,我也无法读出?
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 1145508240 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容