커뮤니티
수식 재문의
2018-07-24 13:43:15
137
글번호 120852
일전, 다음과 같은 문의로 아래와 같은
수식을 도움 받았습니다.
U : upvol을 n봉 기간 동안 누적 합니다.
D : downvol을 n봉기간 동안 누적합니다.
- (야간장 포함)누적을 시작하는 시점과 끝나는 시점을 input으로 지정해 줍니다.
- n봉 기간을 input으로 설정할 수 있도록 합니다.
plot 1 : U
plot 2 : D
plot 3 : U-D
제가 문의 드린 내용 중,
up,donwvol 을 누적할 때, 마치 이동평균처럼
n봉기간을 누적하는 내용이 있었는데,
이 부분이 빠진 것 같습니다.
수정 부탁드립니다.
input : starttime(223000),endtime(050000);
var : Tcond(false),Uv(0),Dv(0);
if (sdate != sdate[1] and stime >= starttime) or
(sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then
{
Tcond = true;
Uv = 0;
Dv = 0;
}
if (sdate != sdate[1] and stime >= endtime) or
(sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then
{
Tcond = false;
}
if Tcond == true then
{
Uv = Uv + Upvol;
Dv = Dv + DownVol;
}
plot1(Uv);
plot2(Dv);
plot3(Uv-Dv);
식견이 부족하여 번거롭게 해 드려 죄송합니다.
항상 친절한 답변 감사드립니다.
답변 1
예스스탁 예스스탁 답변
2018-07-24 15:40:45
안녕하세요
예스스탁입니다.
지정하신 기간(시작시점~끝시점)과 n봉과 관계가 모호합니다.
1
기간도 있고 n으로 봉수도 지정하시므로
지정한 기간동안 생성된 봉수가 n봉에 미치지 못하면
생선된 봉수에서만 각 값을 누적하고
n봉이상이 생성되면 n봉간만 누적하게 작성해 드립니다.
input : starttime(223000),endtime(050000),n(10);
var : Tcond(false),sumU(0),sumD(0),sumi(0),Uv(0),Dv(0),iv(0);
if (sdate != sdate[1] and stime >= starttime) or
(sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then
{
Tcond = true;
sumU = 0;
sumD = 0;
sumi = 0;
}
if (sdate != sdate[1] and stime >= endtime) or
(sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then
{
Tcond = false;
}
if Tcond == true then
{
sumU = sumU + Upvol;
sumD = sumD + DownVol;
sumi = sumi + 1;
if sumi < n Then
{
Uv = sumU;
Dv = sumD;
}
else
{
Uv = AccumN(Upvol,n);
Dv = AccumN(DownVol,n);
}
}
plot1(Uv);
plot2(Dv);
plot3(Uv-Dv);
2
기간이 U나 D에 n봉합산을 저장하는 단순 제한시간일뿐이시면 아래식 이용하시면 됩니다.
input : starttime(223000),endtime(050000),n(10);
var : Tcond(false),sumU(0),sumD(0),sumi(0),Uv(0),Dv(0),iv(0);
if (sdate != sdate[1] and stime >= starttime) or
(sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then
{
Tcond = true;
}
if (sdate != sdate[1] and stime >= endtime) or
(sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then
{
Tcond = false;
}
if Tcond == true then
{
Uv = AccumN(Upvol,n);
Dv = AccumN(DownVol,n);
}
plot1(Uv);
plot2(Dv);
plot3(Uv-Dv);
즐거운 하루되세요
> 부똘이 님이 쓴 글입니다.
> 제목 : 수식 재문의
>
일전, 다음과 같은 문의로 아래와 같은
수식을 도움 받았습니다.
U : upvol을 n봉 기간 동안 누적 합니다.
D : downvol을 n봉기간 동안 누적합니다.
- (야간장 포함)누적을 시작하는 시점과 끝나는 시점을 input으로 지정해 줍니다.
- n봉 기간을 input으로 설정할 수 있도록 합니다.
plot 1 : U
plot 2 : D
plot 3 : U-D
제가 문의 드린 내용 중,
up,donwvol 을 누적할 때, 마치 이동평균처럼
n봉기간을 누적하는 내용이 있었는데,
이 부분이 빠진 것 같습니다.
수정 부탁드립니다.
input : starttime(223000),endtime(050000);
var : Tcond(false),Uv(0),Dv(0);
if (sdate != sdate[1] and stime >= starttime) or
(sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then
{
Tcond = true;
Uv = 0;
Dv = 0;
}
if (sdate != sdate[1] and stime >= endtime) or
(sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then
{
Tcond = false;
}
if Tcond == true then
{
Uv = Uv + Upvol;
Dv = Dv + DownVol;
}
plot1(Uv);
plot2(Dv);
plot3(Uv-Dv);
식견이 부족하여 번거롭게 해 드려 죄송합니다.
항상 친절한 답변 감사드립니다.
다음글
이전글