커뮤니티

시스템

프로필 이미지
달마7
2019-07-26 10:09:52
171
글번호 130659
답변완료
안녕하세요 아래시스템식 해석 부탁드립니다 감사합니다 input : Period(50),Multiplier(3); var : dAtr(0),UpperLevel(0),LowerLevel(0),Direction(0); dAtr=ATR(Period); UpperLevel=(High+Low)/2+Multiplier*dAtr; LowerLevel=(High+Low)/2-Multiplier*dAtr; Direction = Direction[1]; if close > UpperLevel[1] then Direction = 1; if close < LowerLevel[1] then Direction = -1; if Direction > 0 then { LowerLevel = Max(LowerLevel,LowerLevel[1]); #plot1(LowerLevel,"SuperTrend",rgb(65,105,225)); } else { UpperLevel = Min(UpperLevel,UpperLevel[1]); #plot1(UpperLevel,"SuperTrend",rgb(255,99,71)); } # 매수/매도청산 if Direction > 0 then { Buy("매수"); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-07-26 13:58:52

안녕하세요 예스스탁입니다. 현재봉 종가가 전봉 중간값 + atr의 3배보다 크면 매수하는 수식입니다. 수식에 주석을 붙여드립니다. input : Period(50),Multiplier(3); var : dAtr(0),UpperLevel(0),LowerLevel(0),Direction(0); # atr dAtr=ATR(Period); # 봉의 중간값 + atr의 3배 UpperLevel=(High+Low)/2+Multiplier*dAtr; # 봉의 중간값 - atr의 3배 LowerLevel=(High+Low)/2-Multiplier*dAtr; # 아래는 전봉의 중간값보다 위로 크게 상승했는지 크게 하락했는지를 판단하기 위함입니다. # Direction은 기본으로 이전값 유지 Direction = Direction[1]; # 현재봉 종가가 전봉기준 UpperLevel값보다 크면 Direction을 1로 변경 if close > UpperLevel[1] then Direction = 1; # 현재봉 종가가 전봉기준 LowerLevel값보다 작으면 Direction을 -1로 변경 if close < LowerLevel[1] then Direction = -1; #Direction이 1인 상태일때는 (최근 크게상승) if Direction > 0 then { # LowerLevel은 최근 2개봉 LowerLevel 중 큰값으로 저장 LowerLevel = Max(LowerLevel,LowerLevel[1]); } else { # UpperLevel은 최근 2개봉 LowerLevel값보다 작은값으로 저장 UpperLevel = Min(UpperLevel,UpperLevel[1]); } # 매수/매도청산 # Direction이 1일때 매수 if Direction > 0 then { Buy("매수"); } 즐거운 하루되세요 > 달마7 님이 쓴 글입니다. > 제목 : 시스템 > 안녕하세요 아래시스템식 해석 부탁드립니다 감사합니다 input : Period(50),Multiplier(3); var : dAtr(0),UpperLevel(0),LowerLevel(0),Direction(0); dAtr=ATR(Period); UpperLevel=(High+Low)/2+Multiplier*dAtr; LowerLevel=(High+Low)/2-Multiplier*dAtr; Direction = Direction[1]; if close > UpperLevel[1] then Direction = 1; if close < LowerLevel[1] then Direction = -1; if Direction > 0 then { LowerLevel = Max(LowerLevel,LowerLevel[1]); #plot1(LowerLevel,"SuperTrend",rgb(65,105,225)); } else { UpperLevel = Min(UpperLevel,UpperLevel[1]); #plot1(UpperLevel,"SuperTrend",rgb(255,99,71)); } # 매수/매도청산 if Direction > 0 then { Buy("매수"); }