예스스탁
예스스탁 답변
2023-05-02 15:13:27
안녕하세요
예스스탁입니다.
현재 수식에 막대그래프가 2개 입니다.
plot2로 그려지는 md값 돌파/이탈로 작성해 드립니다.
1
input : lengthMA(34),lengthSignal(9);
var : src(0),hi(0),lo(0),Ema1(0),Ema2(0),mi(0);
var : md(0),sb(0),sh(0),mdc(0);
/*calc_smma(src, len) =>
smma=na(smma[1]) ? sma(src, len) : (smma[1] * (len - 1) + src) / len
smma
calc_zlema(src, length) =>
ema1=ema(src, length)
ema2=ema(ema1, length)
d=ema1-ema2
ema1+d
*/
src = (h+l+c)/3;
hi = IFF(IsNan(hi[1]) == true, ma(high,lengthMA), hi[1]*(lengthMA-1)+high)/lengthMA;
lo = IFF(IsNan(lo[1]) == true, ma(low,lengthMA), lo[1]*(lengthMA-1)+low)/lengthMA;
ema1 = ema(src, lengthMA);
ema2 = ema(ema1, lengthMA);
mi = ema1+(ema1-ema2);
md = IFf((mi>hi), (mi-hi) , IFf((mi<lo) , (mi - lo) , 0));
sb = ma(md, lengthSignal);
sh = md-sb;
mdc = iff(src>mi,iff(src>hi,lime,green),iff(src<lo,red,orange));
/*plot1(0,"MidLine",Gray);
plot2(md,"ImpulseMACD",mdc);#속성에서 막대
plot3(sh,"ImpulseHisto",Blue); #속성에서 막대
plot4(sb,"ImpulseMACDCDSignal",Maroon);*/
if CrossUp(sb,0) or CrossUp(sb,md) Then
Buy();
if CrossDown(sb,0) or CrossDown(sb,md) Then
sell();
2
input : lengthMA(34),lengthSignal(9);
var : src(0),hi(0),lo(0),Ema1(0),Ema2(0),mi(0);
var : md(0),sb(0),sh(0),mdc(0);
/*calc_smma(src, len) =>
smma=na(smma[1]) ? sma(src, len) : (smma[1] * (len - 1) + src) / len
smma
calc_zlema(src, length) =>
ema1=ema(src, length)
ema2=ema(ema1, length)
d=ema1-ema2
ema1+d
*/
src = (h+l+c)/3;
hi = IFF(IsNan(hi[1]) == true, ma(high,lengthMA), hi[1]*(lengthMA-1)+high)/lengthMA;
lo = IFF(IsNan(lo[1]) == true, ma(low,lengthMA), lo[1]*(lengthMA-1)+low)/lengthMA;
ema1 = ema(src, lengthMA);
ema2 = ema(ema1, lengthMA);
mi = ema1+(ema1-ema2);
md = IFf((mi>hi), (mi-hi) , IFf((mi<lo) , (mi - lo) , 0));
sb = ma(md, lengthSignal);
sh = md-sb;
mdc = iff(src>mi,iff(src>hi,lime,green),iff(src<lo,red,orange));
/*plot1(0,"MidLine",Gray);
plot2(md,"ImpulseMACD",mdc);#속성에서 막대
plot3(sh,"ImpulseHisto",Blue); #속성에서 막대
plot4(sb,"ImpulseMACDCDSignal",Maroon);*/
if CrossUp(sb,0) or CrossUp(sb,md) Then
find(1);
2-2
input : lengthMA(34),lengthSignal(9);
var : src(0),hi(0),lo(0),Ema1(0),Ema2(0),mi(0);
var : md(0),sb(0),sh(0),mdc(0);
/*calc_smma(src, len) =>
smma=na(smma[1]) ? sma(src, len) : (smma[1] * (len - 1) + src) / len
smma
calc_zlema(src, length) =>
ema1=ema(src, length)
ema2=ema(ema1, length)
d=ema1-ema2
ema1+d
*/
src = (h+l+c)/3;
hi = IFF(IsNan(hi[1]) == true, ma(high,lengthMA), hi[1]*(lengthMA-1)+high)/lengthMA;
lo = IFF(IsNan(lo[1]) == true, ma(low,lengthMA), lo[1]*(lengthMA-1)+low)/lengthMA;
ema1 = ema(src, lengthMA);
ema2 = ema(ema1, lengthMA);
mi = ema1+(ema1-ema2);
md = IFf((mi>hi), (mi-hi) , IFf((mi<lo) , (mi - lo) , 0));
sb = ma(md, lengthSignal);
sh = md-sb;
mdc = iff(src>mi,iff(src>hi,lime,green),iff(src<lo,red,orange));
/*plot1(0,"MidLine",Gray);
plot2(md,"ImpulseMACD",mdc);#속성에서 막대
plot3(sh,"ImpulseHisto",Blue); #속성에서 막대
plot4(sb,"ImpulseMACDCDSignal",Maroon);*/
if CrossDown(sb,0) or CrossDown(sb,md) Then
find(1);
즐거운 하루되세요
> 고박사122 님이 쓴 글입니다.
> 제목 : 수식작성 부탁드립니다.
> 안녕하세요. 운영자님
1. 이번에 요청드릴 사항은 첨부된 그림파일의 봉차트에 제가 수작업으로 화살표를 표시한 것처럼
Polt4 가 막대그래프를 상향돌파하거나 기준선 0선을 상향돌파하면 매수
Polt4 가 막대그래프를 하향돌파하거나 기준선 0선을 하향돌파하면 매도 화살표가 뜨도록 부탁드립니다.
2. 국내주식에 적용 시 매수조건 및 매도조건을 따로 설정하여 종목검색이 되어주시도록 부탁드립니다. (국내주식은 예스트레이더 사용이 초보라 잘 모릅니다)
input : lengthMA(34),lengthSignal(9);
var : src(0),hi(0),lo(0),Ema1(0),Ema2(0),mi(0);
var : md(0),sb(0),sh(0),mdc(0);
/*calc_smma(src, len) =>
smma=na(smma[1]) ? sma(src, len) : (smma[1] * (len - 1) + src) / len
smma
calc_zlema(src, length) =>
ema1=ema(src, length)
ema2=ema(ema1, length)
d=ema1-ema2
ema1+d
*/
src = (h+l+c)/3;
hi = IFF(IsNan(hi[1]) == true, ma(high,lengthMA), hi[1]*(lengthMA-1)+high)/lengthMA;
lo = IFF(IsNan(lo[1]) == true, ma(low,lengthMA), lo[1]*(lengthMA-1)+low)/lengthMA;
ema1 = ema(src, lengthMA);
ema2 = ema(ema1, lengthMA);
mi = ema1+(ema1-ema2);
md = IFf((mi>hi), (mi-hi) , IFf((mi<lo) , (mi - lo) , 0));
sb = ma(md, lengthSignal);
sh = md-sb;
mdc = iff(src>mi,iff(src>hi,lime,green),iff(src<lo,red,orange));
plot1(0,"MidLine",Gray);
plot2(md,"ImpulseMACD",mdc);#속성에서 막대
plot3(sh,"ImpulseHisto",Blue); #속성에서 막대
plot4(sb,"ImpulseMACDCDSignal",Maroon);