커뮤니티
설명부탁드립니다!!
2009-02-25 21:46:46
691
글번호 20501
Input : n(0);
var : cnt(0),count(0),hh(0),ll(0);
if DayIndex() == n then{
var1=Highest(h,n+1);
var2=Lowest(l,n+1);
}
count = 0;
for cnt = 0 to 20{
if sDate == EntryDate(cnt) Then
count = count+1;
}
if DayIndex() > n then{
if count ==0 and stime >= 90000 and stime < 110000 then{
if CrossUp(c,var1) and c>o then{buy("매수1");}
if CrossDown(c,var2) and c<o then{sell("매도1");}
}
if count >0 and stime >= 90000 and stime < 110000 then{
if CrossUp(c,DayHigh()[1]) and c>o then{buy("매수2");}
if CrossDown(c,DayLow()[1]) and c<o then{sell("매도2");}
}
if count == 1 then{
if CrossUp(c,var2) and c>o then{ExitShort("도청");}
}
if Crossdown(c,var1) and c<o then{ExitLong("수청");}
}
if count > 1 then{
if CrossUp(c,DayLow()[BarsSinceEntry+1]) and c>o then {ExitShort("도청1");}
if CrossDown(c,DayHigh()[BarsSinceEntry+1]) and c<o then {ExitLong("수청1");}
}
늘 감사드림니다!!
이수식을 원격으로 배워서 사용하고 있습니다
그런데 아직 실력이 부족해서 이해하지 못하는 부분이 많습니다.
수고스럽겠지만 한줄한줄의 의미를 한글로 설명을 해주시면 감사하겠습니다
열심히 배우겠습니다... 수고하세요....
답변 1
예스스탁 예스스탁 답변
2009-02-26 13:02:51
안녕하세요
예스스탁입니다.
Input : n(0);
var : cnt(0),count(0),hh(0),ll(0);
if DayIndex() == n then{ ## 당일 n번째 봉에서
var1=Highest(h,n+1); ## n번째 봉까지의 최고값을 계산하여 var1 변수에 저장
var2=Lowest(l,n+1); ## n번째 봉까지의 최저값을 계산하여 var2 변수에 저장
}
## 당일 진입횟수 카운트하는 계산식
count = 0; ## 식은 데이터수신시 마다 계산하므로 먼저 초기화를 하고 값을 찾음
for cnt = 0 to 20{ ## 0부터 20까지 값을 순차적으로 cnt변수에 할당
if sDate == EntryDate(cnt) Then ## cnt에 0~20까지 값을 할당받아 최근 20개의 진입날짜와 오늘 날짜를 비교하여
count = count+1; ## 오늘 날짜와 같은 진입날짜를 가진 진입이 몇개인지 카운트
}
if DayIndex() > n then{ ## n번째 봉이후
if count ==0 and stime >= 90000 and stime < 110000 then{ ## 첫번째 진입이고 9시 11시 사이에만 발동
if CrossUp(c,var1) and c>o then{ ## 종가가 var1값을 상향돌파하고 양봉이면 매수
buy("매수1");
}
if CrossDown(c,var2) and c<o then{ ## 종가가 var2값을 하향이탈하고 음봉이면 매도
sell("매도1");
}
}
if count >0 and stime >= 90000 and stime < 110000 then{ ## 두번째 진입부터는
if CrossUp(c,DayHigh()[1]) and c>o then{buy("매수2");} ## 당일 최고가 갱신하고 양봉이면 매수
if CrossDown(c,DayLow()[1]) and c<o then{sell("매도2");} ## 당일 최저가 갱신하고 음봉이면 매도
}
if count == 1 then{ ## 첫진입이 들어간후(첫진입에 대한 청산)
if CrossUp(c,var2) and c>o then{## var2값을 상향돌파하고 양봉이면 매도를 청산
ExitShort("도청");}
}
if Crossdown(c,var1) and c<o then{## var1값을 하향이탈하고 음봉이면 매수를 청산
ExitLong("수청");}
}
if count > 1 then{ ## 두번째 진입
if CrossUp(c,DayLow()[BarsSinceEntry+1]) and c>o then {## 진입시 당일 최저가를 상향돌파하면 매도청산
ExitShort("도청1");}
if CrossDown(c,DayHigh()[BarsSinceEntry+1]) and c<o then {## 진입시 당일 최고가를 하향이탈하면 매수청산
ExitLong("수청1");}
}
즐거운 하루되세요
> CJ_coco 님이 쓴 글입니다.
> 제목 : 설명부탁드립니다!!
> Input : n(0);
var : cnt(0),count(0),hh(0),ll(0);
if DayIndex() == n then{
var1=Highest(h,n+1);
var2=Lowest(l,n+1);
}
count = 0;
for cnt = 0 to 20{
if sDate == EntryDate(cnt) Then
count = count+1;
}
if DayIndex() > n then{
if count ==0 and stime >= 90000 and stime < 110000 then{
if CrossUp(c,var1) and c>o then{buy("매수1");}
if CrossDown(c,var2) and c<o then{sell("매도1");}
}
if count >0 and stime >= 90000 and stime < 110000 then{
if CrossUp(c,DayHigh()[1]) and c>o then{buy("매수2");}
if CrossDown(c,DayLow()[1]) and c<o then{sell("매도2");}
}
if count == 1 then{
if CrossUp(c,var2) and c>o then{ExitShort("도청");}
}
if Crossdown(c,var1) and c<o then{ExitLong("수청");}
}
if count > 1 then{
if CrossUp(c,DayLow()[BarsSinceEntry+1]) and c>o then {ExitShort("도청1");}
if CrossDown(c,DayHigh()[BarsSinceEntry+1]) and c<o then {ExitLong("수청1");}
}
늘 감사드림니다!!
이수식을 원격으로 배워서 사용하고 있습니다
그런데 아직 실력이 부족해서 이해하지 못하는 부분이 많습니다.
수고스럽겠지만 한줄한줄의 의미를 한글로 설명을 해주시면 감사하겠습니다
열심히 배우겠습니다... 수고하세요....
다음글
이전글