[Excel] 추세선 그리기 (Trendline)
엑셀에는 추세선을 그려주는 기능이 있다. 보통 추세선 수식을 구하고 싶을 때는 LINEST 함수를 직접 쓰는 것이 편리하지만 그냥 대충 보고 싶을 때는 그래프에 있는 추세선 기능을 사용하는 것이 편리하다. 엑셀 추세선 기능에는 여러 가지 함수 모델을 제공하기 때문에 편리하게 골라서 사용할 수 있다.
1. 오차가 포함된 데이터
다음과 같이 오차가 포함된 데이터가 있다고 해보자. 이 그래프는 어떤 수식 모델을 따르는 것인지 궁금해진다.
X | Y |
1 | -28.66000 |
2 | 8.38320 |
3 | 13.14770 |
4 | 35.80193 |
5 | 38.13863 |
6 | 61.41232 |
7 | 58.49479 |
8 | 58.74790 |
9 | 62.20665 |
10 | 73.08580 |
11 | 67.84639 | 추세선(trendlines)
12 | 79.06486 |
13 | 80.47516 |
14 | 79.24265 |
15 | 85.13076 |
16 | 85.93936 |
17 | 102.04390 | 추세선(trendlines)
18 | 97.38803 |
19 | 93.73997 |
20 | 104.48270 |
2. 엑셀 그래프에서 추세선 그리기
엑셀 그래프는 꼭 "분산형"으로 그린다. 선도 이어질 필요는 없다. 산점도 그래프를 그리고 데이터 점에 우클릭한 뒤 "추세선 추가"를 선택한다.
그림 1. 이렇게 이렇게
3. 추세선 모델
오른쪽에 추세선 서식이 뿅 나타나면 속성을 선택할 수 있다. 에서 모델을 선택할 수 있고 지수, 선형, 로그, 다항식, 거듭제곱, 이동 평균을 선택할 수 있다. 은 내 맘대로 추세선(trendlines) 써주면 범례에 나타난다. 에 값을 넣으면 현재 데이터 앞뒤로 추세선을 연장해서 데이터 밖의 상황을 예측해볼 수 있다. 만약 어떤 데이터로 근사 모델을 만든다면 데이터 범위를 추세선(trendlines) 넘어서는 부분은 되도록 사용하지 않는 것이 좋다. 에 값을 넣으면 Y축 절편을 지정하는 것으로 그 값을 강제로 지나도록 모델을 결정한다. 를 선택하면 모델 수식을 그래프에 보여주고 를 이용하면 결정계수를 보여준다.
그림 2. 여러가지 속성을 선택할 수 있다.
각 그래프의 수학 모델은 다음과 같다.
2.1. 지수 모델 (Exponential trendline)
지수 모델을 만들 수 있다. y 방향으로 이동된 모델은 엑셀 추세선 내장 모델로 적합(fitting)할 수 없다. 데이터에 음수가 있어도 사용할 수 없다. 여기에서는 첫번째 값을 1.0으로 변경해 그려봤다. 결정계수가 0.56 수준으로 아주 안 맞는 모델임을 알 수 있다.
그림 3. 지수 모델
2.2. 선형 모델 (Linear trendline)
선형 모델은 단순한 직선의 방정식으로 적합하는 것으로 가장 많이 쓰이고 가장 중요한 모델이다. 결정계수가 0.88 수준으로 꽤 잘 맞는 모델인 것을 알 수 있지만 느낌적인 느낌으로 조금 부족하다는 생각이 든다.
그림 4. 선형 모델
2.3. 로그 모델 (Natural logarithmic trendline)
로그 모델은 자연로그 함수로 적합을 하지만 로그 함수의 특성상 상용로그나 밑이 다른 로그 함수로 얼마든지 바꿀 수 있기 때문에 전혀 문제가 되지 않는다. 로그 모델을 선택해보니 아주 잘 맞는 것을 알 수 있다. 로그 모델이 이 데이터의 추세를 잘 표현해주고 있다.
그림 5. 로그 모델
2.4. 다항식 모델 (Polynomial trendline)
다항식 모델은 2차 부터 6차까지 사용 가능하다. 1차는 선형 모델이기 때문에 빠진 듯? 차수를 늘리면 결정계수가 '무조건 증가'하기 때문에 차수를 높이고 '잘 맞는 모델 만들었다~'라고 자랑하면 교수님한테 혼난다. 조심하자.
그림 6. 다항식 모델
2.5. 거듭제곱 모델 (Power trendline)
거듭제곱 모델은 일정한 비율(steady rate)로 증가하거나 감소하는 모델을 표현할 때 사용한다. 데이터에 0이나 음수가 있으면 그릴 수 없다. 여기에서도 첫 데이터를 1로 변경하여 표시해봤다. 결정계수를 보면 그럴 듯 하지만 별로 안 맞는 것 같은데..라는 생각을 지울 수 없다.
그림 7. 거듭제곱 모델
2.6. 이동평균 (Moving average trendline)
이동평균은 정해진 구간 내의 데이터를 평균해서 연결한 것이다. 추세선 위의 한 점이 그 주위 데이터의 평균값이라고 생각하면 된다. 이동평균을 구하면 들쭉날쭉한 잡음은 사라지고 부드러운 그래프를 만들어 추세의 변화를 확인할 수 있다. 흔히들 주식에서 말하는 이평선이 별 게 아니고 이동평균선을 줄여서 부르는 말이다. 20일 이평선, 60일 이평선 이런 것이 다 그냥 어떤 날짜 주위로 20일 평균 추세선(trendlines) 내서 점찍고 다음날도 주위의 20일을 평균 내서 점찍고 주욱 연결한 선이다. 그러니까 그냥 장기간의 지글지글한 데이터의 추세를 보자고 그은 것이다. 단기간에는 지글지글 한데 넓은 구간에서 눈을 가늘게 뜨고 보면 우상향 하고 있었구나! 하고 알 수가 있을 것이다. 그래도 내가 가진 데이터를 이용해서 가지고 있지 않은 내부를 예측하는 것은 의미가 있으나 데이터 밖의 미래를 예측한다고 하면.. 그건 좀.. 위험한 일이 될 것이다.
아무튼 지글지글한 잡음을 날린다는 점에서 저역 통과 필터(low pass filter)로 생각할 수 있다.
그림 8. 2점 이동평균
3. 데이터는 사실?
여기에서 사용한 데이터는 상용로그 함수로 아무렇게나 만들고 랜덤 함수로 흔들어 놓은 것이었다. 사용한 파라미터와 모델은 다음과 같다.
$$ a = 100, b = 0.4, c = 10 $$
여기에서 로그의 이런저런 성질을 이용해 다시 써보면 아래와 같다.
$$ y = \frac <\ln10>\ln x + \left[ a\ln b + c \right] $$
계산해보면 $A = 43.43, B = -29.79 $로 로그 모델 추세선이 잘 설명하고 있는 것을 알 수 있다.
4. 추가 사용 팁
추세선을 그리고 수식을 표시하게 한 뒤 그 수식을 다시 엑셀 시트에 직접 타이핑해서 사용하는 경우를 종종 봤다. 때로는 잘 동작하겠지만 가끔은 전혀 엉뚱한 값이 나와서 당황하는 경우가 있다. 이는 수식에 사용된 유효숫자 자릿수 때문이며 아래 메뉴에서 유효숫자를 와장창 늘려서 사용하면 원하는 결과를 얻을 수가 있다. 하지만 되도록이면 LINEST 함수를 이용해 직접 구해서 사용하는 것을 추천한다.
4.1. 추세선 유효숫자 늘리기
4.1.1. 추세선 수식에 우클릭 후 메뉴에 진입
그림 9. 추세선 레이블에 우클릭하여 '추세선 레이블 서식' 선택
4.1.2. 표시 형식에서 숫자 선택
그림 10. 표시형식에서 숫자 선택
4.1.3. 유효숫자 자릿수를 와장창 늘린다.
그림 11. 소수 자릿수 부분을 늘려준다.
그림 12. 자리수가 늘어난 수식을 확인 한다.
5. 직접 추세선 구하기 (LINEST)
LINEST 함수를 직접 이용해 추세선을 직접 구하고 엑셀 시트에 표시할 수 있다. 이렇게 하면 그래프에 표시된 추세선 수식을 눈 아프게 옮겨 적을 필요가 없다. 선형 회귀 분석이기 때문에 지수 모델, 로그 모델, 그리고 거듭제곱 모델도 로그를 써서 수식을 조금 변형하면 모두 적용이 가능하다.
[Excel] 선형 회귀분석으로 추세선 직접 구하기 (LINEST)
엑셀을 이용해 간단하게 회귀분석을 할 수 있다. LINEST 함수는 선형 회귀 분석을 할 때 사용하는 함수이다. 이 함수를 이용하면 엑셀 추세선 기능에 있는 모델뿐만 아니라 내가 직접 만든 괴상
추세선(Trendlines)을 활용한 차트 패턴 - 추세선이란?
추세지지선에서는 상승하고, 추세저항선에서 하락하는 것이 기본 규칙이다.
많은 거래량을 동반한 상태에서 추세선을 돌파할 때 주식은 저항선 위로 크게 오르거나 지지선 아래로 떨어지게된다.
지속형 패턴(Continuation) vs 반전형 패턴(Reversal)
패턴은 지속형 패턴과 반전형 패턴으로 나뉜다.
- 지속: 가격에 이전 추세와 같은 방향으로 돌파
- 반전: 가격이 이전 추세와 반대 방향으로 돌파
지속형 패턴
- 삼각형 패턴(Triangle)
- 채널 패턴(Channel)
반전형 패턴
- 쐐기 패턴(Wedge)
- 더블 탑(Double Top), 멀티플 탑(Multiple Top)
- 더블 바텀(Double Bottom), 멀티플 바텀(Multiple Bottom)
- 헤드 앤 숄더(Head & Shoulders)
Categories: investment
Updated: December 10, 2020
Comments
You May Also Enjoy
1년간 P2P 투자를 해보았다
P2P 개인신용 투자 시작 8퍼센트라는 P2P 업체를 통해 P2P 투자를 해보았다. 이전에도 다른 P2P 업체를 통해 투자를 해보았는데, 그 업체는 파이낸싱 프로젝트 위주여서 큰 이득을 못 보았다. 이번에는 개인신용을 위주로, 다른 자산군에 투자하는 것과 비교하기 위해 소액을 투자.
국민연금 국내주식 운용 현황 추적 개발(1): 시작
국민연금 수익이 상당히 괜찮다는 얘기도 있고, 다른 전략과의 비교를 위해서도 좋은 데이터일 것 같다. 국민연금 국내주식 운용현황은 매년 3분기에 공시한다고 한다. 아래는 2020년 말의 운용현황이라고 한다. 종목이 1065개나 되는데 이걸 어떻게 예쁘게 보여줄지는 고민을 좀 해봐야.
[Jekyll] 파이 차트 만들기(Google Charts)
less than 1 minute read
[정보보안기사] 해시 함수(Hash Function)
less than 1 minute read
해시 함수(Hash Function) 임의의 길이를 입력하여 정해진 고정 크기의 해시 코드를 생성한다. 일방향성(One-way Function)의 특성을 가진다. 약한 충돌 회피성과 강한 충돌 회피성을 가진다. 계산이 용이해야 한다.
Excel에서 차트 추세선 수식이 정확하지 않음
Microsoft Excel의 XY 분산형 차트에서 추세선에 대해 표시되는 방정식이 올바르지 않습니다. Microsoft Excel은 "x" 변수의 값을 수동으로 대체할 때 잘못된 추세선을 그립니다.
- 추세선 수식 은 데이터 요소에 가장 적합한 선을 찾는 수식입니다.
- R 제곱 값 은 추세선 신뢰도를 측정합니다. R2가 1에 가까울수록 추세선이 데이터에 더 잘 맞습니다.
추세선 수식은 XY 분산형 차트에 사용됩니다. 이 차트는 X축과 Y축을 모두 값으로 표시합니다. 꺾은선형, 세로 막대형 및 가로 막대형 차트는 Y축만 값으로 표시합니다. 이러한 차트 형식에서 X축은 레이블이 실제로 무엇인지에 관계없이 선형 계열로만 그려집니다. 따라서 이러한 유형의 차트에 표시되면 추세선이 정확하지 않습니다. 이것은 의도적으로 설계된 동작입니다.
Microsoft Excel은 X 값을 수동으로 입력할 때 표시된 방정식이 부정확한 결과를 제공할 수 있기 때문에 추세선을 잘못 표시합니다. 모양을 위해 각 X 값은 차트에 표시되는 유효 자릿수로 반올림됩니다. 이 동작을 사용하면 방정식이 차트 영역에서 더 적은 공간을 차지할 수 있습니다. 그러나 차트의 정확도는 크게 줄어듭니다. 이로 인해 추세가 잘못된 것으로 보일 수 있습니다.
추세선(trendlines)
추세선을 그리는 방법 : How I draw the trendline
-
본문 폰트 크기 조정 본문 폰트 크기 작게 보기 본문 폰트 크기 크게 보기 가
오늘의 차트 : Today’s chart BITCOIN 반감기 퍼센티지율과 $ 13000이 가능한 이유! BITCOIN The Halving Percentile and why $13000 is possible! 과거 두번의 반감기전에 Bitcoin의 현재 (2018-2020)와 이전 (2014-2016) 사이클을 비교 해 봤습니다. 현재 BTC 주기 이전의 가격결정되는 움직임에 기초하여, 현재 이번주기의 어느 위치에 있는가와 방향성을 예측 해 봅니다. LatteCrypto chart study BITCOIN 반감기 퍼센티지율과 .
추세선을 그리는 것은 예술과 같다. 여러분이 추세선(트렌드라인)을 안정적으로 그릴때 그것은 아름다운 예술이다.
나에게 있어서 거래는 많은 것들이 옳고 그름의 해답이 아니라 어떤 방법이 더 믿음직스럽고 가격 움직임의 이면에 얽힌 이야기를 들려주는 것이다. 거래는 확률과 위험 보상에 관한 것이기 때문에, 우리는 옳고 그르지 않고 믿을 수 있는 추세선을 그리는 방법을 찾아야 한다.
만약 추세선(trendlines) 당신이 내가 어떻게 그 단점을 보완하는지를 보았다면, 트렌드라인을 그릴 때 여기에 같은 개념들 중 일부가 적용될 것이다.
Drawing a trendline is like an art – when you draw a trendline reliably it’s a beautiful piece of art. Yes, RELIABLY.
Many traders would have told you that when you draw a trendline or a pattern, you must follow this, this, and that rule. To me, many things in trading is not an answer of right or wrong, but which method is more reliable and tell you the story behind the price movement. Since trading is about probability and risk reward, we need to find a way to draw a trendline that’s reliable and not right or wrong.
If you have seen how I trade the breakout, some of the same concepts will apply here when drawing a trendline .
트렌드라인(추세선)을 그리는 주된 이유는 무엇인가?
만약 가격이 추세선에 닿고, 트렌드라인에서 벗어나기 시작하면, 당신은 추세선이 아마도 믿을 만하며, 그 추세는 여전히 온전하다고 말할 수 있다. 반면에 가격이 추세선에 반응하여 추세선을 돌파한다면, 다음 시장은 이전의 추세가 반전 할수도 있다는 신호다.
트렌드라인 (추세선)을 사용하면 거래자들이 추세선 변화의 출발점을 파악할 수 있으므로 다음 큰 움직임을 잡을 수 있다.
What is the main reason to draw a trendline?
To identify the trend.
If the price touches the trendline , bounces off the trendline and starts to go further away from the trendline , you can say the trendline is probably reliable and the trend is still intact. Whereas, if the price is reactive to the trendline and decides to break through the trendline , then the market is signaling that the prior trend may have reversed.
Using a trendline allows traders to identify the starting point of a trend change, hence catching the next big move.
신뢰성 있게 추세선을 그리는 방법
다음은 추세선을 그릴 때 찾는 몇 가지 포인트들이다.
1. 주요 스윙 포인트 2회 이상 터치(시작 지점 제외) 주요 스윙 포인트는?
• 분명한 점들 (나는 아직 이것에 대한 규칙을 찾지 못했다.)
• 가격이 현재 가격에서 벗어나야 함
2. 추세선을 만질 때 가격 조치는 무엇인가? – 추세선을 향해 정체와 추진력이 축적되는가? 추세선 이탈 후 트렌드라인 재테스트가 있는가? 아니면 가격이 마치 존재하지 않는 것처럼 추세를 꿰뚫고 있는가?
3. 터치가 많을수록 더 안정적이다.
4. 채널로 그릴수 있는지 – 가능하면 추세선 보다 신뢰할 수있는 채널로 그린다 .
5. 추세선 각도 – 60도 이상이면 신뢰성이 떨어진다.
How to draw a trendline reliably?
Below are some of the signs I look for when drawing a trendline:
At least two touches on the major swing points (other than the 추세선(trendlines) starting point)
What do I mean by major swing points?
• The obvious points (I am yet to find a rule for this. If you have a solution, leave a comment below)
• The price needs to move away from the current price
What’s the price actions when touching the trendline – is there a congestion and build up of momentum towards the trendline before breaking out? Is there a retest of trendline after breakout of the trendline? Or, does the price pierce through the trendline as if it’s non-existent?
The more touches the more reliable
Can you draw it as a channel? – if you can, draw it as a channel as it’s more reliable than a trendline .
Angle of the trendline – anything steeper than 60 degree is not reliable.
▼ 위차트 에서 추세선의 신뢰성을 검사하기 위해 위의 점을 적용 해 보겠습니다
. 아래 추세선이 실패한 지점 1 (1 개의 터치 만 있음) :
▼ Let’s apply the above points to examine the reliability of the trendlines in the chart above
추세선(Trend Lines)
wijmo.chart.analytics 모듈에는 다음과 같이 계열(Series) 클래스를 확장하여 데이터에 대한 추가 정보를 제공하는 클래스가 포함되어 있습니다 : 추세선(trend lines),이동 평균(moving averages), 오차 막대(error bars), 상자 및 폭포 플롯(box and waterfall plots), 함수 플롯(plots).
추세선(TrendLine) 클래스는 일반 계열(Series) 클래스를 확장하여 선택한 데이터와 매개변수를 기반으로 계산된 시리즈를 제공합니다. 여러 유형의 추세선이 지원되는데, 여기에는 다항식, 지수, 로그, 거듭제곱, 함수 추세를 나타내는 데이터를 근사화하는 푸리에(Fourier) 함수와 같은 회귀(regression) 추세선이 포함됩니다. 또한 직선을 그리는 선형, 최소, 최대, 평균과 같은 일부 비회귀 추세선도 지원합니다.
아래 단계에 따라 차트에 추세선을 추가할 수 있습니다.
- 하나 이상의 추세선(TrendLine) 객체를 만듭니다.
- 예를 들어 바인딩, 차트타입 및 스타일 속성을 설정하여 일반 계열(Series)와 같이 추세선(TrendLine) 객체를 구성합니다.
- 추세선(TrendLine)의 fitType 및 order 속성을 설정하여 생성하려는 추세선 유형을 결정합니다. order 속성은 푸리에(Fourier) 및 다항식 추세선(trendlines) 추세선(trendlines) 유형에만 적용됩니다.
- Linear: 데이터에 가장 근접한 직선 Y(x) = a *x + b.
- Exponential: 등식에 대한 회귀 적합성 Y(x) = a 추세선(trendlines) * exp(b*x).
- Logarithmic: 등식에 대한 회귀 적합성 Y(x) = a * ln(x) + b.
- Power: 등식에 대한 회귀 적합성 Y(x) = a * pow(x, b).
- Fourier: 등식에 대한 회귀 적합성 Y(x) = a + b * cos(x) + c * sin(x) + d * cos(2*x) + e * sin(2*x) + …
- Polynomial: 등식에 대한 회귀 적합성 Y(x) = a * x^n + b * x^n-1 + c * x^n-2 + … + z.
- MinX: 최소 X 값
- MinY: 최소 Y 값
- MaxX: 최대 X 값
- MaxY: 최대 Y 값
- AverageX: 평균 X 값
- AverageY: 평균 Y 값
추세선(Trend Lines) 표시 옵션
TrendLine 클래스는 FlexChart의 계열(Series)처럼 지원됩니다. 아래 중 visibility 속성을 설정하여 행이 범례에 항목 표시 여부를 선택할 수 있습니다:
- Visible: 계열(Series)은 플롯과 범례에서 볼 수 있습니다.
- Plot: 계열(Series)은 플롯에서만 볼 수 있습니다.
- Legend: 계열(Series)은 범례에서만 볼 수 있습니다.
- Hidden: 계열(Series)은 숨겨져 있습니다.
범례 텍스트는 추세선(Trend Lines) 계열(Series)의 이름 속성을 사용하여 설정됩니다.
최소, 최대, 평균에 대한 기준선 표시
FlexChart 추세선(TrendLine)은 데이터 세트를 기반으로 계산된 최소, 최대 또는 평균 값에서 정적, 기준선을 표시하는 데 사용할 수 있습니다. 표시할 축과 값에 따라 fitType을 MinX, MinY, MaxX, MaxY, AverageX 또는 AverageY로 설정합니다.
0 개 댓글