커뮤니티
수식작성예제의 DMI를 이용한 교차매매식이 실행이 안됩니다.
2006-03-04 20:52:04
1759
글번호 9524
Yestrader3에서 다음 식이 실행이 안되네요.
input : Period(14);
var : 당일고가(0), 당일저가(0);
if date != date[1] then
{
당일고가 = H;
당일저가 = L;
}
if H > 당일고가 Then //고가 갱신(고가가 저장된 고가값보다 클때)
당일고가 = H;
if L < 당일저가 Then //저가 갱신(저가가 저장된 저가값보다 작을때)
당일저가 = L;
if accumN(iff(crossup(DIPlus(Period), DIMinus(Period)), 1, 0), dayindex()+1) >= 1 and //문장1
crossup(C, 당일고가[1]) then //문장2
buy();
if accumN(iff(crossdown(DIPlus(Period), DIMinus(Period)), 1, 0), dayindex()+1) >= 1 and //문장3
crossdown(C, 당일저가[1]) then //문장4
sell();
- 1. H_DMI를 이용한 교차매매.ysg (0.00 MB)
답변 3
예스스탁 예스스탁 답변
2006-03-06 08:52:46
안녕하세요
예스스탁입니다.
올리신 식을 연결선물에 적용해 본 결과
정상적으로 실행되고 있습니다.
다만 첨부파일에서
당일고가와 당일저가에 이전값참조가 되지 않아 신호가 발생하지 않았습니다.
당일고가[1],당일저가[1]로 수정하시기 바랍니다.
즐거운 하루되세요
> harpring 님이 쓴 글입니다.
> 제목 : 수식작성예제의 DMI를 이용한 교차매매식이 실행이 안됩니다.
> Yestrader3에서 다음 식이 실행이 안되네요.
input : Period(14);
var : 당일고가(0), 당일저가(0);
if date != date[1] then
{
당일고가 = H;
당일저가 = L;
}
if H > 당일고가 Then //고가 갱신(고가가 저장된 고가값보다 클때)
당일고가 = H;
if L < 당일저가 Then //저가 갱신(저가가 저장된 저가값보다 작을때)
당일저가 = L;
if accumN(iff(crossup(DIPlus(Period), DIMinus(Period)), 1, 0), dayindex()+1) >= 1 and //문장1
crossup(C, 당일고가[1]) then //문장2
buy();
if accumN(iff(crossdown(DIPlus(Period), DIMinus(Period)), 1, 0), dayindex()+1) >= 1 and //문장3
crossdown(C, 당일저가[1]) then //문장4
sell();
harpring
2006-03-06 12:09:22
제가 왕초보라서
어디를 어떻게 바꾸라시는건지 잘 모르겟습니다.
수식을 써 주셧으면 감사하겟습니다.
예스스탁 예스스탁 답변
2006-03-06 16:55:58
안녕하세요
예스스탁입니다.
처음 올리신 글에 올린 식은 이상이 없는 식입니다.
다만 첨부된 파일을 예스랭귀지 편집기에서 열어보시면
원래 아래 문장과 같이 되어야 하는데
if accumN(iff(crossup(DIPlus(Period), DIMinus(Period)), 1, 0), dayindex()+1) >= 1 and //문장1
crossup(C, 당일고가[1]) then //문장2
buy();
if accumN(iff(crossdown(DIPlus(Period), DIMinus(Period)), 1, 0), dayindex()+1) >= 1 and //문장3
crossdown(C, 당일저가[1]) then //문장4
sell();
아래와 같이 잘못 작성되 있습니다.
if accumN(iff(crossup(DIPlus(Period), DIMinus(Period)), 1, 0), dayindex()+1) >= 1 and //문장1
crossup(C, 당일고가) then //문장2
buy();
if accumN(iff(crossdown(DIPlus(Period), DIMinus(Period)), 1, 0), dayindex()+1) >= 1 and //문장3
crossdown(C, 당일저가) then //문장4
sell();
즉
crossup(C, 당일고가) --> crossup(C, 당일고가[1])
crossdown(C, 당일저가) --> crossdown(C, 당일저가[1])
와 같이 바꿔주시기 바랍니다.
즐거운 하루되세요
> harpring 님이 쓴 글입니다.
> 제목 : Re : Re : 수식작성예제의 DMI를 이용한 교차매매식이 실행이 안됩니다.
> 제가 왕초보라서
어디를 어떻게 바꾸라시는건지 잘 모르겟습니다.
수식을 써 주셧으면 감사하겟습니다.
다음글
이전글