求大佬帮忙转换通达信指标公式成TBQ

N:=20; N1:=4; N2:=60; M:=40; M1:=8; M2:=120; DIR1:=ABS(CLOSE-REF(CLOSE,N)); VIR1:=SUM(ABS(CLOSE-REF(CLOSE,1)),N); ER1:=DIR1/VIR1; CS1:=ER1*(2/(N1+1)-2/(N2+1))+2/(N2+1); CQ1:=CS1*CS1; AMA1:=EMA(DMA(CLOSE,CQ1),2); DIR2:=ABS(CLOSE-REF(CLOSE,M)); VIR2:=SUM(ABS(CLOSE-REF(CLOSE,1)),M); ER2:=DIR2/VIR2; CS2:=ER2*(2/(M1+1)-2/(M2+1))+2/(M2+1); CQ2:=CS2*CS2; AMA2:=EMA(DMA(CLOSE,CQ2),2); 买线:REF(AMA1,1),COLORMAGENTA; 界点:REF(AMA2,1),COLORGRAY;

我在前面那个哥们的基础上改了一下,现在应该和你通达信里面的表现是一致的了。 Params Numeric N(20); Numeric N1(4); Numeric N2(60); Numeric M(40); Numeric M1(8); Numeric M2(120); Vars Series<Numeric> DIR1; Series<Numeric> VIR1; Series<Numeric> ER1; Series<Numeric> CS1; Series<Numeric> CQ1; Series<Numeric> AMA1; Series<Numeric> DIR2; Series<Numeric> VIR2; Series<Numeric> ER2; Series<Numeric> CS2; Series<Numeric> CQ2; Series<Numeric> AMA2; Series<Numeric> dma1; Series<Numeric> dma2; Defs Numeric DMA(Numeric dmap,Numeric A) { Numeric tempdmap; If(CurrentBar == 0) tempdmap =close; Else tempdmap = dmap * (1 - A) + Close * A; Return tempdmap; } Events //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组 OnBar(ArrayRef<Integer> indexs) { DIR1=ABS(CLOSE-CLOSE[N]); VIR1=Summation(ABS(CLOSE-CLOSE[1]),N); ER1=DIR1/VIR1; CS1=ER1*(2/(N1+1)-2/(N2+1))+2/(N2+1); CQ1=CS1*CS1; dma1 =dma(dma1[1],CQ1); AMA1=XAverage(dma1,2); DIR2=ABS(CLOSE-CLOSE[M]); VIR2=Summation(ABS(CLOSE-CLOSE[1]),M); ER2=DIR2/VIR2; CS2=ER2*(2/(M1+1)-2/(M2+1))+2/(M2+1); CQ2=CS2*CS2; dma2 =dma(dma2[1],CQ2); AMA2=XAverage(dma2,2); PlotNumeric("买线",AMA1[1]); PlotNumeric("界点",AMA2[1]); }

回复:可以了,非常感谢

Params Numeric N(20); Numeric N1(4); Numeric N2(60); Numeric M(40); Numeric M1(8); Numeric M2(120); Vars Series<Numeric> DIR1; Series<Numeric> VIR1; Series<Numeric> ER1; Series<Numeric> CS1; Series<Numeric> CQ1; Series<Numeric> AMA1; Series<Numeric> DIR2; Series<Numeric> VIR2; Series<Numeric> ER2; Series<Numeric> CS2; Series<Numeric> CQ2; Series<Numeric> AMA2; Events //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组 OnBar(ArrayRef<Integer> indexs) { DIR1=ABS(CLOSE-CLOSE[N]); VIR1=Summation(ABS(CLOSE-CLOSE[1]),N); ER1=DIR1/VIR1; CS1=ER1*(2/(N1+1)-2/(N2+1))+2/(N2+1); CQ1=CS1*CS1; AMA1=XAverage(AverageFC(CLOSE,CQ1),2); DIR2=ABS(CLOSE-CLOSE[M]); VIR2=Summation(ABS(CLOSE-CLOSE[1]),M); ER2=DIR2/VIR2; CS2=ER2*(2/(M1+1)-2/(M2+1))+2/(M2+1); CQ2=CS2*CS2; AMA2=XAverage(AverageFC(CLOSE,CQ2),2); PlotNumeric("买线",AMA1[1]); PlotNumeric("界点",AMA2[1]); }

回复:非常感谢,导入TBQ后显示结果跟通达信里不一样,通达信里两条线的交叉点没那么多,买点和界点显示数值也不一样