通达信利用macd控制仓位指标,请老师帮忙搞成
指标不是万能的,本人历来认为炒股之人,在决定入市之前,必须准确研判好趋势,在你无法确定趋势的情况下,最好远离股市,而指标能对我们研判趋势提供很好的帮助,但要记住,它绝不是救世主!
1、东北芳香版主所提之理念:
用MACD指标控制仓位
我们这时使用的是MACD指标,之所以使用这个指标是因为他是趋势类指标,在趋势的研判方面有他的稳定性。参数用指标的默认参数即可。
01 当DIF>0 AND DIF>DEA时 仓位可在2/3之上
02 当DIF>0出现死叉DEA时,仓位减半 若之后出现再次金叉DEA同时放量,则回补仓位
03 当DIF>0 同时出现顶背离的情况下死叉DEA时,清仓!仓位减半 若之后出现再次金叉DEA,不管是否放量,坚决不回补!
04 当DIF死叉0轴时,坚决清仓离场
当大盘MACD均为第一种情况时,
05 个股出现第一种情况时,大胆做多,加仓要果断
06 个股出现第二种时,适量减仓,一旦出现再次金叉DEA并同时放量时,果断回补仓位
07 个股出现第三种情况时,清仓!
08 个股出现第四种情况时,离场!
当大盘MACD出现第二种情况时,
09 个股出现第一种情况时,仓位最高为1/2
10 个股出现第二、三种情况时,清仓,若后期再次出现金叉,不回补!
当大盘出现第三种情况时,第一时间清仓,观望。
11 个股出现第一种情况时,要观察量价关系,若为正态分布,最高仓位为1/3
12 个股出现第二、三种情况时,清仓,若后期再次出现金叉,不回补!
当大盘出现第四种情况时,以观望为上
当大盘MACD在0轴之下运行时
13 个股出现第一种情况时,要观察量价关系,若为正态分布,最高仓位为1/4
14 个股出现第二、三种情况时,清仓,若后期再次出现金叉,不回补!
当大盘MACD在0轴之下出现底背离后,DIF>DEA,同时,个股变出现同样状况,可少量参与股性较活的个股,风格上必须为短线,快进快出。
2、按此编写MACD_KC指标原码:
参数设置:LONG(26,1,100,1); SHORT(12,1,40,1); M(9,2,60,1)
variable:dpHBL=0;
variable:gHBL=0;
variable:dpLBL=0;
variable:gLBL=0;
dpDIF:=ema(INDEXC,short) - ema(INDEXC,long);
dpDEA:=ema(dpDIF,M);
dpMACD:=2*(dpDIF-dpDEA);
gDIF:=EMA(C,SHORT) - EMA(C,LONG);
gDEA:=EMA(gDIF,M);
gMACD:=2*(gDIF-gDEA);
DIFF:=if(CATEGORY=0 or CATEGORY=3, dpDIF, gDIF);
DEA:=if(CATEGORY=0 or CATEGORY=3, dpDEA, gDEA);
MACD:=if(CATEGORY=0 or CATEGORY=3, dpMACD, gMACD);
dpHDIF:=if(ref(dpDIF,2)<=ref(dpDIF,1) and dpDIF<ref(dpDIF,1),ref(dpDIF,1),0);
dpLDIF:=if(ref(dpDIF,2)>=ref(dpDIF,1) and dpDIF>ref(dpDIF,1),ref(dpDIF,1),0);
gHDIF:=if(ref(gDIF,2)<=ref(gDIF,1) and gDIF<ref(gDIF,1),ref(gDIF,1),0);
gLDIF:=if(ref(gDIF,2)>=ref(gDIF,1) and gDIF>ref(gDIF,1),ref(gDIF,1),0);
dpT:=if(BARSLAST(dpHDIF)=0,ref(BARSLAST(dpHDIF),1)+1,BARSLAST(dpHDIF));
dpT1:=if(BARSLAST(dpLDIF)=0,ref(BARSLAST(dpLDIF),1)+1,BARSLAST(dpLDIF));
gT:=if(BARSLAST(gHDIF)=0,ref(BARSLAST(gHDIF),1)+1,BARSLAST(gHDIF));
gT1:=if(BARSLAST(gLDIF)=0,ref(BARSLAST(gLDIF),1)+1,BARSLAST(gLDIF));
if ref(dpHBL,1)=1 then begin
if dpHDIF<>0 then begin
dpHBL:=if(dpHDIF<=ref(dpHDIF,dpT),0,1);{新高>前高为1,其余为0}
end else begin
dpHBL:=ref(dpHBL,1);
end
end else begin
if dpHDIF<>0 then begin
dpHBL:=if(dpHDIF<=ref(dpHDIF,dpT),0,1);{新高>前高为1,其余为0}
end else begin
dpHBL:=ref(dpHBL,1);
end
end
if ref(dpLBL,1)=1 then begin
if dpLDIF<>0 then begin
dpLBL:=if(dpLDIF>=ref(dpLDIF,dpT1),0,1);{新低<前低为1,其余为0}
end else begin
dpLBL:=ref(dpLBL,1);
end
end else begin
if dpLDIF<>0 then begin
dpLBL:=if(dpLDIF>=ref(dpLDIF,dpT1),0,1);{新低<前低为1,其余为0}
end else begin
dpLBL:=ref(dpLBL,1);
end
end
if ref(gHBL,1)=1 then begin
if gHDIF<>0 then begin
gHBL:=if(gHDIF<=ref(gHDIF,gT),0,1);{新高>前高为1,其余为0}
end else begin
gHBL:=ref(gHBL,1);
end
end else begin
if gHDIF<>0 then begin
gHBL:=if(gHDIF<=ref(gHDIF,gT),0,1);{新高>前高为1,其余为0}
end else begin
gHBL:=ref(gHBL,1);
end
end
if ref(gLBL,1)=1 then begin
if gLDIF<>0 then begin
gLBL:=if(gLDIF>=ref(gLDIF,gT1),0,1);{新低<前低为1,其余为0}
end else begin
gLBL:=ref(gLBL,1);
end
end else begin
if gLDIF<>0 then begin
gLBL:=if(gLDIF>=ref(gLDIF,gT1),0,1);{新低<前低为1,其余为0}
end else begin
gLBL:=ref(gLBL,1);
end
end
dpA1:=dpDIF>0 and dpDIF>dpDEA;
gA1:=gDIF>0 and gDIF>gDEA;
dpA2a:=dpDIF>0 and cross(dpDEA,dpDIF);
dpA2b:=dpDIF>0 and cross(dpDIF,dpDEA) and INDEXV>ref(hhv(INDEXV,3),1) and INDEXV>ma(INDEXV,5);
gA2a:=gDIF>0 and cross(gDEA,gDIF);
gA2b:=gDIF>0 and cross(gDIF,gDEA) and V>ref(hhv(v,3),1) and V>ma(v,5);
dpA3:=dpDIF>0 and dpHBL=0 and cross(dpDEA,dpDIF);
gA3:=gDIF>0 and gHBL=0 and cross(gDEA,gDIF);
dpA4:=cross(0,dpDIF);
gA4:=cross(0,gDIF);
if dpA1 then begin
cw:=if(gA1,4,if(gA2a,5,if(gA2b,6,if(gA3 or gA4,0,0))));
end
if dpA2a then begin
cw:=if(gA1,3,if(gA2a or gA3 or gA4,0,0));
end
if dpA3 then begin
cw:=if(gA1,if(C>ref(C,1) and V>ref(V,1),2,0),0);
end
if dpA4 then cw:=0;
if dpMACD>=0 and dpDIF<=0 then begin
cw:=if(gA1,if(C>ref(C,1) and V>ref(V,1),1,0),0);
end
DIFF:DIFF,linethick0;
DEA:DEA, coloryellow;
MACD:MACD,colorstick;
CW:cw,linethick0;
PARTLINE(DIFF,DIFF>ref(DIFF,1),rgb(255,0,0),DIFF<=ref(DIFF,1),rgb(0,0,255));
DRAWICON(cw<>ref(cw,1) and cw=0,DIFF,5),ALIGN1,VALIGN1;
DRAWTEXT(cw<>ref(cw,1) and cw=0,DIFF,' 空仓'),ALIGN1,VALIGN2;
DRAWICON(cw<>ref(cw,1) and cw=1,DIFF,4),ALIGN1,VALIGN1;
DRAWTEXT(cw<>ref(cw,1) and cw=1,DIFF,' 1/4仓'),ALIGN1,VALIGN2;
DRAWICON(cw<>ref(cw,1) and cw=2,DIFF,4),ALIGN1,VALIGN1;
DRAWTEXT(cw<>ref(cw,1) and cw=2,DIFF,' 1/3仓'),ALIGN1,VALIGN2;
DRAWICON(cw<>ref(cw,1) and cw=3,DIFF,4),ALIGN1,VALIGN1;
DRAWTEXT(cw<>ref(cw,1) and cw=3,DIFF,' 1/2仓'),ALIGN1,VALIGN2;
DRAWICON(cw<>ref(cw,1) and cw=4,DIFF,4),ALIGN1,VALIGN1;
DRAWTEXT(cw<>ref(cw,1) and cw=4,DIFF,' 2/3仓'),ALIGN1,VALIGN2;
DRAWICON(cw<>ref(cw,1) and cw=5,DIFF,5),ALIGN1,VALIGN1;
DRAWTEXT(cw<>ref(cw,1) and cw=5,DIFF,' 减半'),ALIGN1,VALIGN2;
DRAWICON(cw<>ref(cw,1) and cw=6,DIFF,4),ALIGN1,VALIGN1;
DRAWTEXT(cw<>ref(cw,1) and cw=6,DIFF,' 补仓'),ALIGN1,VALIGN2;
【注明:本问没有公式提供下载,我也没法做成通达信公式,或者用大智慧,飞狐或者金字塔是可以做到。】
来函数检测结果如下:
该公式没有未来函数
定制、编写指标公式请联系QQ或微信同号:88652583
指标不是万能的,本人历来认为炒股之人,在决定入市之前,必须准确研判好趋势,在你无法确定趋势的情况下,最好远离股市,而指标能对我们研判趋势提供很好的帮助,但要记住,它绝不是救世主!1、东北芳香版主所提之理念: 用MACD指标控制仓位 我们这时使用的是MACD指标,之所以使用这个指标是因为他是趋势类指标,在趋势的研判方面有他的稳定性。参数用指标的默认参数即可。01 当DIF>0 AND DIF>DEA时 仓位可在2/3之上02 当DIF>0出现死叉DEA时,仓位减半 若之后出现再次金叉DEA同时放量,则回补仓位03 当DIF>0 同时出现顶背离的情况下死叉DEA时,清仓!仓位减半 若之后出现再次金叉DEA,不管是否放量,坚决不回补!04 当DIF死叉0轴时,坚决清仓离场 当大盘MACD均为第一种情况时,05 个股出现第一种情况时,大胆做多,加仓要果断06 个股出现第二种时,适量减仓,一旦出现再次金叉DEA并同时放量时,果断回补仓位07 个股出现第三种情况时,清仓!08 个股出现第四种情况时,离场! 当大盘MACD出现第二种情况时,09 个股出现第一种情况时,仓位最高为1/2 10 个股出现第二、三种情况时,清仓,若后期再次出现金叉,不回补! 当大盘出现第三种情况时,第一时间清仓,观望。11 个股出现第一种情况时,要观察量价关系,若为正态分布,最高仓位为1/3 12 个股出现第二、三种情况时,清仓,若后期再次出现金叉,不回补! 当大盘出现第四种情况时,以观望为上 当大盘MACD在0轴之下运行时13 个股出现第一种情况时,要观察量价关系,若为正态分布,最高仓位为1/4 14 个股出现第二、三种情况时,清仓,若后期再次出现金叉,不回补! 当大盘MACD在0轴之下出现底背离后,DIF>DEA,同时,个股变出现同样状况,可少量参与股性较活的个股,风格上必须为短线,快进快出。2、按此编写MACD_KC指标原码: 参数设置:LONG(26,1,100,1)
SHORT(12,1,40,1)
输出 M(9,2,60,1) VARIABLE:DPHBL=0
输出 VARIABLE:GHBL=0
输出 VARIABLE:DPLBL=0
输出 VARIABLE:GLBL=0
DPDIF赋值:大盘的收盘价的SHORT日指数移动平均 - 大盘的收盘价的LONG日指数移动平均
DPDEA赋值:DPDIF的M日指数移动平均
DPMACD赋值:2*(DPDIF-DPDEA)
GDIF赋值:收盘价的SHORT日指数移动平均 - 收盘价的LONG日指数移动平均
GDEA赋值:GDIF的M日指数移动平均
GMACD赋值:2*(GDIF-GDEA)
DIFF赋值:如果CATEGORY=0ORCATEGORY=3,返回DPDIF,否则返回GDIF
DEA赋值:如果CATEGORY=0ORCATEGORY=3,返回DPDEA,否则返回GDEA
MACD赋值:如果CATEGORY=0ORCATEGORY=3,返回DPMACD,否则返回GMACD
DPHDIF赋值:如果2日前的DPDIF<=1日前的DPDIFANDDPDIF<1日前的DPDIF,返回1日前的DPDIF,否则返回0
DPLDIF赋值:如果2日前的DPDIF>=1日前的DPDIFANDDPDIF>1日前的DPDIF,返回1日前的DPDIF,否则返回0
GHDIF赋值:如果2日前的GDIF<=1日前的GDIFANDGDIF<1日前的GDIF,返回1日前的GDIF,否则返回0
GLDIF赋值:如果2日前的GDIF>=1日前的GDIFANDGDIF>1日前的GDIF,返回1日前的GDIF,否则返回0
DPT赋值:如果上次DPHDIF距今天数=0,返回1日前的上次DPHDIF距今天数+1,否则返回上次DPHDIF距今天数
DPT1赋值:如果上次DPLDIF距今天数=0,返回1日前的上次DPLDIF距今天数+1,否则返回上次DPLDIF距今天数
GT赋值:如果上次GHDIF距今天数=0,返回1日前的上次GHDIF距今天数+1,否则返回上次GHDIF距今天数
GT1赋值:如果上次GLDIF距今天数=0,返回1日前的上次GLDIF距今天数+1,否则返回上次GLDIF距今天数
DPHBL赋值:如果DPHDIF<=DPT日前的DPHDIF,返回0,否则返回1
DPHBL赋值:1日前的DPHBL
DPHBL赋值:如果DPHDIF<=DPT日前的DPHDIF,返回0,否则返回1
DPHBL赋值:1日前的DPHBL
DPLBL赋值:如果DPLDIF>=DPT1日前的DPLDIF,返回0,否则返回1
DPLBL赋值:1日前的DPLBL
DPLBL赋值:如果DPLDIF>=DPT1日前的DPLDIF,返回0,否则返回1
DPLBL赋值:1日前的DPLBL
GHBL赋值:如果GHDIF<=GT日前的GHDIF,返回0,否则返回1
GHBL赋值:1日前的GHBL
GHBL赋值:如果GHDIF<=GT日前的GHDIF,返回0,否则返回1
GHBL赋值:1日前的GHBL
GLBL赋值:如果GLDIF>=GT1日前的GLDIF,返回0,否则返回1
GLBL赋值:1日前的GLBL
GLBL赋值:如果GLDIF>=GT1日前的GLDIF,返回0,否则返回1
GLBL赋值:1日前的GLBL
DPA1赋值:DPDIF>0 AND DPDIF>DPDEA
GA1赋值:GDIF>0 AND GDIF>GDEA
DPA2A赋值:DPDIF>0 AND DPDEA上穿DPDIF
DPA2B赋值:DPDIF>0 AND DPDIF上穿DPDEA AND 大盘的成交量>1日前的3日内大盘的成交量的最高值 AND 大盘的成交量>大盘的成交量的5日简单移动平均
GA2A赋值:GDIF>0 AND GDEA上穿GDIF
GA2B赋值:GDIF>0 AND GDIF上穿GDEA AND 成交量(手)>1日前的3日内成交量(手)的最高值 AND 成交量(手)>成交量(手)的5日简单移动平均
DPA3赋值:DPDIF>0 AND DPHBL=0 AND DPDEA上穿DPDIF
GA3赋值:GDIF>0 AND GHBL=0 AND GDEA上穿GDIF
DPA4赋值:0上穿DPDIF
GA4赋值:0上穿GDIF
CW赋值:如果GA1,返回4,否则返回如果GA2A,返回5,否则返回如果GA2B,返回6,否则返回如果GA3ORGA4,返回0,否则返回0
CW赋值:如果GA1,返回3,否则返回如果GA2AORGA3ORGA4,返回0,否则返回0
CW赋值:如果GA1,返回如果收盘价>1日前的收盘价ANDV>1日前的成交量(手),返回2,否则返回0,否则返回0
CW赋值:0
CW赋值:如果GA1,返回如果收盘价>1日前的收盘价ANDV>1日前的成交量(手),返回1,否则返回0,否则返回0
输出 END DIFF:DIFF,线宽为0
输出 DEA:DEA, 画黄色
输出 MACD:MACD,COLORSTICK
输出 CW:CW,线宽为0
[新]条件颜色线
当满足条件CW不等于1日前的CWANDCW=0时,在DIFF位置画5号图标,ALIGN1,VALIGN1
当满足条件CW不等于1日前的CWANDCW=0时,在DIFF位置书写文字,ALIGN1,VALIGN2
当满足条件CW不等于1日前的CWANDCW=1时,在DIFF位置画4号图标,ALIGN1,VALIGN1
当满足条件CW不等于1日前的CWANDCW=1时,在DIFF位置书写文字,ALIGN1,VALIGN2
当满足条件CW不等于1日前的CWANDCW=2时,在DIFF位置画4号图标,ALIGN1,VALIGN1
当满足条件CW不等于1日前的CWANDCW=2时,在DIFF位置书写文字,ALIGN1,VALIGN2
当满足条件CW不等于1日前的CWANDCW=3时,在DIFF位置画4号图标,ALIGN1,VALIGN1
当满足条件CW不等于1日前的CWANDCW=3时,在DIFF位置书写文字,ALIGN1,VALIGN2
当满足条件CW不等于1日前的CWANDCW=4时,在DIFF位置画4号图标,ALIGN1,VALIGN1
当满足条件CW不等于1日前的CWANDCW=4时,在DIFF位置书写文字,ALIGN1,VALIGN2
当满足条件CW不等于1日前的CWANDCW=5时,在DIFF位置画5号图标,ALIGN1,VALIGN1
当满足条件CW不等于1日前的CWANDCW=5时,在DIFF位置书写文字,ALIGN1,VALIGN2
当满足条件CW不等于1日前的CWANDCW=6时,在DIFF位置画4号图标,ALIGN1,VALIGN1
当满足条件CW不等于1日前的CWANDCW=6时,在DIFF位置书写文字,ALIGN1,VALIGN2
【注明:本问没有公式提供下载,我也没法做成通达信公式,或者用大智慧,飞狐或者金字塔是可以做到。】