以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  [原创]分时图的黄色均线,到底如何计算?兄弟姐妹们看过来  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=6285)

--  作者:阿火
--  发布时间:2011/4/24 21:33:10
--  [原创]分时图的黄色均线,到底如何计算?兄弟姐妹们看过来

最近经常看到兄弟们提的问题是:如何引用分时图的黄色均价,在此,我想再次发帖,给大家一个精确算法:

 

首先,我批判“常见问题汇总里提供的结算价的算法”

{今日结算价}
 ZQ:=IF(LLV(DAY,0)=HHV(DAY,0),0,BARSLAST(DAY<>REF(DAY,1))+1),LINETHICK0;
 结算价:IF(SUM(VOL,ZQ)=0,(HIGH+LOW+OPEN+CLOSE)/4,SUM((HIGH+LOW+OPEN+CLOSE)/4*VOL,ZQ)/SUM(VOL,ZQ)) ;
很明显,这种算法偏差大了些。

 

要精确计算,就要知道算法。分时图的黄色均价的算法是什么呢?

“所有成交价格按成交量的加权平均价。”

换一种说法,就是=sum(每个价格*成交量)/sum(成交量)

                      =sum(每个价格*成交量*单位)/sum(成交量*单位)

                      =成交总额/(成交总量*单位)

 

于是比较精确的结算价算法如下:

cond:=day<>ref(day,1);

n:=barslast(cond)+1;

jj:sum(amount,n)/sum(vol,n)/multiplier;//适用日线及日线以下周期的K线,也试用所有品种

 

大家尽管把我的指标加载在分时图上,看是否和系统自带的黄色均价完全重叠!!

其实,这个问题我之前就有发表过,不过,帖子被沉入海底了

http://www.weistock.com/bbs/dispbbs.asp?BoardID=4&ID=4550&skin=0


——————————————————————————————————————————————————————————————————————————————————

期货的结算价与黄线基本相同 以下写法更好些

n1:=todaybar;

dm:=4-INTPART(LOG(C));

结算价:ROUNDS(IF(sum(vol,n1)=0,C,sum(C*vol,n1)/sum(vol,n1)),2+dm),colorred;


   


                                                                                                               Rogarz        2013.5.6




--  作者:ackvz
--  发布时间:2011/4/24 23:30:40
--  
图片点击可在新窗口打开查看
--  作者:redfox2005
--  发布时间:2011/7/28 21:50:40
--  

版主,这个公式在一分钟K线上不能正常计算,但把多分钟线设置为1分钟又可以正常计算,测试了一下在1分钟线上sum(amount,n)和sum(vol,n)无输出数据。


--  作者:阿火
--  发布时间:2011/7/29 8:22:48
--  

可以的。是不是你勾选了“K线图只使用当日分笔数据”?

改为这样试试:

cond:=day<>ref(day,1) or barpos=1;

n:=barslast(cond)+1;

jj:sum(amount,n)/sum(vol,n)/multiplier;//适用日线及日线以下周期的K线,也试用所有品种

[此贴子已经被作者于2011-8-2 15:14:25编辑过]

--  作者:redfox2005
--  发布时间:2011/8/1 12:34:28
--  
以下是引用leevolvo在2011-7-29 8:22:48的发言:

可以的。是不是你勾选了“K线图只使用当日分笔数据”?

改为这样试试:

cond:=day<>ref(day,1) or barpos=1;

n:=barslast(cond)+1;

jj:sum(amount,n)/sum(vol,n)/multiplier;//适用日线及日线以下周期的K线,也试用所有品种

是用了“K线图只使用当日分笔数据”模式,更改后可在1分钟显示均线了。谢谢


--  作者:rongxinma
--  发布时间:2011/8/10 22:15:47
--  
n1:=barslast(DATE<>REF(DATE,1))+1; dm:=4-INTPART(LOG(C)); AA:=ROUNDS(IF(sum(vol,n1)=0,C,sum(C*vol,n1)/sum(vol,n1)),dm+2),coloryellow; PARTLINE(DATE=REF(DATE,1),AA),COLORYELLOW,LINETHICK2; 这个就完美啦!!!!
--  作者:rongxinma
--  发布时间:2011/8/10 22:16:31
--  
n1:=barslast(DATE<>REF(DATE,1))+1; dm:=4-INTPART(LOG(C)); AA:=ROUNDS(IF(sum(vol,n1)=0,C,sum(C*vol,n1)/sum(vol,n1)),dm+2),coloryellow; PARTLINE(DATE=REF(DATE,1),AA),COLORYELLOW,LINETHICK2; 均价线完美版
--  作者:luqi
--  发布时间:2011/8/11 8:06:09
--  

完美?

你的只是近似计算而已。

sum(vol,n1)=0 这个条件用不成立

sum(C*vol,n1)/sum(vol,n1) 这个是近似计算,周期越大,越不准确。你自个加载在日线图上试试。保证相差十万八千里

人家的是精确计算


--  作者:蔡宛宏
--  发布时间:2012/1/16 16:21:12
--  

谢谢分享,希望这个能做成一个指标直接调用就好了


--  作者:金玉满堂
--  发布时间:2012/1/16 19:54:39
--  
为什么用在外盘,道琼斯指数上,就不行呢?显示明显是错误的啊?!