以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  如何按照假定的MACD柱线数值,计算当前价格?  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=15435)

--  作者:txin66
--  发布时间:2012/8/25 22:45:11
--  如何按照假定的MACD柱线数值,计算当前价格?

在日线上,计算出当MACD柱线的数值等于某个假定的数值时,这时候的价格是多少?

(一般是根据当前价格,可以计算出MACD柱线数值。我这里正好需要的是反向计算。)

实在不知道怎么编写这个公式,请高手指点。


--  作者:阿火
--  发布时间:2012/8/26 18:07:29
--  

jx1:=ema(c,12);
jx2:=ema(c,26);
DIFF := jx1 -jx2;
DEA  := EMA(DIFF,M);

MACD := 2*(DIFF-DEA);
x:=-0.11;
price: ( x*5/8 + ref(dea,1)+  ref(jx2,1)*25/27 - ref(jx1,1)*11/13 ) /28 *351


--  作者:txin66
--  发布时间:2012/8/27 8:05:25
--  

虽然暂时没彻底明白,但深表感谢!!!


--  作者:txin66
--  发布时间:2012/8/27 8:17:55
--  

阿火老师,能否里面的参数,全部用变量名(如:L,S,M)代替,不直接用12、26这个数字参数,再写一下?

你写的公式里,28和351不知道是怎么来的?

[此贴子已经被作者于2012-8-27 8:19:39编辑过]

--  作者:阿火
--  发布时间:2012/8/27 9:16:06
--  

一看就是个高中数学没过关的

 

计算过程如下:

 

jx1:=ema(c,s);
jx2:=ema(c,p);
diff:=jx1-jx2;
dea:=ema(diff,m);
macd:=2(diff-dea);

diff- ( ref(dea,1)*(m-1)/(m+1) + diff*2/(m+1) ) = macd/2
( diff-  ref(dea,1) )*(m-1)/(m+1)  = macd/2
 diff-  ref(dea,1)   = macd*(m+1)/2/(m-1)
 diff   = macd*(m+1)/2/(m-1) +  ref(dea,1)
 ref(jx1,1)*(s-1)/(s+1)+ c*2/(s+1) - ( ref(jx2,1)*(p-1)/(p+1) + c*2/(p+1)) =  macd*(m+1)/2/(m-1) +  ref(dea,1)
c*2/(s+1)  - c*2/(p+1) =  macd*(m+1)/2/(m-1) +  ref(dea,1) +  ref(jx2,1)*(p-1)/(p+1) - ref(jx1,1)*(s-1)/(s+1)
c*(p+1-(s+1)) = ( macd*(m+1)/2/(m-1) +  ref(dea,1) +  ref(jx2,1)*(p-1)/(p+1) - ref(jx1,1)*(s-1)/(s+1) )*(p+1)*(s+1)/2
c = ( macd*(m+1)/2/(m-1) +  ref(dea,1) +  ref(jx2,1)*(p-1)/(p+1) - ref(jx1,1)*(s-1)/(s+1) )*(p+1)*(s+1)/2/(p-s)


--  作者:txin66
--  发布时间:2012/8/27 10:16:12
--  

呵呵,谢谢哈。