커뮤니티
시스템
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("매수");
}
다음글
이전글