本帖最后由 易得君1号 于 2022-6-25 20:16 编辑  
 
成交量复权的原理是在送股、配股、增发等历史流通股本变动后,保持历史成交量的换手率不变。   
易得程序化提供了两种成交量复权的算法:一种是以除权数据送股配股变动粗略计算(兼容飞狐通达信),另一种是以历史流通股本变动数据精细计算。    
 
第一种以除权数据送股配股变动粗略计算(兼容飞狐通达信), 因为除权数据中只含有送股配股两种股本变动数据,不包含有增发、转增、新股上市等数据。所以计算结果稍显粗略。此算法也是跟易得函数Splitv相同算法。  
如果写成易得公式,代码如下:  
- // 使用除权数据计算复权成交量
 
 - Variable: v1 = 1;
 
  
- 红股 := SPLITDATA(1);
 
 - 配股 := SPLITDATA(2);
 
  
- v1 := v1*(1+(红股+配股)/10);
 
 - d  := v1;
 
  
- lastx : RefX(d, CurrBarsCount-1);
 
 - ratio : lastx / d;   // ratio也就是函数Splitv的结果
 
  
- 复权量 : ovol*ratio, VolStick;
 
  
- 复权量1 : ovol*Splitv;
 
  复制代码 
第二种以历史流通股本变动数据精细计算,历史流通股本变动数据包含了送股、配股、增发、转增、新股上市等全部股本变动数据,所以计算结果更加精细。此算法也是跟易得函数SplitvEx相同算法。  
 如果写成易得公式,代码如下:  
- // 使用历史流通盘变动计算复权成交量
 
 - Variable:v1=1;
 
  
- v1 := v1 * if(barpos=1,1, Capital/ref(Capital,1));
 
 - d := v1;
 
  
- lastx : RefX(d, CurrBarsCount-1);
 
 - ratio : lastx / d;  // ratio也就是函数SplitVex的结果
 
  
- 复权量 : ovol * ratio, VolStick;
 
  
- 复权量1 : ovol * SplitVex;
 
  复制代码 
检验成交量复权的准确性,因为成交量除权的核心原理就是换手率不变,使用下列公式代码,理论上两个线在图形显示上是完全重合的。  
- 换手 : ovol / Capital * 100;
 
 - 成交量 : vol, NoAxis;
 
  复制代码 
 
 
 |