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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → 为什么经常读取不到前复权的值

   

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


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

主题:为什么经常读取不到前复权的值

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


加好友 发短信
等级:新手上路 帖子:48 积分:75 威望:0 精华:0 注册:2012/12/1 2:36:03
为什么经常读取不到前复权的值  发帖心情 Post By:2013/6/30 21:03:34 [显示全部帖子]

 

代码如下:

 

stData.m_dataType = DAY_DATA;//日线
  stData.m_bIsPow = 1; //是否复权
  stData.m_nPowType = 0;
 
  if(g_pMainFormework->GetDataInfo(&stData))
  {   

     /……/

 }

 

为什么有的时候读出来的值是前复权的,有时候又是没有复权的。但大多数时候都是不复权的。很不稳定。

到底是怎么回事啊?


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


加好友 发短信
等级:新手上路 帖子:48 积分:75 威望:0 精华:0 注册:2012/12/1 2:36:03
周俞蘅:10月10现货沥青/燃油操作建议+后市行情走势分析  发帖心情 Post By:2013/7/1 14:22:03 [显示全部帖子]

还有,试了一下,即便在观察股票图形的窗口,我按“复权”按钮F11,很多时候,图形也没有丝毫反应。

但有的时候按F11,图形又会变成复权价格。

是金字塔的一个bug吗?


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


加好友 发短信
等级:新手上路 帖子:48 积分:75 威望:0 精华:0 注册:2012/12/1 2:36:03
  发帖心情 Post By:2013/7/1 15:27:09 [显示全部帖子]

你说的新版下的结构就和新版本安装完后的addindemo中的结构是一直的吗?是如下吗?

typedef struct
{
 //////////////////////////////////////////////////////////////////////////
 //调用数据信息
 DWORD   m_dwVersion;   //调用软件版本(V2.10 : 0x210)
 DWORD   m_dwSerial;    //调用软件序列号
 char   m_szLabel[10];   //调用的品种代码
 WORD   m_wMarket;    //调用的品种市场,比如上海为'HS'
 CYC_DATA_TYPE m_dataType;    //调用数据类型
 BYTE   m_bIsPow;    //是否复权
 BYTE   m_nPowType;    //复权类别 0向前复权 1向后复权
 BYTE   m_bIsReversePrice;  //是否反转价格
 DWORD   m_nDataCount;   //调用数据的数量,填0表示全部硬盘保存数据
 BYTE   m_nReserve[5];
 
 //////////////////////////////////////////////////////////////////////////
 //以下为返回的数据信息 
 int     m_nNumData;   //数据数量
 HISTORY_STRUCTEx *  m_pMainData;  //主数据缓冲区
 
 SUBSECTION_REPORT * m_pSubsection;  //当日分笔成交明细
 int     m_nNumSubData;  //分笔数据量

 REPORT_STRUCT*  m_pReport;   //动态实时行情结构
 float*    m_pfFinData;  //财务数据
 
 POWER_STRUCTEx* m_pSplitData;   //除权数据
 int    m_nNumSplitData;  //除权次数
}PCALCINFO;

这个应该就是最新版吧。

我用它生成的dll最大的问题在于:于这一次它读出来的是复权值,下一次又是没有复权的指。非常混乱,找不到规律。我看论坛上也有其它人不止一次反馈过前复权的问题。建议你们自己写个代码测试一下。

毕竟这是个大问题,谢谢。

 


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


加好友 发短信
等级:新手上路 帖子:48 积分:75 威望:0 精华:0 注册:2012/12/1 2:36:03
  发帖心情 Post By:2013/7/1 20:43:22 [显示全部帖子]

经过多次试验,问题是这样的,打开金字塔软件后,默认状态我选择的是“复权状态”---即复权按钮为按下的状态。

这时。我用上述代码读一个股票在某一日的值却为未复权价。这时,我进入该股票的图形界面,发现即便此时默认状态为“复权状态”,但是股票实际显示的是未复权价,这时我必须重复按下“复权”按钮两次,此时该股票图形界面上才显示为复权价。

然后我依然用上述代码读取,会得到复权价。

 

总结:就是说,即便默认状态下“复权按钮”是按下的,但是很多股票图形上显示的依然是未复权价,只有再重复按“复权”按钮两次,这时股票图形界面上才显示为复权价。

而图形界面上显示什么价格,用代码读出来的就是什么价格。和代码里是否设置了"读复权价"这个选项关系不大。

 

复权按钮即便默认状态下是按下的,对很多股票都是无效的,这个问题我去年也遇到了。是否是软件的一个重大bug?


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


加好友 发短信
等级:新手上路 帖子:48 积分:75 威望:0 精华:0 注册:2012/12/1 2:36:03
  发帖心情 Post By:2013/7/1 22:46:50 [显示全部帖子]

想了一下,可能是这样的问题:

金字塔历史数据中除权信息不全,所以第一次用代码读取和打开该股的图形界面时,看到的是未复权价格。

但是当点击该股图形界面时,,服务器自动对该股信息进行更新,于是过了几秒后,这时图形界面上的价格变成了复权价(前提是“复权”按钮已经按下),

同时自动更新了历史数据中的除权信息(这点比较奇怪)

于是这时用代码再读取,得到的就是复权价了。

 

 

 


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


加好友 发短信
等级:新手上路 帖子:48 积分:75 威望:0 精华:0 注册:2012/12/1 2:36:03
  发帖心情 Post By:2013/7/2 9:39:24 [显示全部帖子]

谢谢回复,但代码经常读取不到复权价,这个问题应该怎么解决呢?

 

还有,我昨天的如下猜测对吗,如果这个猜测是对的,可能就是数据源的问题。

猜测如下:

金字塔历史数据中除权信息不全,所以第一次用代码读取和打开该股的图形界面时,看到的是未复权价格。

但是当点击该股图形界面时,,服务器自动对该股信息进行更新,于是过了几秒后,这时图形界面上的价格变成了复权价(前提是“复权”按钮已经按下),

同时自动更新了历史数据中的除权信息(这点比较奇怪,会这样设计吗?)

于是这时用代码再读取,得到的就是复权价了。


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


加好友 发短信
等级:新手上路 帖子:48 积分:75 威望:0 精华:0 注册:2012/12/1 2:36:03
  发帖心情 Post By:2013/7/2 9:51:13 [显示全部帖子]

谢谢回复,但代码经常读取不到复权价,这个问题应该怎么解决呢?

 

还有,我昨天的如下猜测对吗,如果这个猜测是对的,可能就是数据源的问题。

猜测如下:

金字塔历史数据中除权信息不全,所以第一次用代码读取和打开该股的图形界面时,看到的是未复权价格。

但是当点击该股图形界面时,,服务器自动对该股信息进行更新,于是过了几秒后,这时图形界面上的价格变成了复权价(前提是“复权”按钮已经按下),

同时自动更新了历史数据中的除权信息(这点比较奇怪,会这样设计吗?)

于是这时用代码再读取,得到的就是复权价了。


 回到顶部