按月分段显示涨幅//特殊指标——按月分段涨幅 {参数 缺省 最小 最大N 1 1 12M 1 1 12} INPUT:N(1,1,12),M(1,1,12); w:=barslast(day<ref(day,1));//分段位置 w=0 时 就是分段点 0POINTDOT; f:(c/ref(c,w+1)-1)*100linethick0; PARTLINE(w,f)coloryellow; ww:=cross(BACKSET(w=0 or ISLASTBAR,ref(w,1)/2+3),0.5); DRAWTEXT(ww,f,' 月')ALIGN4; DRAWNUMBER(ww,f,month,0)ALIGN4; DRAWTEXT(w=0,ref(f,1),'月涨幅= ')ALIGN2; DRAWNUMBER(w=0,ref(f,1),ref(f,1),3)ALIGN2; DRAWTEXT(ISLASTBAR,0,' 本\n 月\n 涨\n 幅')ALIGN4; DRAWNUMBER(ISLASTBAR,0,f,3)ALIGN5; VERTLINE(w=0)POINTDOT; wi:=barslast(day<ref(day,1) and if(N=12,month=1,month=N+1)); {file://N=1~12 月份数} wJ:=barslast(day<ref(day,1) and if(m=12,month=1,month=m+1)); {file://M=1~12 月份数}hf:ref(f,wi+1)+ref(f,wj+1)linethick0;//当前月以前的任意两月的涨幅和 hf0:ref(f,wi+1)+f*ISLASTBAR,linethick0;//当前月与任意月的涨幅和} { 把公式中的 w:=barslast(day<ref(day,1)); 改为 w:=barslast(month<ref(month,1)); 就是按年分段。 改为 w:=barslast(week<ref(week,1)); 就是按周分段。 改为 w:=barslast((month=1 or month=4 or month=7 month=10) and day<ref(day,1)); 就是按季分段。 |