以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  整理后求新K线的均价  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=172410)

--  作者:wxx212
--  发布时间:2019/10/14 22:31:40
--  整理后求新K线的均价

VARIABLE:dk1=0,xdk1=0;

n:=5;
上1:=wma(wma(hhv(h,n),n),n),LINETHICK1,colorred;
下1:=wma(wma(llv(l,n),n),n),LINETHICK1,colorgreen;


if cross(c,上1) then dk1:=1;
IF CROSS(下1,c) THEN DK1:=-1;
STICKLINE(dk1=-1 and CLOSE<OPEN ,OPEN,CLOSE,8,0),colorgreen;
STICKLINE(dk1=-1 and CLOSE>=OPEN ,OPEN,CLOSE,8,1),colorgreen;
STICKLINE(dk1=-1 , HIGH,MAX(OPEN,CLOSE),0,0),colorgreen;
STICKLINE(dk1=-1 , MIN(OPEN,CLOSE),LOW,0,0),colorgreen;
STICKLINE(dk1=1 and CLOSE>=OPEN ,OPEN,CLOSE,8,1),COLORMAGENTA;
STICKLINE(dk1=1  and CLOSE<OPEN ,OPEN,CLOSE,8,0),COLORMAGENTA;
STICKLINE(dk1=1 , HIGH,MAX(OPEN,CLOSE),0,0),COLORMAGENTA;
STICKLINE(dk1=1 , MIN(OPEN,CLOSE),LOW,0,0),COLORMAGENTA;


n1:=sumbars(dk1=1 and ref(dk1=-1,1),1);//红色
n2:=sumbars(dk1=-1 and ref(dk1=1,1),1);//绿色

红色开盘价:=ref(OPEN,n1-1);
红色收盘价:=ref(CLOSE,n1);

绿色开盘价:=ref(OPEN,n2-1);
绿色收盘价:=ref(CLOSE,n2);

红最高:=hhv(HIGH,n1);
绿最高:=hhv(HIGH,n2);

红最低:=llv(low,n1);
绿最低:=llv(low,n2);

 

 

 

计算MA(T,N)

相等于把红绿部分当作不同的新K线。T是新K线的收盘价,N是新K线的根数,求N根新K线的的均价

(原来有一个提问帖,因为太底层了,所以新开了一帖)

 


 


图片点击可在新窗口打开查看此主题相关图片如下:1571063020(1).png
图片点击可在新窗口打开查看

--  作者:FireScript
--  发布时间:2019/10/15 9:11:13
--  
 用这个试下:
mat:if(dk1=1,ma(c,n1),ma(c,n2));

--  作者:wxx212
--  发布时间:2019/10/15 11:12:32
--  
N1,N2是现有的K线数量,要求N是红绿段的段数啊!
--  作者:wxx212
--  发布时间:2019/10/15 11:13:22
--  
T是红绿段的最后价格
--  作者:FireScript
--  发布时间:2019/10/15 11:25:12
--  
 你是要求红绿交替位置那个收盘价的均值?
--  作者:wxx212
--  发布时间:2019/10/15 22:28:40
--  
是啊
--  作者:wxx212
--  发布时间:2019/10/16 9:39:17
--  
红绿交替位置的收盘价进行计算
--  作者:FireScript
--  发布时间:2019/10/16 9:41:57
--  
 a:=dk1=1 and ref(dk1=-1,1);//绿到红
b:=dk1=-1 and ref(dk1=1,1);//红到绿

ab_c:if(a or b ,ref(c,1),0);//在红绿转换时 计值
len:count(a or b,0);//统计红绿转换的次数
result:sum(ab_c,0)/len;

这样应该就差不多了。

--  作者:wxx212
--  发布时间:2019/10/16 14:25:02
--  
len:count(a or b,0);//统计红绿转换的次数
这是统计所有转换次数啊!
要求是:右向左数  N次  转换数,比如3次    MA(T,N)就是MA(ab_c,3).主要是中国3难写啊

--  作者:FireScript
--  发布时间:2019/10/16 14:30:03
--  
 你意思是要 可以自己指定一个次数进行统计。比如最近三个的“收盘价” 或者五个的“收盘价”?