通达信日周KDJ日周MACD副图公式源码
该公式在日线界面同时显示日MACD和周MACD(含柱线),免去周期切换。上方数值区显示当日和周MACD值,图形区用不同颜色区分日/周柱。周MACD按最新周K线位置对齐。附带操作说明文字,提示周KDJ对应K线位置。适用于日线周期观察周线MACD形态。
{
KDJ和MACD是我们经常用到的公式,特别是它们在周线下的形态我们会特别关注,因此免不了经常在日周两个周期内切换。本公式免去了这种切换的麻烦,同时又不像有些周线公式日显时需要不断缩小才能窥见全貌。
使用中需要注意的问题我已经在公式内做了说明,不需要可自行编辑删除。
}
DDATE:DATE,NODRAW,COLORRED;
DIF:EMA(C,12)-EMA(C,26),COLORWHITE;
DEA:EMA(DIF,9),COLORYELLOW;
MACD:(DIF-DEA)*2,NODRAW,COLORMAGENTA;
{显示MACD柱}
STICKLINE(MACD>0,MACD,0,1,1),COLORRED;
STICKLINE(MACD<0,0,MACD,1,1),COLORGREEN;
TESTSKIP(PERIOD!=5);
{周MACD}
D1:=DATE;
DIF1:=MACD.DIF#WEEK;
DEA1:=MACD.DEA#WEEK;
WEK:=REFX(WEEKDAY<REF(WEEKDAY,1) OR
DATETODAY(DATE)-DATETODAY(REF(DATE,1))>=7,1) OR ISLASTBAR;
D2:=IF(WEK,D1,DRAWNULL);
DIF2:=IF(WEK,DIF1,DRAWNULL);
DEA2:=IF(WEK,DEA1,DRAWNULL);
周日期:ALIGNRIGHT(D2),NODRAW,COLORRED;
周DIF:ALIGNRIGHT(DIF2),NODRAW,COLORWHITE;
周DEA:ALIGNRIGHT(DEA2),NODRAW,COLORYELLOW;
周MACD:(周DIF-周DEA)*2,NODRAW,COLORMAGENTA;
A1:=CONST(LLV(MACD,150))*2;
Q:=0.6;
NOTEXTA1:A1,COLOR336699,DOTLINE;
{显示周MACD柱}
STICKLINE(周MACD>0,A1,周MACD*Q+A1,1,1),COLOR0099FF;
STICKLINE(周MACD<0,A1,周MACD*Q+A1,1,1),COLOR999900;
{分析家公式网 整理}
{显示周MACD均线}
NOTEXT周DIF:周DIF*Q+A1,DOTLINE,COLORLIRED;
NOTEXT周DEA:周DEA*Q+A1,DOTLINE,COLORCYAN;
{日周KDJ同图}
DRAWTEXT_FIX(1,0.01,0.01,0,'1、在日线观察周KDJ,与它在周线的样子是一样的'),COLORWHITE;
DRAWTEXT_FIX(1,0.01,0.06,0,'2、在日线分析周KDJ时,注意对应的最右边一根K线是最近的这周'),COLORWHITE;
DRAWTEXT_FIX(1,0.01,0.11,0,'3、相应的,往左数第二根K线对应上周,接着是上上周...'),COLORWHITE;
DRAWTEXT_FIX(1,0.01,0.16,0,'4、周线KDJ的具体数值看上方,这才是是正确的'),COLORWHITE;

未来函数检测结果- 该公式包含未来函数:#WEEK
- 该公式包含未来函数:REFX
输出DDATE:日期,NODRAW,画红色
输出DIF:收盘价的12日指数移动平均-收盘价的26日指数移动平均,画白色
输出DEA:DIF的9日指数移动平均,画黄色
输出平滑异同平均线:(DIF-DEA)*2,NODRAW,画洋红色
当满足条件MACD>0时,在MACD和0位置之间画柱状线,宽度为1,1不为0则画空心柱.,画红色
当满足条件MACD<0时,在0和MACD位置之间画柱状线,宽度为1,1不为0则画空心柱.,画绿色
如果满足条件周期类型不等于5,公式返回
D1赋值:日期
DIF1赋值:MACD.DIF[取周线数据]
DEA1赋值:MACD.DEA[取周线数据]
WEK赋值:1日后的星期<1日前的星期ORDATETODAY(日期)-1日前的日期对应的转换天数>=7 OR 是否最后一个周期
D2赋值:如果WEK,返回D1,否则返回无效数
DIF2赋值:如果WEK,返回DIF1,否则返回无效数
DEA2赋值:如果WEK,返回DEA1,否则返回无效数
输出周日期:D2的有效数据右对齐,NODRAW,画红色
输出周DIF:DIF2的有效数据右对齐,NODRAW,画白色
输出周DEA:DEA2的有效数据右对齐,NODRAW,画黄色
输出周MACD:(周DIF-周DEA)*2,NODRAW,画洋红色
A1赋值:150日内MACD的最低值的最后一日取值设为常数*2
Q赋值:0.6
输出NOTEXTA1:A1,COLOR336699,DOTLINE
当满足条件周MACD>0时,在A1和周MACD*Q+A1位置之间画柱状线,宽度为1,1不为0则画空心柱.,COLOR0099FF
当满足条件周MACD<0时,在A1和周MACD*Q+A1位置之间画柱状线,宽度为1,1不为0则画空心柱.,COLOR999900
输出NOTEXT周DIF:周DIF*Q+A1,DOTLINE,画淡红色
输出NOTEXT周DEA:周DEA*Q+A1,DOTLINE,画青色
当满足条件1时,在横轴0.01纵轴0.01位置书写文字,画白色
当满足条件1时,在横轴0.01纵轴0.06位置书写文字,画白色
当满足条件1时,在横轴0.01纵轴0.11位置书写文字,画白色
当满足条件1时,在横轴0.01纵轴0.16位置书写文字,画白色