커뮤니티
문의
2005-07-04 00:17:11
1314
글번호 7679
Input:p1(10) ;
Var: sumV(0), maV(0), count(0);
Var : value1(0), value2(0);
If DayClose(1) > DayOpen(1) Then
{
value1 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayHigh(1))/2-DayLow(1);
value2 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayHigh(1))/2-DayHigh(1);
}
Else If DayClose(1) < DayOpen(1) Then
{
value1 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayLow(1))/2-DayLow(1);
value2 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayLow(1))/2-DayHigh(1);
}
Else
{
value1 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayClose(1))/2-DayLow(1);
value2 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayClose(1))/2-DayHigh(1);
}
if date != date[1] then{
var1 = 0;
var2 = var1[1];
}
if var2 == 0 and crossup(c,value1*1.02) then
if crossup(c, value1)
&&
(DayHigh(1)+DayLow(1)+DayClose(1)+DayHigh(1))/2-DayLow(1) <
(DayHigh(2)+DayLow(2)+DayClose(2)+DayHigh(2))/2-DayLow(2)
&&
(DayHigh(1)+DayLow(1)+DayClose(1)+DayHigh(1))/2-DayLow(1)>
(DayHigh(3)+DayLow(3)+DayClose(3)+DayHigh(3))/2-DayLow(3)
&& cnt <= 매매횟수
then
{ buy();
cnt = cnt +1;}
----------------------------------------------------------
위에 수식 내용에
1)
현재에 디마크는 전일에 디마크보다 작아야하고
현재에 디마크는 그저께 디마크보다 커야 한다 이조건이 참이면 매수
그런데 맞는 것도 있는데 맞지 않는 것도 있네요 수식이 잘못 된건지
한번 봐주세요
어제 에 디마크/그제에 디마크 어떻게 표현을 해야 하는지 궁금 하네요?
2)
추가로 일봉에 이평을 분동에 표현할려고 합니다 /일봉에 20이평위에서만 매수
sumV = 0;
for count = 0 to P1-1
{sumV = sumV+DayClose(count); }
maV = sumV / P1;
이것으로 표현 했는데 않되네요/무엇이 잘못됬는지?
3)
if date != date[1] then{
var1 = 0;
var2 = var1[1];
}
if var2 == 0 and crossup(c,value1*1.02) then
이 내용은 오늘을 매수시점으로 보면 전일에 주가 가 디마크를 한번도
돌파하지않았다 라는 표현 인것같은데 다시 확인좀 부탁드립니다
너무 복잡하죠 죄송합니다
감사합니다 ^^
답변 1
예스스탁 예스스탁 답변
2005-07-05 14:48:23
안녕하세요
예스스탁입니다.
1.
value1 값이 디마크분봉 상한선이고 value2가 디마크분봉 하한선입니다.
일봉에서라면 value1[1]이 전일값이고 value1[2]이 전전일 값입니다.
분봉에서는 아래와 같습니다.
Input:p1(10) ;
Var: sumV(0), maV(0), count(0);
Var : value1(0), value2(0);
if date != date[1] then{
value3 = value1[1]; //전일디마크상한선
value4 = value3[1]; //전전일디마크상한선
value5 = value2[1]; //전일디마크하한선
value6 = value5[1]; //전전일디마크하한선
}
If DayClose(1) > DayOpen(1) Then
{
value1 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayHigh(1))/2-DayLow(1);
value2 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayHigh(1))/2-DayHigh(1);
}
Else If DayClose(1) < DayOpen(1) Then
{
value1 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayLow(1))/2-DayLow(1);
value2 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayLow(1))/2-DayHigh(1);
}
Else
{
value1 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayClose(1))/2-DayLow(1);
value2 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayClose(1))/2-DayHigh(1);
}
2.
분봉에서 일봉의 이동평균을 가져오는 식은 다음과 같습니다.
input : P1(3), p2(5), p3(10);
var : sumV1(0), sumV2(0), sumV3(0), maV1(0), maV2(0), maV3(0), count(0);
sumV1 = 0;
sumV2 = 0;
sumV3 = 0;
for count = 1 to p3 {
if count <= p1 then
sumV1 = sumV1 + DayClose(count);
if count <= p2 then
sumV2 = sumV2 + DayClose(count);
if count <= p3 then
sumV3 = sumV3 + DayClose(count);
}
maV1 = sumV1 / P1;
maV2 = sumV2 / P2;
maV3 = sumV3 / P3;
plot1(maV1, "일봉이평1");
plot2(maV2, "일봉이평2");
plot3(maV3, "일봉이평3");
3.
당일 분봉에서 디마크가 상향돌파한적이 있으면
var1 에 1값을 할당합니다.
날짜가 바뀌는 시점에 var2에 전일 var1에 할당된 값을 저장하고
var1은 0으로 초기화 하는 것입니다.
즐거운 하루되세요
> HH_hs0105 님이 쓴 글입니다.
> 제목 : 문의
> Input:p1(10) ;
Var: sumV(0), maV(0), count(0);
Var : value1(0), value2(0);
If DayClose(1) > DayOpen(1) Then
{
value1 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayHigh(1))/2-DayLow(1);
value2 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayHigh(1))/2-DayHigh(1);
}
Else If DayClose(1) < DayOpen(1) Then
{
value1 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayLow(1))/2-DayLow(1);
value2 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayLow(1))/2-DayHigh(1);
}
Else
{
value1 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayClose(1))/2-DayLow(1);
value2 = (DayHigh(1)+DayLow(1)+DayClose(1)+DayClose(1))/2-DayHigh(1);
}
if date != date[1] then{
var1 = 0;
var2 = var1[1];
}
if var2 == 0 and crossup(c,value1*1.02) then
if crossup(c, value1)
&&
(DayHigh(1)+DayLow(1)+DayClose(1)+DayHigh(1))/2-DayLow(1) <
(DayHigh(2)+DayLow(2)+DayClose(2)+DayHigh(2))/2-DayLow(2)
&&
(DayHigh(1)+DayLow(1)+DayClose(1)+DayHigh(1))/2-DayLow(1)>
(DayHigh(3)+DayLow(3)+DayClose(3)+DayHigh(3))/2-DayLow(3)
&& cnt <= 매매횟수
then
{ buy();
cnt = cnt +1;}
----------------------------------------------------------
위에 수식 내용에
1)
현재에 디마크는 전일에 디마크보다 작아야하고
현재에 디마크는 그저께 디마크보다 커야 한다 이조건이 참이면 매수
그런데 맞는 것도 있는데 맞지 않는 것도 있네요 수식이 잘못 된건지
한번 봐주세요
어제 에 디마크/그제에 디마크 어떻게 표현을 해야 하는지 궁금 하네요?
2)
추가로 일봉에 이평을 분동에 표현할려고 합니다 /일봉에 20이평위에서만 매수
sumV = 0;
for count = 0 to P1-1
{sumV = sumV+DayClose(count); }
maV = sumV / P1;
이것으로 표현 했는데 않되네요/무엇이 잘못됬는지?
3)
if date != date[1] then{
var1 = 0;
var2 = var1[1];
}
if var2 == 0 and crossup(c,value1*1.02) then
이 내용은 오늘을 매수시점으로 보면 전일에 주가 가 디마크를 한번도
돌파하지않았다 라는 표현 인것같은데 다시 확인좀 부탁드립니다
너무 복잡하죠 죄송합니다
감사합니다 ^^
다음글