안녕하세요 매번 질문에 친절한 답변 정말 감사드립니다.
1. 오늘은 제목처럼, 표준편차 사용예시 코드를 부탁드리고자 합니다.
일반적인 표준편차 산출 식이 있음에도 불구하고, 가중 이동평균의 표준편차를 구하려고 합니다.
현재 시점에서, 각 시점의 편차(시점별 값 - 평균값)를 구하는 과정이 어려워 질문드립니다.
각 시점의 편차를 구하려고 할 때, '고정된 평균'값을 어떻게 산출해야 하는지 모르겠습니다.
가령, 종가 데이터의 편차의 제곱의 합을 먼저 구한다고 한다면,
var1 = accumN(c,20)/20;
var2 = accumN(Square(c - var1),20)/20;
.
.
(이하생략)
으로 풀어나가려고 했으나 곰곰이 생각해보면 va1인 평균값은 var2에서 계산될 때 [0],[1],[2]..
순으로 이전 시점의 평균값을 뱉어내니 현재 시점의 평균과 다르게 됩니다. 이 부분을 어떻게
해결할지 모르겠습니다..
2. 곁다리로, 함수 중 하나를 여쭤보고자 합니다.
메뉴얼에 있는함수중에, AvgDeviation(Price,Length) 라는 편차평균을 구하는 놈이 있는데, 얘는
용도가 뭔가요? 편차의 합은 항상 0이라서, 평균이 0일텐데 정확한 용도가 궁금합니다..
항상 갑갑한 질문 죄송합니다....
답변 1
예스스탁
예스스탁 답변
2024-11-21 11:13:15
안녕하세요
예스스탁입니다.
1
가중이평을 기준으로 표준편처를 풀어서 작성해 드립니다.
가장이평은 풀어서 작성해 드렸습니다. wma함수로 대체하셔도 됩니다.
input : Period(20);
var : Sum(0),CSum(0),cnt(0),Wavg(0);
var : SumSqrt(0),stdv(0);
#가중이평 계산
Sum = 0;
CSum = 0;
For cnt = 0 To Period - 1 Begin
Sum = Sum + C[cnt] * (Period - cnt);
CSum = CSum + Period - cnt;
End;
Wavg = Sum / CSum; //간단히 가중이평은 WMA(c,Period)로 대체하셔도 됩니다.
#표준편차 계산
SumSqrt = 0;
For cnt = 0 To Period - 1
{
SumSqrt = SumSqrt + (C[cnt] - Wavg)^2;
}
Stdv = SquareRoot(SumSqrt / Period);
2
표준편차는 평균값에서 떨어진 정도를 나타낸다면
평균편차는 중앙값에서 떨어진 정도를 나타내는 값입니다
수식작성시 일반적으로는 표준편차보다는 많이 사용하지 않는 것으로 알 고 있습니다.
자세한 내용은 인터넷에서 검색해서 정보를 얻으시길 바랍니다.
즐거운 하루되세요
> 아침식사됩니다 님이 쓴 글입니다.
> 제목 : 표준편차 사용예시 부탁드립니다.
> 안녕하세요 매번 질문에 친절한 답변 정말 감사드립니다.
1. 오늘은 제목처럼, 표준편차 사용예시 코드를 부탁드리고자 합니다.
일반적인 표준편차 산출 식이 있음에도 불구하고, 가중 이동평균의 표준편차를 구하려고 합니다.
현재 시점에서, 각 시점의 편차(시점별 값 - 평균값)를 구하는 과정이 어려워 질문드립니다.
각 시점의 편차를 구하려고 할 때, '고정된 평균'값을 어떻게 산출해야 하는지 모르겠습니다.
가령, 종가 데이터의 편차의 제곱의 합을 먼저 구한다고 한다면,
var1 = accumN(c,20)/20;
var2 = accumN(Square(c - var1),20)/20;
.
.
(이하생략)
으로 풀어나가려고 했으나 곰곰이 생각해보면 va1인 평균값은 var2에서 계산될 때 [0],[1],[2]..
순으로 이전 시점의 평균값을 뱉어내니 현재 시점의 평균과 다르게 됩니다. 이 부분을 어떻게
해결할지 모르겠습니다..
2. 곁다리로, 함수 중 하나를 여쭤보고자 합니다.
메뉴얼에 있는함수중에, AvgDeviation(Price,Length) 라는 편차평균을 구하는 놈이 있는데, 얘는
용도가 뭔가요? 편차의 합은 항상 0이라서, 평균이 0일텐데 정확한 용도가 궁금합니다..
항상 갑갑한 질문 죄송합니다....