커뮤니티
문의
2015-02-05 10:57:17
108
글번호 82975
아래식에 주봉상 5선을 추가하고자 합니다.
도움 부탁드리겠습니다. 감사합니다.
VARS: MAXDAYLINE.SHORT(60);
VARS: M5DP(5), M13DP(13), M20DP(20), M26DP(26), M33DP(33), M60DP(60);
VARS: M5D(0, DATA1), M13D(0, DATA1), M20D(0, DATA1), M26D(0, DATA1), M33D(0, DATA1), M60D(0, DATA1);
VARS: M5D.SUM(0, DATA1), M13D.SUM(0, DATA1), M20D.SUM(0, DATA1), M26D.SUM(0, DATA1), M33D.SUM(0, DATA1), M60D.SUM(0, DATA1), CNT(0);
ARRAY: CC[60](0, DATA1);
//----------------------------------------------------------------------------------------------------------------------------------------------------------
if ( DATA1(Date <> Date[1]) ) Then
{
for CNT = 1 to MAXDAYLINE.SHORT - 1
{
CC[CNT] = CC[CNT - 1][1];
}
}
CC[0] = CLOSE;
M5D.SUM = 0; M13D.SUM = 0; M20D.SUM = 0; M26D.SUM = 0; M33D.SUM = 0; M60D.SUM = 0;
for CNT = 1 to MAXDAYLINE.SHORT - 1
{
if ( (CNT < M5DP) AND (CC[M5DP - 1] > 0) ) Then M5D.SUM = M5D.SUM + CC[CNT];
if ( (CNT < M13DP) AND (CC[M13DP - 1] > 0) ) Then M13D.SUM = M13D.SUM + CC[CNT];
if ( (CNT < M20DP) AND (CC[M20DP - 1] > 0) ) Then M20D.SUM = M20D.SUM + CC[CNT];
if ( (CNT < M26DP) AND (CC[M26DP - 1] > 0) ) Then M26D.SUM = M26D.SUM + CC[CNT];
if ( (CNT < M33DP) AND (CC[M33DP - 1] > 0) ) Then M33D.SUM = M33D.SUM + CC[CNT];
if ( (CNT < M60DP) AND (CC[M60DP - 1] > 0) ) Then M60D.SUM = M60D.SUM + CC[CNT];
}
M5D = ((M5D.SUM + DATA1(OPEND(0))) / M5DP); M13D = ((M13D.SUM + DATA1(OPEND(0))) / M13DP); M20D = ((M20D.SUM + DATA1(OPEND(0))) / M20DP); M26D = ((M26D.SUM + DATA1(OPEND(0))) / M26DP); M33D = ((M33D.SUM + DATA1(OPEND(0))) / M33DP); M60D = ((M60D.SUM + DATA1(OPEND(0))) / M60DP);
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// PLOTTING
//
Plot1(M5D, "M5D", RGB(0,255,0), DEF, 1);
Plot2(M13D, "M13D", RGB(0,255,255), DEF, 1);
Plot3(M20D, "M20D", RGB(255,102,150), DEF, 1);
Plot4(M26D, "M26D", RGB(255,152,204), DEF, 1);
Plot5(M33D, "M33D", RGB(255,0,102), DEF, 1);
Plot6(M60D, "M60D", RGB(255,255,255), DEF, 1);
//Plot51(DATA1(HighD(0)), "DAYHIGH(0)", RGB(255,0,180), DEF, 0);
Plot52(DATA1(HighD(1)), "DAYHIGH(1)", RGB(150,0,30), DEF, 0);
//Plot54(DATA1(LowD(0)), "DAYLOW(0)", RGB(0,200,255), DEF, 0);
Plot55(DATA1(LowD(1)), "DAYLOW(1)", RGB(0,50,200), DEF, 0);
답변 1
예스스탁 예스스탁 답변
2015-02-05 14:05:52
안녕하세요
예스스탁입니다.
input : WeekP(5);
VARS: MAXDAYLINE.SHORT(60);
VARS: M5DP(5), M13DP(13), M20DP(20), M26DP(26), M33DP(33), M60DP(60);
VARS: M5D(0, DATA1), M13D(0, DATA1), M20D(0, DATA1), M26D(0, DATA1), M33D(0, DATA1), M60D(0, DATA1);
VARS: M5D.SUM(0, DATA1), M13D.SUM(0, DATA1), M20D.SUM(0, DATA1), M26D.SUM(0, DATA1), M33D.SUM(0, DATA1), M60D.SUM(0, DATA1), CNT(0);
vars: Wsum(0),Wmav(0);
ARRAY: CC[60](0, DATA1);
Array : WeekC[10](0,data1);
if data1(DayOfWeek(sdate) < DayOfWeek(sdate[1])) Then{
for cnt = 1 to 9{
WeekC[cnt] = WeekC[cnt-1][1];
}
}
WeekC[0] = C;
wsum = 0;
if WeekC[WeekP] > 0 Then{
for cnt = 0 to WeekP-1{
wsum = wsum+weekC[cnt];
}
Wmav = wsum/WeekP;
plot77(Wmav,"주봉이평");
}
//----------------------------------------------------------------------------------------------------------------------------------------------------------
if ( DATA1(Date <> Date[1]) ) Then
{
for CNT = 1 to MAXDAYLINE.SHORT - 1
{
CC[CNT] = CC[CNT - 1][1];
}
}
CC[0] = CLOSE;
M5D.SUM = 0; M13D.SUM = 0; M20D.SUM = 0; M26D.SUM = 0; M33D.SUM = 0; M60D.SUM = 0;
for CNT = 1 to MAXDAYLINE.SHORT - 1
{
if ( (CNT < M5DP) AND (CC[M5DP - 1] > 0) ) Then M5D.SUM = M5D.SUM + CC[CNT];
if ( (CNT < M13DP) AND (CC[M13DP - 1] > 0) ) Then M13D.SUM = M13D.SUM + CC[CNT];
if ( (CNT < M20DP) AND (CC[M20DP - 1] > 0) ) Then M20D.SUM = M20D.SUM + CC[CNT];
if ( (CNT < M26DP) AND (CC[M26DP - 1] > 0) ) Then M26D.SUM = M26D.SUM + CC[CNT];
if ( (CNT < M33DP) AND (CC[M33DP - 1] > 0) ) Then M33D.SUM = M33D.SUM + CC[CNT];
if ( (CNT < M60DP) AND (CC[M60DP - 1] > 0) ) Then M60D.SUM = M60D.SUM + CC[CNT];
}
M5D = ((M5D.SUM + DATA1(OPEND(0))) / M5DP); M13D = ((M13D.SUM + DATA1(OPEND(0))) / M13DP); M20D = ((M20D.SUM + DATA1(OPEND(0))) / M20DP); M26D = ((M26D.SUM + DATA1(OPEND(0))) / M26DP); M33D = ((M33D.SUM + DATA1(OPEND(0))) / M33DP); M60D = ((M60D.SUM + DATA1(OPEND(0))) / M60DP);
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// PLOTTING
//
Plot1(M5D, "M5D", RGB(0,255,0), DEF, 1);
Plot2(M13D, "M13D", RGB(0,255,255), DEF, 1);
Plot3(M20D, "M20D", RGB(255,102,150), DEF, 1);
Plot4(M26D, "M26D", RGB(255,152,204), DEF, 1);
Plot5(M33D, "M33D", RGB(255,0,102), DEF, 1);
Plot6(M60D, "M60D", RGB(255,255,255), DEF, 1);
//Plot51(DATA1(HighD(0)), "DAYHIGH(0)", RGB(255,0,180), DEF, 0);
Plot52(DATA1(HighD(1)), "DAYHIGH(1)", RGB(150,0,30), DEF, 0);
//Plot54(DATA1(LowD(0)), "DAYLOW(0)", RGB(0,200,255), DEF, 0);
Plot55(DATA1(LowD(1)), "DAYLOW(1)", RGB(0,50,200), DEF, 0);
즐거운 하루되세요
> gt 님이 쓴 글입니다.
> 제목 : 문의
> 아래식에 주봉상 5선을 추가하고자 합니다.
도움 부탁드리겠습니다. 감사합니다.
VARS: MAXDAYLINE.SHORT(60);
VARS: M5DP(5), M13DP(13), M20DP(20), M26DP(26), M33DP(33), M60DP(60);
VARS: M5D(0, DATA1), M13D(0, DATA1), M20D(0, DATA1), M26D(0, DATA1), M33D(0, DATA1), M60D(0, DATA1);
VARS: M5D.SUM(0, DATA1), M13D.SUM(0, DATA1), M20D.SUM(0, DATA1), M26D.SUM(0, DATA1), M33D.SUM(0, DATA1), M60D.SUM(0, DATA1), CNT(0);
ARRAY: CC[60](0, DATA1);
//----------------------------------------------------------------------------------------------------------------------------------------------------------
if ( DATA1(Date <> Date[1]) ) Then
{
for CNT = 1 to MAXDAYLINE.SHORT - 1
{
CC[CNT] = CC[CNT - 1][1];
}
}
CC[0] = CLOSE;
M5D.SUM = 0; M13D.SUM = 0; M20D.SUM = 0; M26D.SUM = 0; M33D.SUM = 0; M60D.SUM = 0;
for CNT = 1 to MAXDAYLINE.SHORT - 1
{
if ( (CNT < M5DP) AND (CC[M5DP - 1] > 0) ) Then M5D.SUM = M5D.SUM + CC[CNT];
if ( (CNT < M13DP) AND (CC[M13DP - 1] > 0) ) Then M13D.SUM = M13D.SUM + CC[CNT];
if ( (CNT < M20DP) AND (CC[M20DP - 1] > 0) ) Then M20D.SUM = M20D.SUM + CC[CNT];
if ( (CNT < M26DP) AND (CC[M26DP - 1] > 0) ) Then M26D.SUM = M26D.SUM + CC[CNT];
if ( (CNT < M33DP) AND (CC[M33DP - 1] > 0) ) Then M33D.SUM = M33D.SUM + CC[CNT];
if ( (CNT < M60DP) AND (CC[M60DP - 1] > 0) ) Then M60D.SUM = M60D.SUM + CC[CNT];
}
M5D = ((M5D.SUM + DATA1(OPEND(0))) / M5DP); M13D = ((M13D.SUM + DATA1(OPEND(0))) / M13DP); M20D = ((M20D.SUM + DATA1(OPEND(0))) / M20DP); M26D = ((M26D.SUM + DATA1(OPEND(0))) / M26DP); M33D = ((M33D.SUM + DATA1(OPEND(0))) / M33DP); M60D = ((M60D.SUM + DATA1(OPEND(0))) / M60DP);
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// PLOTTING
//
Plot1(M5D, "M5D", RGB(0,255,0), DEF, 1);
Plot2(M13D, "M13D", RGB(0,255,255), DEF, 1);
Plot3(M20D, "M20D", RGB(255,102,150), DEF, 1);
Plot4(M26D, "M26D", RGB(255,152,204), DEF, 1);
Plot5(M33D, "M33D", RGB(255,0,102), DEF, 1);
Plot6(M60D, "M60D", RGB(255,255,255), DEF, 1);
//Plot51(DATA1(HighD(0)), "DAYHIGH(0)", RGB(255,0,180), DEF, 0);
Plot52(DATA1(HighD(1)), "DAYHIGH(1)", RGB(150,0,30), DEF, 0);
//Plot54(DATA1(LowD(0)), "DAYLOW(0)", RGB(0,200,255), DEF, 0);
Plot55(DATA1(LowD(1)), "DAYLOW(1)", RGB(0,50,200), DEF, 0);
다음글
이전글