주봉 검색 말고 일봉으로 보려면 어떻게 바꿔야하나요??
그리고 매수신호와 매도신호를 넣을거라
find대신 buy를 넣어 매수신호는 완성한거같은데
매도신호를 진입가대비 7%하락시 매도로 하려면
if C < entryprice * 0.93 Then
sell("s1");
이렇게만 짜도 무방한가요??
항상 친절하고 만족스런 답변 감사합니다.
============================================================
안녕하세요
예스스탁입니다.
저가는 어떤 기간의 저가인지 불명확하여
52주 최고가 이후 최저가로 계산했습니다.
종목검색시 주봉에서 검색하시면 되고
종목검색 속성에서 검색에 필요한 최소기간을
넉넉히 60봉 이상으로 지정하고 검색하시기 바랍니다.
var : cnt(0),HH(0),Hi(0),LL(0),Li(0);
HH = H;
Hi = 0;
for cnt = 0 to 52-1{
if H[cnt] > HH Then{
HH = H[cnt];
HI = cnt;
}
}
#52주 최고가 이후 최저가
LL = L;
for cnt = 0 to Hi{
if L[cnt] < LL Then
LL = L[cnt];
}
if C <= HH*0.6 and C >= LL*1.07 Then
find(1);
즐거운 하루되세요
답변 1
예스스탁
예스스탁 답변
2016-04-05 11:43:18
안녕하세요
예스스탁입니다.
1.
일봉에서 검색하신다면 아래와 같이 식을 변경하셔야 합니다.
종목검색속성에서 검색에 필요한 봉수를
일봉으로 52주는 약 260일 이므로 넉넉히 300봉 이상 지정하고
검색하시기 바랍니다.
input : N(52);
var : cnt(0),HH(0),Hi(0),LL(0),Li(0);
Array : WeekH[100](0),WeekL[100](0);
if DayOfWeek(sdate) < DayOfWeek(sdate[1]) Then{
WeekH[0] = H;
WeekL[0] = L;
for cnt = 1 to 99{
WeekH[cnt] = WeekH[cnt-1][1];
WeekL[cnt] = WeekL[cnt-1][1];
}
}
if H > WeekH[0] Then
WeekH[0] = H;
if L < WeekL[0] Then
WeekL[0] = L;
if WeekH[N] > 0 and WeekL[N] > 0 Then{
HH = WeekH[0];
Hi = 0;
for cnt = 0 to N{
if WeeKH[cnt] > HH Then{
HH = WeekH[cnt];
HI = cnt;
}
}
#52주 최고가 이후 최저가
LL = WeekL[0];
for cnt = 0 to Hi{
if WeekL[cnt] < LL Then
LL = WeekL[cnt];
}
if C <= HH*0.6 and C >= LL*1.07 Then
find(1);
}
2.
시스템식으로 변경하시면 아래와 같습니다.
작성하신 매도식이 맞습니다.
sell은 매도진입함수입니다. sell함수가 반대포지션상태에서
발생하면 청산을 같이 하므로 sell함수를 이용하셔도 되지만
기본적으로 매수를 청산만 할떄는 sell대신에 exitlong함수를 사용합니다.
input : N(52);
var : cnt(0),HH(0),Hi(0),LL(0),Li(0);
Array : WeekH[100](0),WeekL[100](0);
if DayOfWeek(sdate) < DayOfWeek(sdate[1]) Then{
WeekH[0] = H;
WeekL[0] = L;
for cnt = 1 to 99{
WeekH[cnt] = WeekH[cnt-1][1];
WeekL[cnt] = WeekL[cnt-1][1];
}
}
if H > WeekH[0] Then
WeekH[0] = H;
if L < WeekL[0] Then
WeekL[0] = L;
if WeekH[N] > 0 and WeekL[N] > 0 Then{
HH = WeekH[0];
Hi = 0;
for cnt = 0 to N{
if WeeKH[cnt] > HH Then{
HH = WeekH[cnt];
HI = cnt;
}
}
#52주 최고가 이후 최저가
LL = WeekL[0];
for cnt = 0 to Hi{
if WeekL[cnt] < LL Then
LL = WeekL[cnt];
}
if C <= HH*0.6 and C >= LL*1.07 Then
buy("매수");
if MarketPosition == 1 and C <= EntryPrice*0.97 Then
ExitLong("매도");
}
즐거운 하루되세요
> 생선가시 님이 쓴 글입니다.
> 제목 : 안녕하세요. 수식 질문있습니다.
> 주봉 검색 말고 일봉으로 보려면 어떻게 바꿔야하나요??
그리고 매수신호와 매도신호를 넣을거라
find대신 buy를 넣어 매수신호는 완성한거같은데
매도신호를 진입가대비 7%하락시 매도로 하려면
if C < entryprice * 0.93 Then
sell("s1");
이렇게만 짜도 무방한가요??
항상 친절하고 만족스런 답변 감사합니다.
============================================================
안녕하세요
예스스탁입니다.
저가는 어떤 기간의 저가인지 불명확하여
52주 최고가 이후 최저가로 계산했습니다.
종목검색시 주봉에서 검색하시면 되고
종목검색 속성에서 검색에 필요한 최소기간을
넉넉히 60봉 이상으로 지정하고 검색하시기 바랍니다.
var : cnt(0),HH(0),Hi(0),LL(0),Li(0);
HH = H;
Hi = 0;
for cnt = 0 to 52-1{
if H[cnt] > HH Then{
HH = H[cnt];
HI = cnt;
}
}
#52주 최고가 이후 최저가
LL = L;
for cnt = 0 to Hi{
if L[cnt] < LL Then
LL = L[cnt];
}
if C <= HH*0.6 and C >= LL*1.07 Then
find(1);
즐거운 하루되세요