커뮤니티
게시판 답변글중에서
2011-01-14 15:45:07
705
글번호 34980
안녕하세요?
아직 왕초보로 수식을 공부하면서 게시판을 보고있습니다.
16580번 질문답변을 보고 질문좀 하겠습니다.
첫번째 외부변수 1.5를 쓰는이유는 무엇인지요?
두번째 if dayindex == 0 Then Condition1 = false; ==>을 쓰는 이유는?
세번째 "if (DayHigh-DayLow) >= N and Condition1 == False Then{
Condition1 = true;
} " 를 쓰는 이유가 뭐이며 해석좀 해주세요...
네번째 "count = 0;
for cnt = 0 to 10{
if sdate == EntryDate(cnt) Then
count = count+1;
}를 쓰는 이유하고 왜이렇게 해야 하는지 이유좀 알려주세요.
마지막으로 주석좀 부탁합니다.
너무초보라 별로 이해가 안가서 그러니 너그러히 이해하여 주시면 감사하겠습니다.
답변 1
예스스탁 예스스탁 답변
2011-01-14 16:12:01
안녕하세요
예스스탁입니다.
1.
특별한 이유는 없습니다.
해당 질문을 하신 분이
"개장후 1분봉 고-저가 가 일정수준(N) 이상으로 움직인뒤"
라는 내용을 식으로 구현하고자 하셨고 그변수를 N으로 처리하고자 하셨으므로
외부변수 이름을 N으로 하고 기초값을 정해야 하므로 임의로 값을 지정한 것 뿐입니다.
2.3
"개장후 1분봉 고-저가 가 일정수준(N) 이상으로 움직인뒤"
위와 같은 식을 구현하기 위해서는
당일 고가저가가 지정된 N이상 폭으로 움직인것을 판단해야 합니다.
아래 내용은 당일 고가와 저가폭이 N포인트 이상 벌어졌으면 condition1에 true를 저장하는 것입니다.
if (DayHigh-DayLow) >= N and Condition1 == False Then{
Condition1 = true;
날짜가 변경이 되면 다시 condition1을 false로 초기화하여 다시 당일날
N포인트 이상 벌어진것을 확인해야 되므로
if dayindex == 0 Then Condition1 = false;
와 같은 수식이 추가된 것입니다.
즉 아래의 수식은 당일 첫봉에 먼저 condition1을 false로 지정하고
당일 고가저가폭은 N포인트 이상 벌어지변 condition1에 true를 저장하여
조건이 만족한 적이 있을을 표시하기 위함입니다.
if dayindex == 0 Then
Condition1 = false;
if (DayHigh-DayLow) >= N and Condition1 == False Then{
Condition1 = true;
4.
해당 계산식은 당일날 진입횟수는 계산하는 식입니다.
당일 3번까지 진입 2번까지 진입등 진입횟수를 한정하기 이해서는
진입횟수를 계산해야 하고 해당식이 진입횟수를 계산하는 식입니다.
5.
input : N(1.5);
var : cnt(0),count(0);
if dayindex == 0 Then# 첫봉에는
Condition1 = false; #Condition1을 False로 지정
if (DayHigh-DayLow) >= N and Condition1 == False Then{#당일고가와 저가폭이 N포인트 이상 커진 봉이 나타나면
Condition1 = true; #Condition1에 true 저장
}
#당일 진입회수 계산수식
#최근 10개의 진입들의 날짜를 가져와 오늘 날짜와 비교하여
#당일 몇번 발생했는지를 계산함
count = 0;
for cnt = 0 to 10{
if sdate == EntryDate(cnt) Then
count = count+1;
}
if Condition1 == true and count < 1 Then{#당일 고저폭이 N이상 벌어졌고 진입횟수는 1번
if L > dayhigh-(dayhigh-daylow)*0.3 Then#저가가 당일고가-고저폭의 30%위에 있는 상태에서
sell("s",AtStop,dayhigh-(dayhigh-daylow)*0.3); #당일고가-당일고적폭의 30% 아래의 가격으로 내려가면 매도
if H < daylow+(dayhigh-daylow)*0.3 Then#고가가 당일저가+고저폭의 30% 아래에 있는 상태에서
buy("b",AtStop,daylow+(dayhigh-daylow)*0.3); #당일저가+고저폭의 30%위로 올라가면 매수
}
if MarketPosition != 1 Then{#종가가 당일 시가가를 상향하거나 하향돌파하면 포지션 청산
if crossup(c,dayopen) or CrossDown(c,dayopen) Then{
exitlong();
ExitShort();
}
}
#14시 30분 청산
SetStopEndofday(143000);
즐거운 하루되세요
> 에리조나 님이 쓴 글입니다.
> 제목 : 게시판 답변글중에서
> 안녕하세요?
아직 왕초보로 수식을 공부하면서 게시판을 보고있습니다.
16580번 질문답변을 보고 질문좀 하겠습니다.
첫번째 외부변수 1.5를 쓰는이유는 무엇인지요?
두번째 if dayindex == 0 Then Condition1 = false; ==>을 쓰는 이유는?
세번째 "if (DayHigh-DayLow) >= N and Condition1 == False Then{
Condition1 = true;
} " 를 쓰는 이유가 뭐이며 해석좀 해주세요...
네번째 "count = 0;
for cnt = 0 to 10{
if sdate == EntryDate(cnt) Then
count = count+1;
}를 쓰는 이유하고 왜이렇게 해야 하는지 이유좀 알려주세요.
마지막으로 주석좀 부탁합니다.
너무초보라 별로 이해가 안가서 그러니 너그러히 이해하여 주시면 감사하겠습니다.