커뮤니티
문의
2013-05-27 00:45:01
290
글번호 63608
inputs: ATRLength(NumericSimple), ATRMult(NumericSimple), Strength(NumericSimple), STrend(NumericRef);
vars: ATR(0), avg(0), dn(0), up(0), trend(1), flag(0), flagh(0), ST(0),hl(0);
hl = Highest(High, ATRLength) - Lowest(Low, ATRLength);
ATR = ema(hl, ATRLength);
avg = (ema(high, Strength) + ema(low, Strength))/2;
up = avg + ATR;
dn = avg - ATR;
if c > up[1] and c > Highest(High, Strength)[1] then trend = 1;
else if c < dn[1] and c < Lowest(Low, Strength)[1] then trend = -1;
if trend < 0 and trend[1] > 0 then flag =1; else flag=0;
if trend > 0 and trend[1] < 0 then flagh = 1; else flagh = 0;
if trend > 0 and dn < dn[1] then dn=dn[1];
if trend < 0 and up > up[1] then up=up[1];
if flag == 1 then up = avg + ATR;
if flagh == 1 then dn = avg - ATR;
if trend == 1 then ST = dn; else ST = up;
SuperTrend = ST;
STrend = trend;
supertrend 줄수18 열수12 연산자 앞뒤 두데이터의 형태가 같아야 한다고 나오는데
무엇이 잘못된것인가요
답변 1
예스스탁 예스스탁 답변
2013-05-27 16:19:50
안녕하세요
예스스탁입니다.
inputs: ATRLength(NumericSimple), ATRMult(NumericSimple), Strength(NumericSimple), STrend(NumericRef);
vars: ATRv(0), avgv(0), dnv(0), upv(0), trend(1), flag(0), flagh(0), ST(0),hl(0);
hl = Highest(High, ATRLength) - Lowest(Low, ATRLength);
ATRv = ema(hl, ATRLength);
avgv = (ema(high, Strength) + ema(low, Strength))/2;
upv = avgv + ATRv;
dnv = avgv - ATRv;
if c > upv[1] and c > Highest(High, Strength)[1] then trend = 1;
else if c < dnv[1] and c < Lowest(Low, Strength)[1] then trend = -1;
if trend < 0 and trend[1] > 0 then flag =1; else flag=0;
if trend > 0 and trend[1] < 0 then flagh = 1; else flagh = 0;
if trend > 0 and dnv < dnv[1] then dnv=dnv[1];
if trend < 0 and upv > upv[1] then upv=upv[1];
if flag == 1 then upv = avgv + ATRv;
if flagh == 1 then dnv = avgv - ATRv;
if trend == 1 then ST = dnv; else ST = upv;
SuperTrend = ST;
STrend = trend;
즐거운 하루되세요
> 레전드 님이 쓴 글입니다.
> 제목 : 문의
> inputs: ATRLength(NumericSimple), ATRMult(NumericSimple), Strength(NumericSimple), STrend(NumericRef);
vars: ATR(0), avg(0), dn(0), up(0), trend(1), flag(0), flagh(0), ST(0),hl(0);
hl = Highest(High, ATRLength) - Lowest(Low, ATRLength);
ATR = ema(hl, ATRLength);
avg = (ema(high, Strength) + ema(low, Strength))/2;
up = avg + ATR;
dn = avg - ATR;
if c > up[1] and c > Highest(High, Strength)[1] then trend = 1;
else if c < dn[1] and c < Lowest(Low, Strength)[1] then trend = -1;
if trend < 0 and trend[1] > 0 then flag =1; else flag=0;
if trend > 0 and trend[1] < 0 then flagh = 1; else flagh = 0;
if trend > 0 and dn < dn[1] then dn=dn[1];
if trend < 0 and up > up[1] then up=up[1];
if flag == 1 then up = avg + ATR;
if flagh == 1 then dn = avg - ATR;
if trend == 1 then ST = dn; else ST = up;
SuperTrend = ST;
STrend = trend;
supertrend 줄수18 열수12 연산자 앞뒤 두데이터의 형태가 같아야 한다고 나오는데
무엇이 잘못된것인가요