커뮤니티
지표식 문의드립니다.
2013-03-12 14:36:39
237
글번호 60599
아래는 예스스탁님이 올려주신 틱거래량 식입니다.
거래량 산출 시간을 9시 10분부터 15:00까지만 해주고 싶은데 어떻게 바꾸어주면 될까요?
장시작 거래량이 급격히 증가하여 편차가 큽니다.
그리고 이 식을 사용자 함수로 어떻게 만들어서 사용할 수 있을까요?
미리 감사드립니다.
var : stimeTosecond(0),timeTosecond(0),SecondMakecandle(0),value(0);
var : cnt(0),SumS(0),SumV(0);
var1 = TimeToMinutes(stime)*60;
var2 = FracPortion(stime/100)*100;//시작시간 초
stimeTosecond = var1+var2;
value1 = TimeToMinutes(time)*60;
value2 = FracPortion(time/100)*100;//끝시간 초
timeTosecond = value1+value2;
SecondMakecandle = timeTosecond-stimeTosecond;
sumS = 0;
SumV = 0;
for cnt = 0 to 100{
sumS = sumS+SecondMakecandle;
if sumS <= 60 Then{
sumV = SumV+Volume;
}
if sumS > 60 Then{
cnt = 1000;
}
}
plot1(sumv);
답변 3
예스스탁 예스스탁 답변
2013-03-12 16:39:36
안녕하세요
예스스탁입니다.
1. 9시10분부터 15시 사이에서만 계산되게 작성했습니다.
var : stimeTosecond(0),timeTosecond(0),SecondMakecandle(0),value(0);
var : cnt(0),SumS(0),SumV(0);
var1 = TimeToMinutes(stime)*60;
var2 = FracPortion(stime/100)*100;//시작시간 초
stimeTosecond = var1+var2;
value1 = TimeToMinutes(time)*60;
value2 = FracPortion(time/100)*100;//끝시간 초
timeTosecond = value1+value2;
SecondMakecandle = timeTosecond-stimeTosecond;
sumS = 0;
SumV = 0;
if stime >= 91000 and stime < 150000 then{
for cnt = 0 to 100{
sumS = sumS+SecondMakecandle[cnt];
if sumS <= 60 Then{
sumV = SumV+Volume[cnt];
}
if sumS > 60 Then{
cnt = 1000;
}
}
}
plot1(sumv);
2.
사용자함수명 : SumV
반환값형 : 숫자형
사용자함수내용 :
input : N(Numeric);
var : stimeTosecond(0),timeTosecond(0),SecondMakecandle(0),value(0);
var : cnt(0),SumS(0),Sumvv(0);
var1 = TimeToMinutes(stime)*60;
var2 = FracPortion(stime/100)*100;//시작시간 초
stimeTosecond = var1+var2;
value1 = TimeToMinutes(time)*60;
value2 = FracPortion(time/100)*100;//끝시간 초
timeTosecond = value1+value2;
SecondMakecandle = timeTosecond-stimeTosecond;
sumS = 0;
Sumvv = 0;
if stime >= 91000 and stime < 150000 then{
for cnt = 0 to 100{
sumS = sumS+SecondMakecandle[cnt];
if sumS <= N Then{
Sumvv = Sumvv+Volume[cnt];
}
if sumS > N Then{
cnt = 1000;
}
}
}
Sumv = Sumvv;
지표등에서
plot1(sumV(60));
과 같이 사용하시면 됩니다.
60은 60초를 의미합니다.
즐거운 하루되세요
> TRF 님이 쓴 글입니다.
> 제목 : 지표식 문의드립니다.
> 아래는 예스스탁님이 올려주신 틱거래량 식입니다.
거래량 산출 시간을 9시 10분부터 15:00까지만 해주고 싶은데 어떻게 바꾸어주면 될까요?
장시작 거래량이 급격히 증가하여 편차가 큽니다.
그리고 이 식을 사용자 함수로 어떻게 만들어서 사용할 수 있을까요?
미리 감사드립니다.
var : stimeTosecond(0),timeTosecond(0),SecondMakecandle(0),value(0);
var : cnt(0),SumS(0),SumV(0);
var1 = TimeToMinutes(stime)*60;
var2 = FracPortion(stime/100)*100;//시작시간 초
stimeTosecond = var1+var2;
value1 = TimeToMinutes(time)*60;
value2 = FracPortion(time/100)*100;//끝시간 초
timeTosecond = value1+value2;
SecondMakecandle = timeTosecond-stimeTosecond;
sumS = 0;
SumV = 0;
for cnt = 0 to 100{
sumS = sumS+SecondMakecandle;
if sumS <= 60 Then{
sumV = SumV+Volume;
}
if sumS > 60 Then{
cnt = 1000;
}
}
plot1(sumv);
TRF
2013-03-12 17:14:02
함수로 만들었는데
"함수가 값을 리턴하고 있지 않습니다. 함수는 반드시 값을 리턴해야 합니다." 라고 나옵니다.
해결책을 부탁드립니다. 거듭 감사합니다.
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 지표식 문의드립니다.
> 안녕하세요
예스스탁입니다.
1. 9시10분부터 15시 사이에서만 계산되게 작성했습니다.
var : stimeTosecond(0),timeTosecond(0),SecondMakecandle(0),value(0);
var : cnt(0),SumS(0),SumV(0);
var1 = TimeToMinutes(stime)*60;
var2 = FracPortion(stime/100)*100;//시작시간 초
stimeTosecond = var1+var2;
value1 = TimeToMinutes(time)*60;
value2 = FracPortion(time/100)*100;//끝시간 초
timeTosecond = value1+value2;
SecondMakecandle = timeTosecond-stimeTosecond;
sumS = 0;
SumV = 0;
if stime >= 91000 and stime < 150000 then{
for cnt = 0 to 100{
sumS = sumS+SecondMakecandle[cnt];
if sumS <= 60 Then{
sumV = SumV+Volume[cnt];
}
if sumS > 60 Then{
cnt = 1000;
}
}
}
plot1(sumv);
2.
사용자함수명 : SumV
반환값형 : 숫자형
사용자함수내용 :
input : N(Numeric);
var : stimeTosecond(0),timeTosecond(0),SecondMakecandle(0),value(0);
var : cnt(0),SumS(0),Sumvv(0);
var1 = TimeToMinutes(stime)*60;
var2 = FracPortion(stime/100)*100;//시작시간 초
stimeTosecond = var1+var2;
value1 = TimeToMinutes(time)*60;
value2 = FracPortion(time/100)*100;//끝시간 초
timeTosecond = value1+value2;
SecondMakecandle = timeTosecond-stimeTosecond;
sumS = 0;
Sumvv = 0;
if stime >= 91000 and stime < 150000 then{
for cnt = 0 to 100{
sumS = sumS+SecondMakecandle[cnt];
if sumS <= N Then{
Sumvv = Sumvv+Volume[cnt];
}
if sumS > N Then{
cnt = 1000;
}
}
}
Sumv = Sumvv;
지표등에서
plot1(sumV(60));
과 같이 사용하시면 됩니다.
60은 60초를 의미합니다.
즐거운 하루되세요
> TRF 님이 쓴 글입니다.
> 제목 : 지표식 문의드립니다.
> 아래는 예스스탁님이 올려주신 틱거래량 식입니다.
거래량 산출 시간을 9시 10분부터 15:00까지만 해주고 싶은데 어떻게 바꾸어주면 될까요?
장시작 거래량이 급격히 증가하여 편차가 큽니다.
그리고 이 식을 사용자 함수로 어떻게 만들어서 사용할 수 있을까요?
미리 감사드립니다.
var : stimeTosecond(0),timeTosecond(0),SecondMakecandle(0),value(0);
var : cnt(0),SumS(0),SumV(0);
var1 = TimeToMinutes(stime)*60;
var2 = FracPortion(stime/100)*100;//시작시간 초
stimeTosecond = var1+var2;
value1 = TimeToMinutes(time)*60;
value2 = FracPortion(time/100)*100;//끝시간 초
timeTosecond = value1+value2;
SecondMakecandle = timeTosecond-stimeTosecond;
sumS = 0;
SumV = 0;
for cnt = 0 to 100{
sumS = sumS+SecondMakecandle;
if sumS <= 60 Then{
sumV = SumV+Volume;
}
if sumS > 60 Then{
cnt = 1000;
}
}
plot1(sumv);
예스스탁 예스스탁 답변
2013-03-12 18:19:50
안녕하세요
예스스탁입니다.
함수명을 잘못 지정하신 것 같습니다.
사용자함수 파일로 올려드립니다.
C:₩예스트레이더₩YesLang₩Functions
아래 경로에 다운받으신 후
예스랭귀지 편집기를 한번 다시 열어주신 후에
사용하시면 됩니다.
즐거운 하루되세요
> TRF 님이 쓴 글입니다.
> 제목 : Re : Re : 지표식 문의드립니다.
> 함수로 만들었는데
"함수가 값을 리턴하고 있지 않습니다. 함수는 반드시 값을 리턴해야 합니다." 라고 나옵니다.
해결책을 부탁드립니다. 거듭 감사합니다.
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 지표식 문의드립니다.
> 안녕하세요
예스스탁입니다.
1. 9시10분부터 15시 사이에서만 계산되게 작성했습니다.
var : stimeTosecond(0),timeTosecond(0),SecondMakecandle(0),value(0);
var : cnt(0),SumS(0),SumV(0);
var1 = TimeToMinutes(stime)*60;
var2 = FracPortion(stime/100)*100;//시작시간 초
stimeTosecond = var1+var2;
value1 = TimeToMinutes(time)*60;
value2 = FracPortion(time/100)*100;//끝시간 초
timeTosecond = value1+value2;
SecondMakecandle = timeTosecond-stimeTosecond;
sumS = 0;
SumV = 0;
if stime >= 91000 and stime < 150000 then{
for cnt = 0 to 100{
sumS = sumS+SecondMakecandle[cnt];
if sumS <= 60 Then{
sumV = SumV+Volume[cnt];
}
if sumS > 60 Then{
cnt = 1000;
}
}
}
plot1(sumv);
2.
사용자함수명 : SumV
반환값형 : 숫자형
사용자함수내용 :
input : N(Numeric);
var : stimeTosecond(0),timeTosecond(0),SecondMakecandle(0),value(0);
var : cnt(0),SumS(0),Sumvv(0);
var1 = TimeToMinutes(stime)*60;
var2 = FracPortion(stime/100)*100;//시작시간 초
stimeTosecond = var1+var2;
value1 = TimeToMinutes(time)*60;
value2 = FracPortion(time/100)*100;//끝시간 초
timeTosecond = value1+value2;
SecondMakecandle = timeTosecond-stimeTosecond;
sumS = 0;
Sumvv = 0;
if stime >= 91000 and stime < 150000 then{
for cnt = 0 to 100{
sumS = sumS+SecondMakecandle[cnt];
if sumS <= N Then{
Sumvv = Sumvv+Volume[cnt];
}
if sumS > N Then{
cnt = 1000;
}
}
}
Sumv = Sumvv;
지표등에서
plot1(sumV(60));
과 같이 사용하시면 됩니다.
60은 60초를 의미합니다.
즐거운 하루되세요
> TRF 님이 쓴 글입니다.
> 제목 : 지표식 문의드립니다.
> 아래는 예스스탁님이 올려주신 틱거래량 식입니다.
거래량 산출 시간을 9시 10분부터 15:00까지만 해주고 싶은데 어떻게 바꾸어주면 될까요?
장시작 거래량이 급격히 증가하여 편차가 큽니다.
그리고 이 식을 사용자 함수로 어떻게 만들어서 사용할 수 있을까요?
미리 감사드립니다.
var : stimeTosecond(0),timeTosecond(0),SecondMakecandle(0),value(0);
var : cnt(0),SumS(0),SumV(0);
var1 = TimeToMinutes(stime)*60;
var2 = FracPortion(stime/100)*100;//시작시간 초
stimeTosecond = var1+var2;
value1 = TimeToMinutes(time)*60;
value2 = FracPortion(time/100)*100;//끝시간 초
timeTosecond = value1+value2;
SecondMakecandle = timeTosecond-stimeTosecond;
sumS = 0;
SumV = 0;
for cnt = 0 to 100{
sumS = sumS+SecondMakecandle;
if sumS <= 60 Then{
sumV = SumV+Volume;
}
if sumS > 60 Then{
cnt = 1000;
}
}
plot1(sumv);